Review Request 128181: Remove a lot of duplication between both AppletInterface constructors
David Edmundson
david at davidedmundson.co.uk
Tue Jun 14 09:03:38 UTC 2016
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/128181/
-----------------------------------------------------------
Review request for KDE Frameworks and Plasma.
Repository: plasma-framework
Description
-------
Also the two were slightly out of sync leading to some connections not
being in each constructor.
Diffs
-----
src/scriptengines/qml/plasmoid/appletinterface.h 6a64594cd53cecfbc99ad7562706e1a78d60c138
src/scriptengines/qml/plasmoid/appletinterface.cpp df2d642445bdcc81d7fed463cb38c337380ea25b
Diff: https://git.reviewboard.kde.org/r/128181/diff/
Testing
-------
previous code.
FIRST CTOR ONLY (normal mode)
connect(applet(), &Plasma::Applet::contextualActionsAboutToShow,
this, &AppletInterface::contextualActionsAboutToShow);
connect(applet(), &Plasma::Applet::activated,
this, &AppletInterface::activated);
connect(this, &AppletInterface::expandedChanged, [=](bool expanded) {
//if both compactRepresentationItem and fullRepresentationItem exist,
//the applet is in a popup
if (expanded) {
if (compactRepresentationItem() && fullRepresentationItem() &&
fullRepresentationItem()->window() && compactRepresentationItem()->window() &&
fullRepresentationItem()->window() != compactRepresentationItem()->window() &&
fullRepresentationItem()->parentItem()) {
fullRepresentationItem()->parentItem()->installEventFilter(this);
} else if (fullRepresentationItem() && fullRepresentationItem()->parentItem()) {
fullRepresentationItem()->parentItem()->removeEventFilter(this);
}
}
});
}
SECOND CTOR ONLY (special comic applet path)
connect(applet(), &Plasma::Applet::configurationRequiredChanged,
this, [this](bool needsConfig, const QString &reason) {
emit configurationRequiredChanged();
emit configurationRequiredReasonChanged();
});
}
DUPLICATED:
qmlRegisterType<QAction>();
connect(this, &AppletInterface::configNeedsSaving,
applet(), &Plasma::Applet::configNeedsSaving);
connect(applet(), &Plasma::Applet::immutabilityChanged,
this, &AppletInterface::immutabilityChanged);
connect(applet(), &Plasma::Applet::userConfiguringChanged,
this, &AppletInterface::userConfiguringChanged);
connect(applet(), &Plasma::Applet::statusChanged,
this, &AppletInterface::statusChanged);
connect(applet(), &Plasma::Applet::destroyedChanged,
this, &AppletInterface::destroyedChanged);
connect(applet(), &Plasma::Applet::titleChanged,
this, &AppletInterface::titleChanged);
connect(applet(), &Plasma::Applet::iconChanged,
this, &AppletInterface::iconChanged);
connect(applet(), &Plasma::Applet::busyChanged,
this, &AppletInterface::busyChanged);
connect(appletScript(), &DeclarativeAppletScript::formFactorChanged,
this, &AppletInterface::formFactorChanged);
connect(appletScript(), &DeclarativeAppletScript::locationChanged,
this, &AppletInterface::locationChanged);
connect(appletScript(), &DeclarativeAppletScript::contextChanged,
this, &AppletInterface::contextChanged);
if (applet()->containment()) {
connect(applet()->containment(), &Plasma::Containment::screenChanged,
this, &ContainmentInterface::screenChanged);
}
Thanks,
David Edmundson
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/plasma-devel/attachments/20160614/62c10ef1/attachment-0001.html>
More information about the Plasma-devel
mailing list