[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: KDE/kdelibs/plasma
From: Chani Armitage <chanika () gmail ! com>
Date: 2009-08-30 18:52:11
Message-ID: 1251658331.869634.24513.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 1017492 by chani:
for contextmenu events triggered by the mouse on the containment, fall
through to the mouse events. it's easier to handle that way
M +6 -3 containment.cpp
M +1 -1 private/containment_p.h
--- trunk/KDE/kdelibs/plasma/containment.cpp #1017491:1017492
@@ -578,7 +578,7 @@
void Containment::showContextMenu(const QPointF &containmentPos, const QPoint \
&screenPos) {
- d->showContextMenu(mapToScene(containmentPos), screenPos, false);
+ d->showContextMenu(mapToScene(containmentPos), screenPos, false, false);
}
void Containment::contextMenuEvent(QGraphicsSceneContextMenuEvent *event)
@@ -589,7 +589,8 @@
return;
}
- if (d->showContextMenu(event->scenePos(), event->screenPos(), true)) {
+ if (d->showContextMenu(event->scenePos(), event->screenPos(), true,
+ event->reason() == QGraphicsSceneContextMenuEvent::Mouse)) {
event->accept();
} else {
Applet::contextMenuEvent(event);
@@ -714,7 +715,7 @@
return applet;
}
-bool ContainmentPrivate::showContextMenu(const QPointF &point, const QPoint \
&screenPos, bool includeApplet) +bool ContainmentPrivate::showContextMenu(const \
QPointF &point, const QPoint &screenPos, bool includeApplet, bool isMouseEvent) {
Applet *applet = appletAt(point);
@@ -722,6 +723,8 @@
//kDebug() << "context menu event " << (QObject*)applet;
if (applet) {
appletActions(desktopMenu, applet, includeApplet);
+ } else if (isMouseEvent) {
+ return false; //fall through to plugin/wallpaper stuff
} else {
containmentActions(desktopMenu);
}
--- trunk/KDE/kdelibs/plasma/private/containment_p.h #1017491:1017492
@@ -83,7 +83,7 @@
void mimeTypeRetrieved(KIO::Job *job, const QString &mimetype);
void containmentActions(KMenu &desktopMenu);
void appletActions(KMenu &desktopMenu, Applet *applet, bool includeApplet);
- bool showContextMenu(const QPointF &point, const QPoint &screenPos, bool \
includeApplet); + bool showContextMenu(const QPointF &point, const QPoint \
&screenPos, bool includeApplet, bool isMouseEvent); void checkRemoveAction();
Applet *addApplet(const QString &name, const QVariantList &args = \
QVariantList(),
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic