-
-
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
Replace or augment existing database icons #4071
Comments
|
Worst case we need to pull a higher-res copy of Nuvola, but I am all for replacing it with something that actually looks good. |
This resource looks perfect, we can cull the icons that are needed to do a 1-for-1 replacement while also adding to the default list where necessary: https://icons8.com/icons/color They offer a no-strings-attached open source license: |
icons8 is amazing, the sheer amount of icons to choose from is totally overwhelming. Many icons come in lots of variations which would make it possible to offer various style sets to the user (as suggested by @droidmonkey above). Unfortunately, the SVG versions of many of the icons on icons8.com are available to paying customers only, and it's not immediately obvious from the search results which are free, nor have I found a way to restrict search to free icons -- there's https://icons8.com/icons/pack/free-icons but it doesn't contain all the icons to cover our needs. They say "Established open source projects could get the icons for free" (where "established" means that it has a Wikipedia page) with additional details on https://icons8.com/articles/we-contributed-icon-to-imageoptim/; I'll contact them and see what they say. Of course we should go for SVG instead of PNG to become resolution-independent, just as in #475. |
I am going to apply for an Open Source license so we can access the SVG versions. Although for the purposes of the database icons they can be PNG of 150x150 px since that is equivalent to what we do with downloaded favicons. Looking at their website I noticed that they support adding emblems to icons. I think this would be a good idea (emblems) to indicate entries that have warnings are errors associated with them. (separate issue) Ref: https://icons8.com/articles/we-contributed-icon-to-imageoptim/ |
I downloaded a handful of 100x100 PNGs from icon8 to see what it looks like in the demo database. LOL, seems like the PNGs are expected to be a certain size, look at this mess: Haven't dug into the source code yet. Does anyone have a quick idea where/how to fix the icon sizes? Anyway, the names of the icon8 icons I used are:
|
For reference, we want to use full-color icons for the database icon set. Preferably pastel style / non-loud colors. The whole handling of icons around the app needs to be addressed. It is likely that a width/height needs to be added to the QPixmap that loads the database icons to scale them down. |
Full color is reasonable, matches favicons better and is a welcome contrast to the application icons in Material Design (#475). Picking consistent icons will be a challenge because of the huge amount of icons available on icon8; OTOH we'll find all we need there, and in abundance. Also, we mustn't forget to credit them properly (cf. https://icons8.com/license). Figured out the icon size thing. We need Looks much better now: |
In the future, database icons will no longer be limited to 16x16 pixels. Fixes keepassxreboot#4071
Source of the icons: https://icons8.com/ This is an experimental commit. Proper credit in the docs will be added later. Fixes keepassxreboot#4071
We should allow for a setting to increase the size of the icons (perhaps in steps of 8px, 16x16, 24x24, 32x32) |
That looks so much better already. |
SVGs from icons8 require a commercial license. Open source projects can get them for free, @droidmonkey said he wanted to apply for a license. I consider the PNGs I did so far experimental and temporary, will replace them by SVGs when they are available. |
BTW what's the problem with scaling icons in Qt? Doesn't look too bad on my system. Or is it a performance issue? |
The results depend a lot on the scaling algorithms. Bicubic is pretty good, but properly rendering the correct resolution from vector line art is usually better. |
Maybe we can support Ctrl-+/-/0 for zooming, just like the web browsers do (Cmd-+/-/0 on macOS). Would increase/decrease font and icon sizes in the group tree, entry list, and entry preview panel. Hiding a size selection in app settings with no immediate visual feedback would be so 20th century. But that should go into another issue. In the icon selection dialog (in the group and entry editors) the icons should be bigger than 16x16, either a fixed size (32x32 should be enough I think) or also zoomable with Ctrl-+/-/0. Without checking the code I guess that simply increasing the size should be fairly easy. |
In the future, database icons will no longer be limited to 16x16 pixels. Fixes keepassxreboot#4071
Source of the icons: https://icons8.com/ This is an experimental commit. Proper credit in the docs will be added later. Fixes keepassxreboot#4071
Will continue working on this issue after @phoerious has finished theming (#4110), since that may affect how icons are stored and used in the source code. @droidmonkey did you manage to obtain the Open Source license for icon8 so that we can use the SVG versions of their icons? |
Yes, we need to identify which icons we are going to use and they will provide us access. |
Note that these SVGs are just to assist development. They are NOT the final database icons. To be replaced by the actual SVGs once we're decided on them. Only replaces are few DB icons, most are still the old 16x16 PNGs. Source of the SVG files: https://www.sketchappsources.com/svg-resource/1202-free-flat-color-icons-svg-freebie-resource.html Original source is the icon8 library (http://icons8.com/c/flat-color-icons). License (according to comment.txt in the archive): "http://icons8.com/good-boy-license/ -- Please do whatever your mom would approve of." Implements keepassxreboot#4071
Since database icons are going to be SVG instead of PNG, we supply a parameter to return a database icon in an arbitrary (but always square) size. The default is 16 because previously all database icons were 16x16. Implements keepassxreboot#4071
Previously, when picking a default (aka database) icon for an entry or group, the icons in the selection were tiny (16x16). Now that we are getting SVG icons we can display them in 32x32. Implements keepassxreboot#4071
Previously all they could return was a 16x16 icon, now they have a parameter for the caller to specify the icon size (must be square). Implements keepassxreboot#4071
Now that the database icons are displayed in 32x32, there's no point in showing the custom icons in 16x16. Surprise, most favicons look awesome. Implements keepassxreboot#4071
customIconsPixmap and customIconsPixmaps returned the icon in an unspecified size, the Scaled versions of these functions returned it in a well-defined size. There's no need for both functions, let's keep just the one that takes the size as a parameter. Implements keepassxreboot#4071
Load the SVG file in 128x128 and later scale it down to 16x16 or 32x32 in "FastTransformation" mode. Previous version would load whatever resolution was defined in the SVG and scale it up in "SmoothTransformation" mode, which made the icons look fuzzy. Implements keepassxreboot#4071
Some of these might become final but some are probably poorly chosen because they are quite different from the original KeePass icons we've been using so far. Some icons will probably be replaced in the future. Source of the icons: https://github.com/icons8/flat-color-icons.git Licence: https://github.com/icons8/flat-color-icons/blob/master/LICENSE.md -- "Please do whatever your mom would approve of" Implements keepassxreboot#4071
... from a previously downloaded directory that contains the SVG or PNG files from the icons8 collection. Implements keepassxreboot#4071
Some database icons are now non-free (=PNG instead of SVG) icons from the icons8 collection. To be replaced by the SVG versions after we've agreed on the final design. Implements keepassxreboot#4071
Pull request submitted (#4699). BTW, if there's trouble with Icon8 making the SVGs freely available, the 150x150 PNGs are free and don't look too bad either. |
Note that these SVGs are just to assist development. They are NOT the final database icons. To be replaced by the actual SVGs once we're decided on them. Only replaces are few DB icons, most are still the old 16x16 PNGs. Source of the SVG files: https://www.sketchappsources.com/svg-resource/1202-free-flat-color-icons-svg-freebie-resource.html Original source is the icon8 library (http://icons8.com/c/flat-color-icons). License (according to comment.txt in the archive): "http://icons8.com/good-boy-license/ -- Please do whatever your mom would approve of." Implements keepassxreboot#4071
Since database icons are going to be SVG instead of PNG, we supply a parameter to return a database icon in an arbitrary (but always square) size. The default is 16 because previously all database icons were 16x16. Implements keepassxreboot#4071
Previously, when picking a default (aka database) icon for an entry or group, the icons in the selection were tiny (16x16). Now that we are getting SVG icons we can display them in 32x32. Implements keepassxreboot#4071
Previously all they could return was a 16x16 icon, now they have a parameter for the caller to specify the icon size (must be square). Implements keepassxreboot#4071
Now that the database icons are displayed in 32x32, there's no point in showing the custom icons in 16x16. Surprise, most favicons look awesome. Implements keepassxreboot#4071
customIconsPixmap and customIconsPixmaps returned the icon in an unspecified size, the Scaled versions of these functions returned it in a well-defined size. There's no need for both functions, let's keep just the one that takes the size as a parameter. Implements keepassxreboot#4071
Load the SVG file in 128x128 and later scale it down to 16x16 or 32x32 in "FastTransformation" mode. Previous version would load whatever resolution was defined in the SVG and scale it up in "SmoothTransformation" mode, which made the icons look fuzzy. Implements keepassxreboot#4071
Some of these might become final but some are probably poorly chosen because they are quite different from the original KeePass icons we've been using so far. Some icons will probably be replaced in the future. Source of the icons: https://github.com/icons8/flat-color-icons.git Licence: https://github.com/icons8/flat-color-icons/blob/master/LICENSE.md -- "Please do whatever your mom would approve of" Implements keepassxreboot#4071
... from a previously downloaded directory that contains the SVG or PNG files from the icons8 collection. Implements keepassxreboot#4071
Some database icons are now non-free (=PNG instead of SVG) icons from the icons8 collection. To be replaced by the SVG versions after we've agreed on the final design. Implements keepassxreboot#4071
Original source of icons is the icon8 library (http://icons8.com/c/flat-color-icons). License (according to comment.txt in the archive): "http://icons8.com/good-boy-license/ -- Please do whatever your mom would approve of." * Implements keepassxreboot#4071 * Increase default size of database icons to 24px and entry preview panel to 48px * Fully support HIDPI displays through use of QIcon * Add shell script to assemble the database icons
Original source of icons is the icon8 library (http://icons8.com/c/flat-color-icons). License (according to comment.txt in the archive): "http://icons8.com/good-boy-license/ -- Please do whatever your mom would approve of." * Implements keepassxreboot#4071 * Increase default size of database icons to 24px and entry preview panel to 48px * Fully support HIDPI displays through use of QIcon * Add shell script to assemble the database icons Code improvements and badges * Use QIcon to seamlessly support High DPI displays and pixmap caching * Add badge support for KeeShare groups and expired entries. * Replace select icons Co-authored-by: Jonathan White <support@dmapps.us>
Original source of icons is the icon8 library (http://icons8.com/c/flat-color-icons). License (according to comment.txt in the archive): "http://icons8.com/good-boy-license/ -- Please do whatever your mom would approve of." * Implements keepassxreboot#4071 * Increase default size of database icons to 24px and entry preview panel to 48px * Fully support HIDPI displays through use of QIcon * Add shell script to assemble the database icons Code improvements and badges * Use QIcon to seamlessly support High DPI displays and pixmap caching * Add badge support for KeeShare groups and expired entries. * Replace select icons Co-authored-by: Jonathan White <support@dmapps.us>
Original source of icons is the icon8 library (http://icons8.com/c/flat-color-icons) and Paomedia (https://github.com/paomedia/small-n-flat). All icons used are licensed MIT or CC0; annotated in COPYING. * Closes keepassxreboot#4071 * Increase default size of database icons to 24px and entry preview panel to 48px * Add shell script to assemble the database icons * Use QIcon to seamlessly support High DPI displays and pixmap caching * Add badge support for KeeShare groups and expired entries. Co-authored-by: Wolfram Rösler <wolfram@roesler-ac.de>
Original source of icons is the icon8 library (http://icons8.com/c/flat-color-icons) and Paomedia (https://github.com/paomedia/small-n-flat). All icons used are licensed MIT or CC0; annotated in COPYING. * Closes keepassxreboot#4071 * Increase default size of database icons to 24px and entry preview panel to 48px * Add shell script to assemble the database icons * Use QIcon to seamlessly support High DPI displays and pixmap caching * Add badge support for KeeShare groups and expired entries. * Guard against use of QPixmap::fromImage without a GUI Co-authored-by: Wolfram Rösler <wolfram@roesler-ac.de>
Why not use Google's material design icons directly? They're all available under Apache 2.0 and available from the linked website as SVG. I've already pulled a bunch of them to set as my icons as external ones, and they look like this: |
Original source of icons is the icon8 library (http://icons8.com/c/flat-color-icons) and Paomedia (https://github.com/paomedia/small-n-flat). All icons used are licensed MIT or CC0; annotated in COPYING. * Closes keepassxreboot#4071 * Increase default size of database icons to 24px and entry preview panel to 48px * Add shell script to assemble the database icons * Use QIcon to seamlessly support High DPI displays and pixmap caching * Add badge support for KeeShare groups and expired entries. * Guard against use of QPixmap::fromImage without a GUI * Add SVG minify and improve `make icons` Co-authored-by: Wolfram Rösler <wolfram@roesler-ac.de>
We want coloured icons that are easy to distinguish from the main UI and that go well together with coloured favicons. |
Original source of icons is the icon8 library (http://icons8.com/c/flat-color-icons) and Paomedia (https://github.com/paomedia/small-n-flat). All icons used are licensed MIT or CC0; annotated in COPYING. * Closes keepassxreboot#4071 * Increase default size of database icons to 24px and entry preview panel to 48px * Add shell script to assemble the database icons * Use QIcon to seamlessly support High DPI displays and pixmap caching * Add badge support for KeeShare groups and expired entries. * Guard against use of QPixmap::fromImage without a GUI * Add SVG minify and improve `make icons` Co-authored-by: Wolfram Rösler <wolfram@roesler-ac.de>
The new icons look nice. Can icons be added for the Copy Attribute and TOTP entry right-click menu/sub-menu items? I think doing that would make all menu items have icons. |
Original source of icons is the icon8 library (http://icons8.com/c/flat-color-icons) and Paomedia (https://github.com/paomedia/small-n-flat). All icons used are licensed MIT or CC0; annotated in COPYING. * Closes keepassxreboot#4071 * Increase default size of database icons to 24px and entry preview panel to 48px * Add shell script to assemble the database icons * Use QIcon to seamlessly support High DPI displays and pixmap caching * Add badge support for KeeShare groups and expired entries. * Guard against use of QPixmap::fromImage without a GUI * Add SVG minify and improve `make icons` Co-authored-by: Wolfram Rösler <wolfram@roesler-ac.de>
The current set of default database icons are 16x16 pixels and from a bygone era of computing. We should offer our users a modern set of equivalent icons, at their choice. This can be controlled from within the application settings or within the settings of each individual database.
Existing databases would reference the existing icon set until the user decided to change it. New databases will reference the new icon set by default.
The text was updated successfully, but these errors were encountered: