Changeset View
Changeset View
Standalone View
Standalone View
decorations/decorationrenderer.cpp
Show All 34 Lines | |||||
35 | { | 35 | { | ||
36 | 36 | | |||
37 | Renderer::Renderer(DecoratedClientImpl *client) | 37 | Renderer::Renderer(DecoratedClientImpl *client) | ||
38 | : QObject(client) | 38 | : QObject(client) | ||
39 | , m_client(client) | 39 | , m_client(client) | ||
40 | , m_imageSizesDirty(true) | 40 | , m_imageSizesDirty(true) | ||
41 | { | 41 | { | ||
42 | auto markImageSizesDirty = [this]{ | 42 | auto markImageSizesDirty = [this]{ | ||
43 | schedule(m_client->client()->rect()); | ||||
43 | m_imageSizesDirty = true; | 44 | m_imageSizesDirty = true; | ||
44 | }; | 45 | }; | ||
45 | connect(client->client(), &AbstractClient::screenScaleChanged, this, markImageSizesDirty); | 46 | connect(client->client(), &AbstractClient::screenScaleChanged, this, markImageSizesDirty); | ||
46 | connect(client->decoration(), &KDecoration2::Decoration::bordersChanged, this, markImageSizesDirty); | 47 | connect(client->decoration(), &KDecoration2::Decoration::bordersChanged, this, markImageSizesDirty); | ||
47 | connect(client->decoratedClient(), &KDecoration2::DecoratedClient::widthChanged, this, markImageSizesDirty); | 48 | connect(client->decoratedClient(), &KDecoration2::DecoratedClient::sizeChanged, this, markImageSizesDirty); | ||
zzag: I'm not happy about these two though. It would be nice to have `DecoratedClient::sizeChanged`… | |||||
48 | connect(client->decoratedClient(), &KDecoration2::DecoratedClient::heightChanged, this, markImageSizesDirty); | | |||
49 | } | 49 | } | ||
50 | 50 | | |||
51 | Renderer::~Renderer() = default; | 51 | Renderer::~Renderer() = default; | ||
52 | 52 | | |||
53 | void Renderer::schedule(const QRect &rect) | 53 | void Renderer::schedule(const QRect &rect) | ||
54 | { | 54 | { | ||
55 | m_scheduled = m_scheduled.united(rect); | 55 | m_scheduled = m_scheduled.united(rect); | ||
56 | emit renderScheduled(rect); | 56 | emit renderScheduled(rect); | ||
Show All 37 Lines |
I'm not happy about these two though. It would be nice to have DecoratedClient::sizeChanged or something.