Changeset View
Changeset View
Standalone View
Standalone View
src/kstatusnotifieritem.cpp
Show First 20 Lines • Show All 1127 Lines • ▼ Show 20 Line(s) | |||||
1128 | } | 1128 | } | ||
1129 | 1129 | | |||
1130 | KDbusImageVector KStatusNotifierItemPrivate::iconToVector(const QIcon &icon) | 1130 | KDbusImageVector KStatusNotifierItemPrivate::iconToVector(const QIcon &icon) | ||
1131 | { | 1131 | { | ||
1132 | KDbusImageVector iconVector; | 1132 | KDbusImageVector iconVector; | ||
1133 | 1133 | | |||
1134 | QPixmap iconPixmap; | 1134 | QPixmap iconPixmap; | ||
1135 | 1135 | | |||
1136 | auto sizes = icon.availableSizes(); | ||||
1137 | if (sizes.isEmpty()) { | ||||
1138 | sizes << QSize(16, 16) | ||||
1139 | << QSize(22, 22) | ||||
1140 | << QSize(32, 32) | ||||
1141 | << QSize(64, 64); | ||||
1142 | } | ||||
1143 | | ||||
1136 | //if an icon exactly that size wasn't found don't add it to the vector | 1144 | //if an icon exactly that size wasn't found don't add it to the vector | ||
1137 | foreach (QSize size, icon.availableSizes()) { | 1145 | foreach (QSize size, sizes) { | ||
1138 | iconPixmap = icon.pixmap(size); | 1146 | iconPixmap = icon.pixmap(size); | ||
1147 | if (!iconPixmap.isNull()) { | ||||
1139 | iconVector.append(imageToStruct(iconPixmap.toImage())); | 1148 | iconVector.append(imageToStruct(iconPixmap.toImage())); | ||
1140 | } | 1149 | } | ||
1150 | } | ||||
1141 | 1151 | | |||
1142 | return iconVector; | 1152 | return iconVector; | ||
1143 | } | 1153 | } | ||
1144 | 1154 | | |||
1145 | #include "moc_kstatusnotifieritem.cpp" | 1155 | #include "moc_kstatusnotifieritem.cpp" | ||
1146 | #include "moc_kstatusnotifieritemprivate_p.cpp" | 1156 | #include "moc_kstatusnotifieritemprivate_p.cpp" |