very basic prototype for delete undo
the idea is to just hide applets at first and then offer a really delete and undo buttons Change-Id: I4d869cb58f5c0fb0163d5d4d6b265af860d8727e
This commit is contained in:
parent
cfd29dec88
commit
f8ba97ae3e
@ -253,7 +253,8 @@ public:
|
|||||||
ActiveStatus = 2, /**< The Item is active **/
|
ActiveStatus = 2, /**< The Item is active **/
|
||||||
NeedsAttentionStatus = 3, /**< The Item needs attention **/
|
NeedsAttentionStatus = 3, /**< The Item needs attention **/
|
||||||
RequiresAttentionStatus = 4, /**< The Item needs persistent attention **/
|
RequiresAttentionStatus = 4, /**< The Item needs persistent attention **/
|
||||||
AcceptingInputStatus = 5 /**< The Item is accepting input **/
|
AcceptingInputStatus = 5, /**< The Item is accepting input **/
|
||||||
|
AwaitingDeletionStatus = -1 /**< The user asked to delete this applet*/
|
||||||
};
|
};
|
||||||
Q_ENUMS(ItemStatus)
|
Q_ENUMS(ItemStatus)
|
||||||
|
|
||||||
|
@ -220,6 +220,13 @@ void AppletPrivate::askDestroy()
|
|||||||
return; //don't double delete
|
return; //don't double delete
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (itemStatus == Types::AwaitingDeletionStatus) {
|
||||||
|
transient = true;
|
||||||
|
cleanUpAndDelete();
|
||||||
|
} else {
|
||||||
|
q->setStatus(Types::AwaitingDeletionStatus);
|
||||||
|
}
|
||||||
|
/*
|
||||||
if (q->isContainment()) {
|
if (q->isContainment()) {
|
||||||
QMessageBox *box = new QMessageBox(QMessageBox::Warning, i18nc("@title:window %1 is the name of the containment", "Remove %1", q->title()), i18nc("%1 is the name of the containment", "Do you really want to remove this %1?", q->title()), QMessageBox::StandardButtons(QMessageBox::Yes | QMessageBox::No));
|
QMessageBox *box = new QMessageBox(QMessageBox::Warning, i18nc("@title:window %1 is the name of the containment", "Remove %1", q->title()), i18nc("%1 is the name of the containment", "Do you really want to remove this %1?", q->title()), QMessageBox::StandardButtons(QMessageBox::Yes | QMessageBox::No));
|
||||||
box->setWindowFlags((Qt::WindowFlags)(box->windowFlags() | Qt::WA_DeleteOnClose));
|
box->setWindowFlags((Qt::WindowFlags)(box->windowFlags() | Qt::WA_DeleteOnClose));
|
||||||
@ -238,10 +245,9 @@ void AppletPrivate::askDestroy()
|
|||||||
});
|
});
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}*/
|
||||||
|
|
||||||
|
|
||||||
transient = true;
|
|
||||||
cleanUpAndDelete();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void AppletPrivate::globalShortcutChanged()
|
void AppletPrivate::globalShortcutChanged()
|
||||||
|
@ -115,6 +115,9 @@ void ContainmentPrivate::configChanged()
|
|||||||
|
|
||||||
void ContainmentPrivate::checkStatus(Plasma::Types::ItemStatus appletStatus)
|
void ContainmentPrivate::checkStatus(Plasma::Types::ItemStatus appletStatus)
|
||||||
{
|
{
|
||||||
|
if (appletStatus == Types::AwaitingDeletionStatus) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
//qDebug() << "================== "<< appletStatus << q->status();
|
//qDebug() << "================== "<< appletStatus << q->status();
|
||||||
if (appletStatus == q->status()) {
|
if (appletStatus == q->status()) {
|
||||||
emit q->statusChanged(appletStatus);
|
emit q->statusChanged(appletStatus);
|
||||||
|
@ -72,6 +72,7 @@ AppletInterface::AppletInterface(DeclarativeAppletScript *script, const QVariant
|
|||||||
|
|
||||||
connect(applet(), &Plasma::Applet::statusChanged,
|
connect(applet(), &Plasma::Applet::statusChanged,
|
||||||
this, &AppletInterface::statusChanged);
|
this, &AppletInterface::statusChanged);
|
||||||
|
|
||||||
connect(applet(), &Plasma::Applet::activated,
|
connect(applet(), &Plasma::Applet::activated,
|
||||||
this, &AppletInterface::activated);
|
this, &AppletInterface::activated);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user