SVN commit 424065 by howells: Fix various Kiosk things. Approved by aaron. * Don't allow right click anywear on kicker * Don't allow drag & drop if Kicker is immutable * Don't show the help menu if it's not allowed M +7 -4 core/panelextension.cpp M +1 -1 ui/k_mnu.cpp M +3 -0 ui/service_mnu.cpp --- trunk/KDE/kdebase/kicker/kicker/core/panelextension.cpp #424064:424065 @@ -163,7 +163,7 @@ if ( e->type() == QEvent::MouseButtonPress ) { QMouseEvent* me = (QMouseEvent*) e; - if ( me->button() == RightButton ) + if ( me->button() == RightButton && kapp->authorize("action/kicker_rmb")) { Kicker::the()->setInsertionPoint(me->globalPos()); opMenu()->exec(me->globalPos()); @@ -171,7 +171,7 @@ return true; } } - + else if ( e->type() == QEvent::Resize ) { emit updateLayout(); @@ -325,8 +325,11 @@ Kicker::the(), SLOT(toggleLock())); } - KHelpMenu* help = new KHelpMenu( this, KGlobal::instance()->aboutData(), false); - _opMnu->insertItem(SmallIconSet("help"), KStdGuiItem::help().text(), help->menu()); + if (kapp->authorize("action/help")) + { + KHelpMenu* help = new KHelpMenu( this, KGlobal::instance()->aboutData(), false); + _opMnu->insertItem(SmallIconSet("help"), KStdGuiItem::help().text(), help->menu()); + } _opMnu->adjustSize(); } --- trunk/KDE/kdebase/kicker/kicker/ui/k_mnu.cpp #424064:424065 @@ -297,7 +297,7 @@ insertSeparator(); } - if (DM().isSwitchable()) + if (DM().isSwitchable() && kapp->authorize("switch_user")) { sessionsMenu = new QPopupMenu( this ); --- trunk/KDE/kdebase/kicker/kicker/ui/service_mnu.cpp #424064:424065 @@ -746,6 +746,9 @@ void PanelServiceMenu::mouseMoveEvent(QMouseEvent * ev) { KPanelMenu::mouseMoveEvent(ev); + + if (Kicker::the()->isImmutable()) + return; if ( (ev->state() & LeftButton ) != LeftButton ) return;