Changeset View
Changeset View
Standalone View
Standalone View
src/decorationbutton.cpp
Show First 20 Lines • Show All 58 Lines • ▼ Show 20 Line(s) | |||||
59 | { | 59 | { | ||
60 | init(); | 60 | init(); | ||
61 | } | 61 | } | ||
62 | 62 | | |||
63 | DecorationButton::Private::~Private() = default; | 63 | DecorationButton::Private::~Private() = default; | ||
64 | 64 | | |||
65 | void DecorationButton::Private::init() | 65 | void DecorationButton::Private::init() | ||
66 | { | 66 | { | ||
67 | auto c = decoration->client().data(); | 67 | auto clientPtr = decoration->client().toStrongRef(); | ||
68 | Q_ASSERT(clientPtr); | ||||
69 | auto c = clientPtr.data(); | ||||
68 | auto settings = decoration->settings(); | 70 | auto settings = decoration->settings(); | ||
69 | switch (type) { | 71 | switch (type) { | ||
70 | case DecorationButtonType::Menu: | 72 | case DecorationButtonType::Menu: | ||
71 | QObject::connect(q, &DecorationButton::clicked, decoration.data(), &Decoration::requestShowWindowMenu, Qt::QueuedConnection); | 73 | QObject::connect(q, &DecorationButton::clicked, decoration.data(), &Decoration::requestShowWindowMenu, Qt::QueuedConnection); | ||
72 | QObject::connect(q, &DecorationButton::doubleClicked, decoration.data(), &Decoration::requestClose, Qt::QueuedConnection); | 74 | QObject::connect(q, &DecorationButton::doubleClicked, decoration.data(), &Decoration::requestClose, Qt::QueuedConnection); | ||
73 | QObject::connect(settings.data(), &DecorationSettings::closeOnDoubleClickOnMenuChanged, q, | 75 | QObject::connect(settings.data(), &DecorationSettings::closeOnDoubleClickOnMenuChanged, q, | ||
74 | [this](bool enabled) { | 76 | [this](bool enabled) { | ||
75 | doubleClickEnabled = enabled; | 77 | doubleClickEnabled = enabled; | ||
▲ Show 20 Lines • Show All 486 Lines • Show Last 20 Lines |