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.
    • 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

                                  19

                                  Online

                                  2.2k

                                  Users

                                  13.3k

                                  Topics

                                  116.1k

                                  Posts