Forum
    • Categories
    • Register
    • Login

    [bug] Shortcut keys not working properly

    Scheduled Pinned Locked Moved Solved Bug Reports
    shortcut
    32 Posts 7 Posters 3.8k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • Christoph HartC
      Christoph Hart @David Healey
      last edited by

      @d-healey I think the issue is in this line:

      https://github.com/christophhart/HISE/blob/fcfdcda74348bf4723479ea92e5ac497dd60f21a/hi_tools/hi_tools/MiscToolClasses.h#L584
      

      It checks if the current key press is in the list of assigned key presses, however something on Linux messes with the default comparison operator so you might have to compare them manually (I don't have access to a Linux system at the moment so you need to get your hands dirty yourself). So instead of this line, add something like

      for(auto ak: t->keyMap.getKeyPressesAssignedToCommand(idx))
      {
           if(ak.mods == k.mods &&
              ak.getKeyCode() == k.getKeyCode())
           {
                return true;
           }
      }
      

      (the condition is totally bogus and won't compile), but you might try different things until you find something that works reliably :)

      David HealeyD Dan KorneffD 2 Replies Last reply Reply Quote 1
      • David HealeyD
        David Healey @Christoph Hart
        last edited by

        @Christoph-Hart Thank you, I'll play around with it.

        Free HISE Bootcamp Full Course for beginners.
        YouTube Channel - Public HISE tutorials
        My Patreon - HISE tutorials

        1 Reply Last reply Reply Quote 0
        • David HealeyD
          David Healey
          last edited by

          @Christoph-Hart I don't think that is where the problem is. I've been playing around with this some more and here are the steps to reproduce the problem and some things I notice.

          Open HISE and go to File >> Edit Shortcuts

          Scroll down to the Duplicate selection at cursor action, you will notice it is set to ctrl+ D and this does not work on GNU/Linux.

          Click the + button and assign ctrl + D to the command.
          It will look like this and will work on GNU/Linux.

          9731461c-aa94-4357-b076-be4cd7f7563e-image.png

          Close HISE and open the KeyPressMappings.xml file. You will see ctrl + D has been added correctly.

          Keep that file open and launch HISE, then close HISE. You'll see the mapping disappears from the xml file.

          Free HISE Bootcamp Full Course for beginners.
          YouTube Channel - Public HISE tutorials
          My Patreon - HISE tutorials

          1 Reply Last reply Reply Quote 0
          • Dan KorneffD
            Dan Korneff @Christoph Hart
            last edited by

            @Christoph-Hart said in [bug] Shortcut keys not working properly:

            I don't have access to a Linux system at the moment

            Do you need access to one? ;)

            Dan Korneff - Producer / Mixer / Audio Nerd

            1 Reply Last reply Reply Quote 0
            • David HealeyD
              David Healey
              last edited by

              Any chance of getting this looked at? My last post contains my most recent findings.

              Free HISE Bootcamp Full Course for beginners.
              YouTube Channel - Public HISE tutorials
              My Patreon - HISE tutorials

              1 Reply Last reply Reply Quote 0
              • David HealeyD
                David Healey
                last edited by

                @Christoph-Hart This one is still an issue, even if I set the key binding manually HISE forgets it (see my post a little further up).

                Also in the script editor I used to be able to press ctrl+shift+up cursor to move the current line or selection up or down. This no longer works, although ctrl+shift+down does work.

                Free HISE Bootcamp Full Course for beginners.
                YouTube Channel - Public HISE tutorials
                My Patreon - HISE tutorials

                A 1 Reply Last reply Reply Quote 0
                • A
                  aaronventure @David Healey
                  last edited by aaronventure

                  @d-healey said in [bug] Shortcut keys not working properly:

                  Also in the script editor I used to be able to press ctrl+shift+up cursor to move the current line or selection up or down. This no longer works, although ctrl+shift+down does work.

                  hise editor line up down.gif

                  Works here.

                  commit f695f0cb22de5c392d57b3ecc16492d4293986b8
                  

                  W11 Version 10.0.22621 Build 22621

                  David HealeyD 1 Reply Last reply Reply Quote 0
                  • David HealeyD
                    David Healey @aaronventure
                    last edited by

                    @aaronventure Oh yeah I should say this is a Linux issue (I think that's established earlier in the thread, but that's ancient history 😁 )

                    Free HISE Bootcamp Full Course for beginners.
                    YouTube Channel - Public HISE tutorials
                    My Patreon - HISE tutorials

                    1 Reply Last reply Reply Quote 1
                    • David HealeyD David Healey referenced this topic
                    • David HealeyD
                      David Healey
                      last edited by

                      Aha I fixed it. The addShortcut was passing a keypress which included the typed character, but ctrl+d doesn't type a character on any OS as far as I can tell, and this was preventing it detecting the shortcut on Linux. Replacing the typed character with 0 fixes the issue and doesn't cause any problems on Windows or MacOS.

                      Free HISE Bootcamp Full Course for beginners.
                      YouTube Channel - Public HISE tutorials
                      My Patreon - HISE tutorials

                      dannytaurusD 1 Reply Last reply Reply Quote 1
                      • David HealeyD David Healey marked this topic as a question
                      • David HealeyD David Healey has marked this topic as solved
                      • dannytaurusD
                        dannytaurus @David Healey
                        last edited by

                        @David-Healey And it fixes the second issue where storing CTRL+D as a shortcut in the XML didn't persist between relaunches - because this is expected HISE behaviour when it meets a default shortcut?

                        Meat Beats: https://meatbeats.com
                        Klippr Video: https://klippr.video

                        David HealeyD 1 Reply Last reply Reply Quote 0
                        • David HealeyD
                          David Healey @dannytaurus
                          last edited by

                          @dannytaurus Yeah, basically on Windows and MacOS if you tried to reassign ctrl+D to the duplicate command it would give you a popup telling you that the shortcut was already in use. This never appeared on Linux because it didn't recognise it, so it was happy to have two identical shortcuts assigned.

                          But on restarting HISE it did some checking, saw the duplicate, and removed it.

                          Free HISE Bootcamp Full Course for beginners.
                          YouTube Channel - Public HISE tutorials
                          My Patreon - HISE tutorials

                          dannytaurusD 1 Reply Last reply Reply Quote 1
                          • dannytaurusD
                            dannytaurus @David Healey
                            last edited by dannytaurus

                            @David-Healey Another quirk, at least on Mac, is that CMD+D is assigned to both ScritpNode > Duplicate Node and Interface Designer > Duplicate selection at cursor.

                            This works fine within HISE because of the different contexts, but if you assign a different shortcut to either action, then try to assign the default back again, it will remove the other one.

                            So I suppose the issue is that duplicate shortcuts already exist in HSIE, but the user isn't allowed to assign duplicates themselves. Which is a little confusing.

                            EDIT: probably not worth the time to attend to either 😜

                            Meat Beats: https://meatbeats.com
                            Klippr Video: https://klippr.video

                            1 Reply Last reply Reply Quote 1
                            • First post
                              Last post

                            27

                            Online

                            2.1k

                            Users

                            13.2k

                            Topics

                            114.9k

                            Posts