1. 22 Sep, 2020 5 commits
  2. 18 Sep, 2020 1 commit
  3. 17 Sep, 2020 1 commit
  4. 14 Sep, 2020 1 commit
  5. 13 Sep, 2020 5 commits
    • Albert Gräf's avatar
    • Albert Gräf's avatar
      Make Alt the key to temporarily change to run mode. · 2517cfab
      Albert Gräf authored
      In one fell swoop, this solves all usability issues we have with the
      Ctrl key we currently employ for that purpose, which interferes with all
      our menu keybindings, and makes temporary run mode unusable on the Mac.
      2517cfab
    • Albert Gräf's avatar
      Fix the findbox regression, part 3. · 1747a89e
      Albert Gräf authored
      Make Ctrl+F work if the canvas is in edit mode. In this case,
      canvas_key(), upon receiving the Ctrl keydown event from the Ctrl+F
      shortcut, temporarily switches to run mode, but never gets the
      corresponding keyup event which goes to the findbox, so temporary run
      mode remains in effect when the findbox opens.
      
      This shouldn't actually be much of a problem, but the real trouble is
      that while canvas_key() informs the GUI about the change to run mode, it
      doesn't update the state of the canvas-local gl_edit variable
      accordingly. So when dofind() switches on edit mode later, the engine
      still thinks that it's in edit mode and thus doesn't trigger the
      necessary update.
      
      The easy fix is to just update gl_edit in canvas_key() when edit mode is
      temporarily disabled.
      1747a89e
    • Albert Gräf's avatar
      Fix the findbox regression, part 2. · 12ab314b
      Albert Gräf authored
      This gets rid of some race conditions in the find operation, by ensuring
      that edit mode is only updated *after* mapping a subpatch window.
      
      This bug manifested itself when searching for objects in subpatches
      which are not visible at the time the find operation gets invoked. In
      this case, on the GUI side we both have to create the subpatch window
      and put it in edit mode. In the previous implementation these two
      operations would be executed separately and asynchronously. The end
      result was that usually the latter operation setting the edit mode in
      the GUI would win out, and the edit mode would later get overwritten
      again when the window was created.
      
      We fixed that race condition by ensuring that the engine is queried for
      its current edit mode status after creating a canvas window. The engine
      replies with a call to gui_canvas_set_editmode() in the GUI and thus the
      edit mode in the GUI now properly reflects the status in the engine
      after a window is mapped.
      
      TL;DR: This fix should now make sure that edit mode on the GUI side
      reflects that of the engine at all times.
      12ab314b
    • Albert Gräf's avatar
      Fix the findbox regression, part 1. · df2fd7fd
      Albert Gräf authored
      This makes Ctrl+F work again, by making sure that edit mode is set
      correctly in the GUI even if glob_ctrl is set (because the Ctrl key up
      event goes to the find box and is thus is never received by the canvas).
      df2fd7fd
  6. 09 Sep, 2020 10 commits
  7. 08 Sep, 2020 2 commits
  8. 07 Sep, 2020 2 commits
    • Ivica Bukvic's avatar
      Improvements to the vanilla gatom (squashed) · da87b032
      Ivica Bukvic authored
      * Initial addition of the gatom extended editing abilities. Shift+click allows for append to the previously entered values, whereas click behaves as it always did. Shift+Backspace when in append mode deletes everything. Dragging number up and down with a mouse now allows for dynamic switching between the shift (fine-grained) and non-shift mode.
      
      * Further refinement to the vanilla numbox, so that it can use the same keyboard shortcuts as the numbox2. Also fixed a crasher from the earlier implementation.
      
      * Disabled debugging
      
      * Activated gatom does not highlight both data and label anymore
      da87b032
    • Jonathan Wilkes's avatar
      bump to 2.14.0 · eff56120
      Jonathan Wilkes authored
      eff56120
  9. 06 Sep, 2020 1 commit
    • Ivica Bukvic's avatar
      Dialog and other GUI improvements · f03e0459
      Ivica Bukvic authored and Albert Gräf's avatar Albert Gräf committed
      * Created new and hopefully improved dialogs that should work on all
        three OSs. These include improved margins, optimal sizes that account
        for OS-specific idiosyncrasies, use of non-native toplevel window
        titlebars that cause bunch of issues (e.g. ability to maximize a
        dialog window since nw.js, at least in the earlier versions, has
        spotty support for disabling those), fixed window sizes with minimal
        scrollbars where appropriate, proper spacing between items, better
        positioning of the checkbox and radio buttons, etc.
      
      * Enabled CTRL+W for the search dialog.
      
      * Improved and consistent find bar appearance on all windows (console,
        patch, search).
      
      * Refined activated box to match different zoom levels and font
        sizes. Small discrepancies still exist when using both custom fonts
        and zoom levels, but these are now no more than pixel off, whereas
        before it was all over the place.
      
      * Made sure that patch windows on all OSs are exactly the same size,
        even when using custom zoom levels and fonts.
      
      * Replaced the use of the legacy font menu with the native sub-menu and
        adjusted its behavior accordingly, including updating its values at
        patch open (the same method may prove useful in dealing with the
        undo/redo and other options not being registered properly because they
        may be running before the menu has been created).
      
      * Refined the scrollbar behavior by providing a grab cursor when
        hovering and clicking on them. Also added dynamic updates to scrollbar
        colors (normal, hover, and click).
      
      * Epic hack for making message boxes consistent size when activated.
      
      * Made redrect on a GOP subpatch appear and disappear intelligently when
        dealing with subpatches populated exclusively with scalars. For
        instance, creating an empty object does not create a redrect yet
        because the user may be instantiating another instance of a
        scalar (e.g. a pony). However, once a non-data object has been created
        that wants to be displayed on the parent window inside GOP of the
        subpatch it is a part of, it toggles on. Similarly, once every
        non-scalar object has been deleted, the redrect disappears. There is
        still a lingering question why would one want to do this, but hey, who
        am I to judge?
      
      * Fixed problem where a non-GOP text object got diagonal and y resize
        arrows that triggered consistency check.
      
      * Fixed consistency check where resizing a GOP on the parent window
        using bottom-right corner cursor hotspots, triggered an error when the
        subpatch is also open. Now, everything resizes as it should
        concurrently, regardless of whether this is done on the subpatch or
        the parent window. As a bonus, the properties window reflects changed
        values regardless how they are being changed.
      
      * Better iemgui number2 text offset across different font sizes and zoom
        levels.
      
      * I think that is about it, although I may have missed something...
      f03e0459
  10. 04 Sep, 2020 4 commits
  11. 03 Sep, 2020 4 commits
  12. 02 Sep, 2020 2 commits
  13. 31 Aug, 2020 2 commits