keepassxreboot / keepassxc

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

Opens/closes windows in a way that breaks virtual screens on Linux #10697

Open benbucksch opened 4 months ago

benbucksch commented 4 months ago

Overview

KeePassXC opens and closes (!) the main window and dialogs by itself, massively interfering with usage on virtual screens.

Environment

Steps to Reproduce

  1. You're on virtual workspace A. Use the window manager window title or taskbar context menu (right-click), select "Always on the visible workspace".
  2. In the browser, go to a page with login field where you have a stored login in KeePassXC
  3. KeePassXC opens a popup dialog (Problem 1) asking whether I want to allow filling out the password
  4. Login in browser using the browsers password autofill, not needing KeePassXC.
  5. The KeePassXC popup dialog stays there, forever, until I manually close it (Problem 2)
  6. If I manually close the popup dialog, with either Accept or Deny buttons, the popup dialog disappears (correct)
  7. And the KeePassXC main window also minimizes to the taskbar (Problem 3, major bug). (I did not find a settings to disable that behavior.)
  8. Once minimized, the KeePassXC window has lost the window manager setting "Always on the visible workspace". It is now visible only on the screen where you happened to be in step 6.
  9. Go to another virtual workspace B, use the browser, repeat steps 2.-5.
  10. The KeePassXC window has popped up only on virtual workspace A, not B, and therefore, I cannot see it and it's useless.
  11. Effectively, the setting from step 1 was ignored, due to step 8.

Expected Behavior

  1. KeePassXC main window never minimizes by itself (Problem 3)
  2. The "Always on the visible workspace" of the window manager persists. KeePassXC is the only program that I remember where this does not work, likely due to Point 1 / Problem 3 and the particular way how it minimizes itself.
  3. No popup dialogs. All questions are inline in the main window (Problem 1)
  4. When the login page is no longer there, the popup dialog automatically disappears (Problem 2)

Actual Behavior

See repo steps above.

Debug info

KeePassXC - Version 2.7.7 Revision: 68e2dd8 Distribution: AppImage Qt 5.15.2

Extensions:

benbucksch commented 2 months ago

ping?

droidmonkey commented 2 months ago

Haven't the time to set this up, test, debug and fix unfortunately

benbucksch commented 2 months ago

@droidmonkey Understood.

At least "Expected: KeePassXC main window never minimizes by itself (Problem 3)" should be easy to fix, and could be tested even without having to reproduce this test setup, because it would merely be removing (or skipping) some explicit action implemented by some specific code lines. Fixing that would already help a lot.