keepassxreboot / keepassxc

KeePassXC is a cross-platform community-driven port of the Windows application “Keepass Password Safe”.
https://keepassxc.org/
Other
21.15k stars 1.46k forks source link

Summon KeepassXC to current desktop #1858

Open bluppfisk opened 6 years ago

bluppfisk commented 6 years ago

In a multi-desktop environment like Ubuntu, when toggling the KeepassXC window (e.g. through the menu in its tray icon), the window is opened on the desktop where it was last put. As KeepassXC is a utility that should require as little navigating as possible, it would be much preferable if KeepassXC always opened on the current desktop.

Debug Info

KeePassXC - Version 2.3.1 Revision: 2fcaeea

Libraries:

Operating system: Ubuntu 16.04.4 LTS CPU architecture: x86_64 Kernel: linux 4.15.7-041507-generic

Enabled extensions:

droidmonkey commented 6 years ago

Is that possible? Seems like this is handled by the window manager (and user choice) not the application. On most multidesktop envs you can usually choose to make an app visible on all desktops.

TheZ3ro commented 6 years ago

I don't think this is handled by KeePassXC or Qt, I think this is handled by the desktop environment/window manager

bluppfisk commented 6 years ago

Perhaps, but there are plenty of apps that reside in the tray and create their windows on whatever desktop you're currently on. Example would be Dropbox' preferences window. Maybe there's a difference between modals and main windows, but it's worth investigating. I believe that even the 'old' Keepass on Mono always opens on the right desktop.

phoerious commented 6 years ago

My X11 knowledge is limited, but there are various window flags in the freedesktop standard which target virtual desktops.

frederickjh commented 6 years ago

With KeePassX It was possible to right-click the top bar of the window and select Always on Visible WorkSpace. However with KeePassX it never disappeared totally to the taskbar.

This works on KeePassXC until you toggle the window then this setting is lost. If this setting could persist then this would solve this issue as one can then set the window to appear on all workspaces.

The other option that the user can use now is to uncheck Hide window to system tray when minimized and set the window to appear on all desktop, per instructions above.

rpedrica commented 5 years ago

Confirming the issue here with KDE5/Plasma and multiple desktops. I have 2 physical screens with 2 desktops. If Keepassxc was last opened on desktop B and I'm currently on desktop A, on invoking global shortcut/auto-type in a browser tab, keepassxc shows focus in desktop B (ie. you can go to desktop B and Keepassxc brings up the selection for which account/pwd combo to use) - even after selecting the correct account/pwd details to insert, this is not inserted into the account/pwd field in the browser on desktop A.

To get this to work, I need to move Keepasscx to desktop A (right-click title bar and Move to Desktop -> A) and then do shortcut again for auto-type to work.

It works fine when there is only 1 possible result for a site, in which case there is no selection box and the auto-type works as expected. The problem exists when there is more than 1 result for a site ie. multiple logins on the same site.

EDIT: confirming here that the Plasma window title option Move to -> All Desktops solves the issue.

frederickjh commented 5 years ago

On Ubuntu 16.04 with Unity I am finding that, if I have the KeePassXC window set to Always on Visible WorkSpace then all I need to do is us the taskbar Toogle Window button. Sometimes I have to do it twice. Put it always appears.