Some difficulties/glitches with drawing in RF4 (which might partly be due to extensions)



  • First of all, awesome work in releasing RF4! I know this has been a massive effort, and I’m excited to finally be working in the upgraded tool. I’m also pretty excited that you released it now, rather than waiting for a long time to try to get everything 1000% perfect. That said, there are a few glitches I have come across while drawing in RF4 today. Rather than bury my feelings and hope these get fixed eventually, I figured I should list them out, to at least maybe get the process started.

    I’m slightly uncertain about posting this because I’m not entirely sure what might be caused by updates to RF4, and what might be caused by extensions lagging behind a bit.

    I realize that I should probably deactivate some extensions to properly test this out ... but some extensions are very hard to draw without (they’re in my muscle memory at this point), so I don’t know how far I’d get. But, I’ll try to mention which things I suspect are caused by what, and I am happy to follow debugging suggestions or email in the font I’ve experience these issue with. I am on the latest version of all extensions, according to Mechanic 2.

    These are all things that happen semi-infrequently, but enough to be fairly disruptive.

    • Sometimes, points shoot way beyond where I am dragging them, as though the movement is passing through a multiplier. (I bet this is caused by scalingEdit Tool).
      • When this happens, I can’t “Undo” with command-Z. I think I have to restart RoboFont to get out of this. It happens relatively often, and is very disruptive.
      • If I had to assign a priority to the issues listed here, I think this would be the highest priority.
    • Sometimes, I try to click and drag a selection marquee, and I just can’t.
      • Command-Click to select a contour is also giving me trouble, when this happens.
      • I can, however, select individual nodes or segments, and hold shift to add to my selection. This works, but is obviously a tedious workaround.
      • Weirdly, this problem seems to be happening more in some glyphs than in others… for example, I can’t marquee select in the T or L, but I can in the W
    • Sometimes, when I have selected a node, the node doesn’t get highlighted in blue, to show that selection – but it will move if I drag or nudge it.
    • Sometimes, if I select nodes, then drag them or nudge them arrow keys, the blue highlight/selection stays fixed in the same location, even while the nodes & outlines themselves move. This isn’t a blocker, but it is just a little confusing.
    • Sometimes, when I have a set of nodes selected and I try to hold Shift+Command to nudge it by large units, it only nudges the oncurve nodes, messing up the shape.
    • Sometimes, canvas zooms in and out with me trying. This is something that also happened in RF3, I think. It’s not that bad, and it’s infrequent, but it’s also just pretty distracting when it does happen.
    • Not sure if this deserves a separate post entirely, but I tried to select multiple glyphs and use the Inspector’s “Transform Selected Glyphs” function, and this froze the application. This happened twice. It maybe be partly due to images that were in several of the glyphs.


  • 👋

    I am pretty sure that all these issues are linked to extensions, most of them still use the old drawing engine

    I think we need to narrow down every single issue.
    Can you post some tracebacks from the output window?



  • I haven't run into bugs with my scalingEditTool in RF4, for a while, yet... I'm still on Catalina and can't test on Big Sur. I'll be glad to investigate if you can recreate the bugs and make sure no other extensions are involved.
    The scaling has always been unpredictable if there are no extrema points on the curves. It can crash RF in extreme cases. This is not new to RF4 though, and not a common use scenario.
    The multiple quadratic offcurve points features in RF4 are still experimental, but that shouldn't cause problems for scalingEditTool, as the extra offcurves are simply skipped. Single offcurve segments are still a bit tricky for the angle keeping behavior.
    ScalingEditTool doesn't do any extra drawing and everything except the calculations and scaling the offcurve points is inherited from the regular editTool, so very few changes were needed for it to work in RF4. But there may still be some glitches, of course.



  • Thanks, @roberto-arista and @timotimo! Sorry for my delay in response – I’ve been involved in other tasks than drawing for a few days, but I will try to get in some drawing over the next few days, and report with tracebacks here.

    For what it’s worth, I’m not drawing with quadratics, I almost always do have extrema points set, and I run into glitches with both the normal edit and scaling edit tools.

    I’ll report back as I am able to!



  • I don’t think this is very related to my UX issues, but Eyeliner is outputting a few tracebacks:

    Observer '<eyelinerRF4.Eyeliner object at 0x1586f5750>' with '_glyphEditorDidSetGlyphInternalCallback' failed: 'Eyeliner' object has no attribute 'bgContainer'
    Traceback (most recent call last):
      File "lib/eventTools/eventManager.pyc", line 165, in callObserver_withMethod_forEvent_withInfo_
      File "/Applications/RoboFont.app/Contents/Resources/lib/python3.7/mojo/subscriber.py", line 1709, in _glyphEditorDidSetGlyphInternalCallback
      File "/Applications/RoboFont.app/Contents/Resources/lib/python3.7/mojo/subscriber.py", line 1622, in _roboFontCallback
      File "/Applications/RoboFont.app/Contents/Resources/lib/python3.7/mojo/subscriber.py", line 3193, in start
      File "/Applications/RoboFont.app/Contents/Resources/lib/python3.7/mojo/subscriber.py", line 3209, in fire
      File "/Applications/RoboFont.app/Contents/Resources/lib/python3.7/mojo/subscriber.py", line 1637, in _roboFontCoalescerCallback
      File "/Users/stephennixon/Library/Application Support/RoboFont/plugins/Eyeliner.roboFontExt/lib/eyelinerRF4.py", line 70, in glyphEditorDidSetGlyph
      File "/Users/stephennixon/Library/Application Support/RoboFont/plugins/Eyeliner.roboFontExt/lib/eyelinerRF4.py", line 81, in beginDrawing
    AttributeError: 'Eyeliner' object has no attribute 'bgContainer'
    Observer '<eyelinerRF4.Eyeliner object at 0x1586f5750>' with '_roboFontCallback' failed: 'Eyeliner' object has no attribute 'bgContainer'
    Traceback (most recent call last):
      File "lib/eventTools/eventManager.pyc", line 165, in callObserver_withMethod_forEvent_withInfo_
      File "/Applications/RoboFont.app/Contents/Resources/lib/python3.7/mojo/subscriber.py", line 1622, in _roboFontCallback
      File "/Applications/RoboFont.app/Contents/Resources/lib/python3.7/mojo/subscriber.py", line 3193, in start
      File "/Applications/RoboFont.app/Contents/Resources/lib/python3.7/mojo/subscriber.py", line 3209, in fire
      File "/Applications/RoboFont.app/Contents/Resources/lib/python3.7/mojo/subscriber.py", line 1637, in _roboFontCoalescerCallback
      File "/Users/stephennixon/Library/Application Support/RoboFont/plugins/Eyeliner.roboFontExt/lib/eyelinerRF4.py", line 74, in glyphEditorWillScale
    

  • admin

    FYI: support is given to Ryan related to Eyeliner off-forum


Log in to reply