Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unable to use Ctrl+TAB as keyboard shortcut #1674

Open
lehitoskin opened this issue Feb 10, 2025 · 4 comments
Open

Unable to use Ctrl+TAB as keyboard shortcut #1674

lehitoskin opened this issue Feb 10, 2025 · 4 comments
Labels

Comments

@lehitoskin
Copy link

Hydrus version

v608

Qt major version

Qt 6

Operating system

macOS 15 "Sequoia" (Intel)

Install method

Installer

Install and OS comments

Hydrus.Network.608.-.macOS.-.App.dmg

Bug description and reproduction

  1. Open keyboard shortcut window
  2. Select Main Window
  3. Click Add
  4. Click Keyboard text field
  5. Press Ctrl+TAB
  6. Nothing happens

I am trying to use this key sequence to set the command "move page selection right" (and Ctrl+Shift+TAB to "move page selection left").

Log output


@lehitoskin lehitoskin added the bug label Feb 10, 2025
@hydrusnetwork
Copy link
Owner

Thank you for this report. On Windows Qt, Ctrl+Tab and Ctrl+Shift+Tab seem to be already the default, on the Qt side of things, to do 'move notebook page tab left/right'. The shortcuts dialog can capture ctrl+tab for me, but if I map it to 'open command palette', it looks like the Qt hardcoded hook is catching it before I get to it and it still does 'change page tab'. However if I map Ctrl+G or something to 'move page tab left', it works fine. Interesting shortcut propagation, and I hadn't realised my system was working exactly this way.

I guess you don't have the Qt Ctrl+Tab hardcoded default, since you are trying to map it yourself.

Image

Can you try some things for me?

  • Can you map Ctrl+T or any other Ctrl+ shortcut? Or is it specifically Ctrl+Tab that's the problem?
  • What happens if you turn on help->debug->report modes->shortcut report mode and try some related shortcuts here? It should talk about anything you type and what is trying to catch and process it. Is Ctrl+Tab 'passing through' a 'PanelThumbnails' but not hitting a 'FrameGUI'? But a different Ctrl+ shortcut is going up to the main frame gui? That's what I see, and I am a little surprised at what is going on. Or is your client unable to ever notice a Ctrl+Tab shortcut?

Image

Am I right that Command+Tab normally moves between open Apps, like Alt+Tab would be on Windows? I wonder if that is hardcoded in macOS, so Qt can't use it somehow. What happens if you try Command+` or Ctrl+`?

@lehitoskin
Copy link
Author

lehitoskin commented Feb 14, 2025

First of all, sorry for the late reply!

I have tried a few things and here are the results:

  • Ctrl+T and Ctrl+G work and can be mapped as expected. It seems to specifically be Ctrl+TAB that is a problem.
  • The client seems unable to see Ctrl+TAB at all, but it can see Ctrl+T/G that I set earlier just fine
v608, 2025-02-14 18:16:56: Key shortcut "control+t" passing through <hydrus.client.gui.pages.ClientGUIMediaResultsPanelThumbnails.MediaResultsPanelThumbnails object at 0x168bc76d0>. I am in a state to catch it.
v608, 2025-02-14 18:16:56: Key shortcut "control+t" passing through <hydrus.client.gui.ClientGUI.FrameGUI object at 0x1433684c0>. I am in a state to catch it.
v608, 2025-02-14 18:16:56: Shortcut "control+t" matched on "main_gui" set to "move page selection right (cycles up through page of pages at boundaries)" command.
v608, 2025-02-14 18:16:56: Shortcut "control+t" matched to command "move page selection right (cycles up through page of pages at boundaries)" on <hydrus.client.gui.ClientGUI.FrameGUI object at 0x1433684c0>. It was processed.
v608, 2025-02-14 18:17:00: Key shortcut "control+g" passing through <hydrus.client.gui.ClientGUI.FrameGUI object at 0x1433684c0>. I am in a state to catch it.
v608, 2025-02-14 18:17:00: Shortcut "control+g" matched on "main_gui" set to "move page selection left (cycles up through page of pages at boundaries)" command.
v608, 2025-02-14 18:17:00: Shortcut "control+g" matched to command "move page selection left (cycles up through page of pages at boundaries)" on <hydrus.client.gui.ClientGUI.FrameGUI object at 0x1433684c0>. It was processed.

Command+TAB does normally cycle through open applications, like Alt+TAB on Windows and Linux. I pressed Ctrl+` and Command+` a bunch and got this output:

v608, 2025-02-14 18:19:27: Key shortcut "control+`" passing through <hydrus.client.gui.canvas.ClientGUICanvas.CanvasMediaListBrowser object at 0x18b774940>. I am in a state to catch it.
v608, 2025-02-14 18:19:27: Key shortcut "control+`" passing through <hydrus.client.gui.canvas.ClientGUICanvasFrame.CanvasFrame object at 0x18b777a30>. I am in a state to catch it.
v608, 2025-02-14 18:19:28: Key shortcut "control+`" passing through <hydrus.client.gui.canvas.ClientGUICanvas.CanvasMediaListBrowser object at 0x18b774940>. I am in a state to catch it.
v608, 2025-02-14 18:19:28: Key shortcut "control+`" passing through <hydrus.client.gui.canvas.ClientGUICanvasFrame.CanvasFrame object at 0x18b777a30>. I am in a state to catch it.
v608, 2025-02-14 18:19:36: Key shortcut "control+`" passing through <hydrus.client.gui.pages.ClientGUIMediaResultsPanelThumbnails.MediaResultsPanelThumbnails object at 0x168bc76d0>. I am in a state to catch it.
v608, 2025-02-14 18:19:36: Key shortcut "control+`" passing through <hydrus.client.gui.ClientGUI.FrameGUI object at 0x1433684c0>. I am in a state to catch it.

Hmm, it doesn't look like it is able to see Command+` for some reason. It does, however, work as expected (at least from a macOS perspective) in that it cycles through windows of the same application.

In other contexts, such as in Firefox, Chrome, or DuckDuckGo, Ctrl+TAB works as expected.

@hydrusnetwork
Copy link
Owner

Thanks. I know I do some silly stuff with Command vs Ctrl in macOS, so I wonder if something is being swallowed. I will investigate things my end a bit this week and post back here.

@hydrusnetwork
Copy link
Owner

Hey, I got caught up in rewrites this week and did not have time for this. Delay another week, sorry!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants