Forum
    • Categories
    • Register
    • Login

    [bug] Shortcut keys not working properly

    Scheduled Pinned Locked Moved Solved Bug Reports
    shortcut
    32 Posts 7 Posters 4.2k 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.
    • ulrikU
      ulrik @Dan Korneff
      last edited by

      @Dan-Korneff Yes it behaves the same for me

      search.gif

      Hise Develop branch
      MacOs 15.6.1, Xcode 16.2
      http://musikboden.se

      1 Reply Last reply Reply Quote 1
      • Matt_SFM
        Matt_SF @Dan Korneff
        last edited by

        @Dan-Korneff same here too

        Develop branch
        Win10 & VS17 / Ventura & Xcode 14. 3

        Christoph HartC 1 Reply Last reply Reply Quote 0
        • Christoph HartC
          Christoph Hart @Matt_SF
          last edited by

          Ah yes, that's right, I broke this when I rewrote the search box logic.

          BTW, you can use special search modes for

          • namespaces (n)
          • functions (fn)
          • variables (reg, const and var) (v)
          • symbols (namespaces, functions and variables) (s)
          • files (f)

          Just type the letters above, then a space and the search term, so if you're looking for a symbol named mySymbol, type in

          s mySymbol
          

          If you're looking for a file called MyFile.js, type in

          f MyFi...
          

          If you use the symbol / function / variables search mode it will also display a preview of the object when you select a line (this only works in symbol mode :

          5d33d626-4b93-41f4-aefb-a4e358a8f690-image.png

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

            @Christoph-Hart Excellent, thank you, this looks very useful! Did you fix the shortcut key issue too?

            alt text

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

            Christoph HartC 1 Reply Last reply Reply Quote 0
            • 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

                                    25

                                    Online

                                    2.2k

                                    Users

                                    13.3k

                                    Topics

                                    116.1k

                                    Posts