[kcm/tabbox] Add missing property to mock ThumbnailItem

The TabBox preview uses a mock WindowThumbnailItem mimicking the
real item, but it was missing the `sourceSize` property, preventing
some effects to be previewed if they use it.
master
Ismael Asensio 3 years ago
parent 4a62109f59
commit 08f6e28a1d

@ -100,6 +100,7 @@ WindowThumbnailItem::WindowThumbnailItem(QQuickItem* parent)
, m_clipToItem(nullptr)
, m_brightness(1.0)
, m_saturation(1.0)
, m_sourceSize(QSize())
{
setFlag(ItemHasContents);
}
@ -185,6 +186,11 @@ qreal WindowThumbnailItem::saturation() const
return m_saturation;
}
QSize WindowThumbnailItem::sourceSize() const
{
return m_sourceSize;
}
void WindowThumbnailItem::setBrightness(qreal brightness)
{
if (m_brightness == brightness) {
@ -205,4 +211,14 @@ void WindowThumbnailItem::setSaturation(qreal saturation)
Q_EMIT saturationChanged();
}
void WindowThumbnailItem::setSourceSize(const QSize &size)
{
if (m_sourceSize == size) {
return;
}
m_sourceSize = size;
update();
Q_EMIT sourceSizeChanged();
}
} // namespace KWin

@ -54,6 +54,7 @@ class WindowThumbnailItem : public QQuickItem
Q_PROPERTY(QQuickItem *clipTo READ clipTo WRITE setClipTo NOTIFY clipToChanged)
Q_PROPERTY(qreal brightness READ brightness WRITE setBrightness NOTIFY brightnessChanged)
Q_PROPERTY(qreal saturation READ saturation WRITE setSaturation NOTIFY saturationChanged)
Q_PROPERTY(QSize sourceSize READ sourceSize WRITE setSourceSize NOTIFY sourceSizeChanged)
public:
explicit WindowThumbnailItem(QQuickItem *parent = nullptr);
~WindowThumbnailItem() override;
@ -66,10 +67,12 @@ public:
}
qreal brightness() const;
qreal saturation() const;
QSize sourceSize() const;
void setWId(qulonglong wId);
void setClipTo(QQuickItem *clip);
void setBrightness(qreal brightness);
void setSaturation(qreal saturation);
void setSourceSize(const QSize &size);
QSGNode *updatePaintNode(QSGNode *oldNode, UpdatePaintNodeData *updatePaintNodeData) override;
enum Thumbnail {
@ -83,6 +86,7 @@ Q_SIGNALS:
void clipToChanged();
void brightnessChanged();
void saturationChanged();
void sourceSizeChanged();
private:
void findImage();
qulonglong m_wId;
@ -90,6 +94,7 @@ private:
QQuickItem *m_clipToItem;
qreal m_brightness;
qreal m_saturation;
QSize m_sourceSize;
};
} // KWin

Loading…
Cancel
Save