RectangleWin icon indicating copy to clipboard operation
RectangleWin copied to clipboard

Add hotkeys to tray menu

Open ghokun opened this issue 4 years ago • 4 comments

Rectangle provides hot keys as tray menu items:

rectangle

Initial work is here (buttons not working currently, needs work): https://github.com/ghokun/RectangleWin/commit/61b2cbe46d1118860b5f4e87360e7942e82ac622

buttons

Problems:

  • We need to keep track of active window (or latest active window that can be resizable)
  • I tried to get process id of current window and compare it with RectangleWin process id. Looks like tray menu returns different process id.

Instead of a endless loop, active window changed hook could be used: https://docs.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-setwineventhook?redirectedfrom=MSDN https://stackoverflow.com/questions/4407631/is-there-windows-system-event-on-active-window-changed

ghokun avatar Dec 30 '21 13:12 ghokun

That seems a bit excessive. I'd focus on creating a way for configuring the shortcuts.

ahmetb avatar Dec 30 '21 16:12 ahmetb

To be clear, I think clicking on system tray to snap windows is out of scope for this tool as this tool intends to be hotkey-driven.

ahmetb avatar Dec 30 '21 21:12 ahmetb

Fair enough. I am a long time user of rectangle on macos and I always forget some of the bindings (mostly cmd shift and ctrl) because of context switching between multiple OSes during the day. I click the tray icon to quickly remember what it was. Maybe we could add them as readonly items with their current bindings.

ghokun avatar Dec 30 '21 22:12 ghokun

I think a UI like the Rectangle's screenshot in its readme where people can go to modify the hotkeys is the most preferable as it's for both learning and modifying.

ahmetb avatar Dec 30 '21 22:12 ahmetb