Skip to content

Show countdown for clipboard clearing#6333

Merged
droidmonkey merged 6 commits intokeepassxreboot:developfrom
ByteHamster:clipboard-countdown
Apr 1, 2021
Merged

Show countdown for clipboard clearing#6333
droidmonkey merged 6 commits intokeepassxreboot:developfrom
ByteHamster:clipboard-countdown

Conversation

@ByteHamster
Copy link
Copy Markdown
Contributor

Double-clicking to copy a password in the list is my most-used interaction with the application. Recently, I found myself clicking 3-4 times "just to be sure" because there is no visual indication that the password was actually copied. This PR now adds a progress bar and timer message to the status bar.

Closes #1843

Screenshots

image

Testing strategy

Manual - clicked the item and watched the progress bar.

Type of change

  • ✅ New feature (change that adds functionality)

@droidmonkey
Copy link
Copy Markdown
Member

I don't like this at all, sorry. Condense it to one side please.

@ByteHamster
Copy link
Copy Markdown
Contributor Author

Do you like this more?

image

I must admit that I'm pretty new to Qt. What do you think about the code structure?

@droidmonkey
Copy link
Copy Markdown
Member

The code is complicated but we can clean that up, there is no need for a signal slot to control the countdown.

@ByteHamster
Copy link
Copy Markdown
Contributor Author

there is no need for a signal slot to control the countdown.

Could you give me a pointer what to do instead, please?

@droidmonkey
Copy link
Copy Markdown
Member

droidmonkey commented Mar 26, 2021

I am on the fence on whether the countdown updates should occur within MainWindow or the Clipboard class like you currently have. I want to re-use this progress bar setup for database decryption status and database saving as well. In order to make this more generic it would be good for the slot to accept a message along with the current progress.

Also, it appears that the status bar is unstyled and rather large, we probably need to add a style to it in the stylesheets.

@droidmonkey
Copy link
Copy Markdown
Member

droidmonkey commented Mar 26, 2021

I made some styling fixes for you. See what you can do to make this more generic for other uses. BTW, just noticed you manage AntennaPod, I use that app all the time thank you!

Sometimes the scheduling is not 100% accurate and countdownTick
can get called just before a complete second has passed.
@ByteHamster
Copy link
Copy Markdown
Contributor Author

I renamed the slot to something more generic and added a message parameter. Now multiple signals can be connected to the same slot. Was that what you had in mind?

@droidmonkey
Copy link
Copy Markdown
Member

Yes it is actually perfect! I van easily add messaging like "Transforming database key" and "Saving database". Thank you!

@droidmonkey droidmonkey self-requested a review March 31, 2021 00:58
@droidmonkey droidmonkey added this to the v2.7.0 milestone Mar 31, 2021
@droidmonkey
Copy link
Copy Markdown
Member

droidmonkey commented Apr 1, 2021

Fixed a bug where the progress bar would stay visible after database lock.

@droidmonkey droidmonkey merged commit 439c155 into keepassxreboot:develop Apr 1, 2021
@ByteHamster ByteHamster deleted the clipboard-countdown branch April 1, 2021 05:17
@ByteHamster
Copy link
Copy Markdown
Contributor Author

Thanks for reviewing and merging!

@droidmonkey droidmonkey modified the milestones: v2.7.0, v2.6.5 Apr 4, 2021
droidmonkey added a commit that referenced this pull request May 15, 2021
* Closes #1843

Co-authored-by: Jonathan White <support@dmapps.us>
droidmonkey added a commit that referenced this pull request May 15, 2021
* Closes #1843

Co-authored-by: Jonathan White <support@dmapps.us>
droidmonkey added a commit that referenced this pull request May 16, 2021
* Closes #1843

Co-authored-by: Jonathan White <support@dmapps.us>
droidmonkey added a commit that referenced this pull request May 30, 2021
* Closes #1843

Co-authored-by: Jonathan White <support@dmapps.us>
droidmonkey added a commit that referenced this pull request Jun 8, 2021
Added

- Show search bar when toolbar is hidden or in overflow [#6279]
- Show countdown for clipboard clearing in status bar [#6333]
- Command line option to lock all open databases [#6511]
- Allow CSV import of bare TOTP secrets [#6211]
- Retain file creation time when saving database [#6576]
- Set permissions of saved attachments to be private to the current user [#6363]
- OPVault: Use Text instead of Name for attribute names [#6334]

Changed

- Reports: Allow resizing of reports columns [#6435]
- Reports: Toggle showing expired entries [#6534]
- Save Always on Top setting [#6236]
- Password generator can exclude additional lookalike characters (6/G, 8/B) [#6196]

Fixed

- Allow setting MSI properties in unattended install [#6196]
- Update MainWindow minimum size to enable smaller verticle space [#6196]
- Use application font size when setting default or monospace fonts [#6332]
- Fix notes not clearing in entry preview panel in some cases [#6481]
- macOS: Correct window activation when restoring from tray [#6575]
- macOS: Better handling of minimize after unlock when using browser integration [#6338]
- Linux: Start after the system tray is available on LXQt [#6216]
- Linux: Allow selection of modal dialogs on X11 in Auto-Type [#6204]
- KeeShare: prevent crash when file extension is missing [#6174]
aswild added a commit to aswild/keepassxc that referenced this pull request Jun 15, 2021
Release 2.6.5

Added

- Show search bar when toolbar is hidden or in overflow [keepassxreboot#6279]
- Show countdown for clipboard clearing in status bar [keepassxreboot#6333]
- Command line option to lock all open databases [keepassxreboot#6511]
- Allow CSV import of bare TOTP secrets [keepassxreboot#6211]
- Retain file creation time when saving database [keepassxreboot#6576]
- Set permissions of saved attachments to be private to the current user [keepassxreboot#6363]
- OPVault: Use Text instead of Name for attribute names [keepassxreboot#6334]

Changed

- Reports: Allow resizing of reports columns [keepassxreboot#6435]
- Reports: Toggle showing expired entries [keepassxreboot#6534]
- Save Always on Top setting [keepassxreboot#6236]
- Password generator can exclude additional lookalike characters (6/G, 8/B) [keepassxreboot#6196]

Fixed

- Allow setting MSI properties in unattended install [keepassxreboot#6196]
- Update MainWindow minimum size to enable smaller verticle space [keepassxreboot#6196]
- Use application font size when setting default or monospace fonts [keepassxreboot#6332]
- Fix notes not clearing in entry preview panel in some cases [keepassxreboot#6481]
- macOS: Correct window activation when restoring from tray [keepassxreboot#6575]
- macOS: Better handling of minimize after unlock when using browser integration [keepassxreboot#6338]
- Linux: Start after the system tray is available on LXQt [keepassxreboot#6216]
- Linux: Allow selection of modal dialogs on X11 in Auto-Type [keepassxreboot#6204]
- KeeShare: prevent crash when file extension is missing [keepassxreboot#6174]

Release 2.6.6

Fixed

- Fix focusing search when pressing hotkey [keepassxreboot#6603]
- Trim whitespace from TOTP key input prior to processing [keepassxreboot#6604]
- Fix building on macOS [keepassxreboot#6598]
- Resolve compiler warnings for unused return values [keepassxreboot#6607]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Show countdown for clipboard clearing

2 participants