KDE/kdebase/workspace/plasma/desktop/shell
Aaron J. Seigo
aseigo at kde.org
Tue Jun 29 17:58:41 CEST 2010
On June 28, 2010, Marco Martin wrote:
> SVN commit 1143845 by mart:
>
> avoid a crash in the following scenario: change the activity type of a
> containment, then try to stop the activity. it still misbehaves, because
> the new containment it gets created is not added to the activity
ah, because in insertContainment there is this:
QPair<int,int> key(screen, desktop);
if (m_containments.contains(key)) {
//this almost certainly means someone has been meddling where they
shouldn't
//but we should protect them from harm anyways
kDebug() << "@!@!@!@!@!@@@@rejecting containment!!!";
cont->context()->setCurrentActivityId(QString());
return;
}
protecting against deletion behind Activity's back is fine (so i think your
commit should be backported), but this particular problem stems from
BackgroundDialog in libplasmagenericshell and Activity in plasma-desktop. they
aren't really welld designed to work together. there are various possible ways
to improve the situation, such as giving BackgroundDialog a virtual method
that does the actual swapContainment call and which plasma-desktop could re-
implemented internally to do the Activity coordination.
now that activities are in basically there, we can start sorting out these
interface issues in 4.6. the BackgroundDialog class needs work anyways.
for 4.5, though, i'd recommend just backporting your commit.
--
Aaron J. Seigo
humru othro a kohnu se
GPG Fingerprint: 8B8B 2209 0C6F 7C47 B1EA EE75 D6B7 2EB1 A7F1 DB43
KDE core developer sponsored by Qt Development Frameworks
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: This is a digitally signed message part.
Url : http://mail.kde.org/pipermail/plasma-devel/attachments/20100629/3e59fc47/attachment.sig
More information about the Plasma-devel
mailing list