-
-
Notifications
You must be signed in to change notification settings - Fork 1.5k
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
Improve macOS and Windows platform integration #5851
Conversation
d793753
to
aa190bb
Compare
Can we add the big sur style app icon as well |
aa190bb
to
dab965e
Compare
Ah, the colorful icon is probably changed by the OS. I need to unset the mask flag if it's not the monochrome version. |
dab965e
to
8f8bb83
Compare
@varjolintu I fixed the compiler warning, the icon bug, and another bug I discovered while switching themes. |
@phoerious Sure. I'll give it a try. |
137a057
to
c5bd808
Compare
Added Windows support in a separate commit. |
8f1c7cf
to
3f110ef
Compare
Are you going to attempt Linux integration before we merge this? |
No. I will do that in a separate PR later. |
3f110ef
to
425292a
Compare
You have to package it. If you run the application from the build directory, it won't pick up the icon. That's always been the case, but the default app icon was different pre-big sur. |
I see. I was following the build instructions in INSTALL.md instead of the wiki. Thanks. It is working now. |
- Allow switching between themes without restart (except classic) - Rework icon loading and recolouring logic to react to theme changes - Automatically react to light/dark theme change - Remove explicit selection of monochrome tray icon variant (selected automatically now) - Update theme background colours for Big Sur - Update application icon to match Big Sur HIG The tray icon doesn't respond perfectly to theme changes yet on Big Sur, since we need different icons for dark and light theme and cannot simply let the OS recolour the icon for us (we do that, too, but only as an additional fallback). At the moment, there is no signal to listen to that would allow this. This patch adds a few generic methods to OSUtils for detecting and communicating theme changes, which are only stubs for Windows and Linux at the moment and need to be implemented in future commits. Fixes #4933 Fixes #5349
425292a
to
1349266
Compare
Added - Support Argon2id KDF [#5778] - Support XMLv2 key files [#5798] Changed - Improve CSV Import/Export, include time fields and TOTP [#5346] - Support empty area dragging of the application window [#5860] - Display default Auto-Type sequence in preview pane [#5654] - Remove strict length limit on generated passwords [#5748] - Hide key file path by default when unlocking database [#5779] - Document browser extension use with Edge in managed mode [#5692] - Windows: Prevent clipboard history and cloud sync [#5853] - macOS: Update the application icon to Big Sur styling [#5851] Fixed - Re-select previously selected entry on database unlock [#5559] - Properly save special character choice in password generator [#5610] - Fix crash in browser integration with multiple similar entries [#5653] - Remove offset on username field in classic theme [#5788] - Ensure entry history is copied when drag/dropping entries and groups [#5817] - Close modal dialogs when database is locked [#5820] - Prevent crash when KeeShare modifies an entry that is currently being edited [#5827] - Improve preview of entry attributes [#5834] - Always activate/focus database open dialog preventing mistype [#5878] - Reports: fix calculation of average password length [#5862] - Linux: Delay startup on login to correct tray icon issues [#5724]
Release 2.6.3 Added - Support Argon2id KDF [keepassxreboot#5778] - Support XMLv2 key files [keepassxreboot#5798] Changed - Improve CSV Import/Export, include time fields and TOTP [keepassxreboot#5346] - Support empty area dragging of the application window [keepassxreboot#5860] - Display default Auto-Type sequence in preview pane [keepassxreboot#5654] - Remove strict length limit on generated passwords [keepassxreboot#5748] - Hide key file path by default when unlocking database [keepassxreboot#5779] - Document browser extension use with Edge in managed mode [keepassxreboot#5692] - Windows: Prevent clipboard history and cloud sync [keepassxreboot#5853] - macOS: Update the application icon to Big Sur styling [keepassxreboot#5851] Fixed - Re-select previously selected entry on database unlock [keepassxreboot#5559] - Properly save special character choice in password generator [keepassxreboot#5610] - Fix crash in browser integration with multiple similar entries [keepassxreboot#5653] - Remove offset on username field in classic theme [keepassxreboot#5788] - Ensure entry history is copied when drag/dropping entries and groups [keepassxreboot#5817] - Close modal dialogs when database is locked [keepassxreboot#5820] - Prevent crash when KeeShare modifies an entry that is currently being edited [keepassxreboot#5827] - Improve preview of entry attributes [keepassxreboot#5834] - Always activate/focus database open dialog preventing mistype [keepassxreboot#5878] - Reports: fix calculation of average password length [keepassxreboot#5862] - Linux: Delay startup on login to correct tray icon issues [keepassxreboot#5724]
if (!icon.isNull() && !overrideColor.isValid()) { | ||
return icon; | ||
painter->save(); | ||
painter->drawPixmap(rect, m_baseIcon.pixmap(pixmapSize, mode, state)); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Interesting. It's fine on my system. |
Actually, looking very closely I can see the same thing, just way less severe than what you have. |
It seems the incorrect painting of an icon on Windows is caused by the screen scale settings. When I set the scale to 100% the icons are drawn correctly, and incorrectly If I increase the scale. Therefore, I think it's best to pain the icon image directly via |
I have a scaling of 225% and I can barely see jagged edges. |
I have it set to 125% and it looks like this is the worst scale setting to have. Increasing scaling above 125%, smooths a bit the jagged edges but the icon is still not clear. |
Can you submit your fix as a PR? |
Ok yes, I can make PR. |
Changes in this PR (macOS and Windows only at the moment):
automatically now)
The tray icon doesn't respond perfectly to theme changes yet on Big Sur, since we need different icons for dark and light theme and cannot simply let the OS recolour the icon for us (we do that, too, but only as an additional fallback). At the moment, there is no signal to listen to that would allow this.
This patch adds a few generic methods to OSUtils for detecting and communicating theme changes, which are only stubs for Linux at the moment and need to be implemented in future commits.
Fixes #4933
Fixes #5349
Screenshots
New icon:
Type of change