69 set_icon(window,
nullptr);
73 auto toplevelIcon = std::make_unique<QWaylandXdgToplevelIconV1>(create_icon(), mDisplay);
75 if (
const QString name = icon.name(); !name.isEmpty() && !QDir::isAbsolutePath(name)) {
76 toplevelIcon->set_name(name);
79 QList<QSize> iconSizes = icon.availableSizes();
81 if (iconSizes.isEmpty()) {
82 iconSizes.reserve(mPreferredSizes.size());
83 for (
int size : std::as_const(mPreferredSizes)) {
84 iconSizes.append(QSize(size, size));
88 if (iconSizes.isEmpty()) {
89 iconSizes.append(QSize(64, 64));
92 for (
const QSize &size : std::as_const(iconSizes)) {
93 const QPixmap pixmap = icon.pixmap(size, 1.0);
94 toplevelIcon->addPixmap(pixmap);
97 set_icon(window, toplevelIcon->object());