Replace database icons with SVG's

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 #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>
This commit is contained in:
Jonathan White 2020-05-29 10:00:07 -04:00
parent 229a756d84
commit 90d5372813
No known key found for this signature in database
GPG key ID: 440FC65F2E0C6E01
182 changed files with 640 additions and 680 deletions

View file

@ -368,7 +368,7 @@ void KdbxXmlReader::parseIcon()
if (uuidSet && iconSet) {
// Check for duplicate UUID (corruption)
if (m_meta->containsCustomIcon(uuid)) {
if (m_meta->hasCustomIcon(uuid)) {
uuid = QUuid::createUuid();
}
m_meta->addCustomIcon(uuid, icon);
@ -513,9 +513,9 @@ Group* KdbxXmlReader::parseGroup()
raiseError(tr("Invalid group icon number"));
}
iconId = 0;
} else if (iconId >= DatabaseIcons::IconCount) {
} else if (iconId >= databaseIcons()->count()) {
qWarning("KdbxXmlReader::parseGroup: icon id \"%d\" not supported", iconId);
iconId = DatabaseIcons::IconCount - 1;
iconId = databaseIcons()->count() - 1;
}
group->setIcon(iconId);