summaryrefslogtreecommitdiffstats
path: root/kicker
diff options
context:
space:
mode:
authorDarrell Anderson <humanreadable@yahoo.com>2012-03-31 17:16:39 -0500
committerSlávek Banko <slavek.banko@axis.cz>2012-08-26 16:41:33 +0200
commit2a8f09e03fff4636530b57c465d20baa608a0923 (patch)
tree82ab9a0e67ae5aa63c37f2933eadaee7af301bad /kicker
parentd3880646a06ae5839dd1bd0ef765c9305a608ffe (diff)
downloadtdebase-2a8f09e03fff4636530b57c465d20baa608a0923.tar.gz
tdebase-2a8f09e03fff4636530b57c465d20baa608a0923.zip
Add option to control pager applet cycling with the mouse wheel.
This resolves bug report 908. Thanks to Calvin Morrison for the patch! (cherry picked from commit 7527d160b979ee6a88c87b6e82f756965cf86501)
Diffstat (limited to 'kicker')
-rw-r--r--kicker/applets/minipager/pagerapplet.cpp14
-rw-r--r--kicker/applets/minipager/pagerapplet.h4
-rw-r--r--kicker/applets/minipager/pagersettings.kcfg7
3 files changed, 20 insertions, 5 deletions
diff --git a/kicker/applets/minipager/pagerapplet.cpp b/kicker/applets/minipager/pagerapplet.cpp
index cc47d17cb..a73dfb1ca 100644
--- a/kicker/applets/minipager/pagerapplet.cpp
+++ b/kicker/applets/minipager/pagerapplet.cpp
@@ -442,6 +442,10 @@ void KMiniPager::wheelEvent( TQWheelEvent* e )
{
int newDesk;
int desktops = KWin::numberOfDesktops();
+
+
+ if(cycleWindow()){
+
if (m_kwin->numberOfViewports(0).width() * m_kwin->numberOfViewports(0).height() > 1 )
desktops = m_kwin->numberOfViewports(0).width() * m_kwin->numberOfViewports(0).height();
if (e->delta() < 0)
@@ -452,8 +456,9 @@ void KMiniPager::wheelEvent( TQWheelEvent* e )
{
newDesk = (desktops + m_curDesk - 2) % desktops + 1;
}
-
+
slotButtonSelected(newDesk);
+ }
}
void KMiniPager::drawButtons()
@@ -729,6 +734,7 @@ void KMiniPager::aboutToShowContextMenu()
showMenu->insertItem(i18n("&Window Thumbnails"), WindowThumbnails);
showMenu->insertItem(i18n("&Window Icons"), WindowIcons);
+ showMenu->insertItem(i18n("&Cycle on Wheel"), Cycle);
showMenu->insertTitle(i18n("Text Label"));
showMenu->insertItem(i18n("Desktop N&umber"),
@@ -760,6 +766,7 @@ void KMiniPager::aboutToShowContextMenu()
m_contextMenu->setItemChecked(WindowThumbnails, m_settings->preview());
m_contextMenu->setItemChecked(WindowIcons, m_settings->icons());
+ m_contextMenu->setItemChecked(Cycle, m_settings->cycle());
m_contextMenu->setItemEnabled(WindowIcons, m_settings->preview());
m_contextMenu->setItemEnabled(RenameDesktop,
m_settings->labelType() ==
@@ -812,11 +819,12 @@ void KMiniPager::contextMenuActivated(int result)
m_settings->setPreview(!m_settings->preview());
TaskManager::the()->trackGeometry();
break;
-
+ case Cycle:
+ m_settings->setCycle(!m_settings->cycle());
+ break;
case WindowIcons:
m_settings->setIcons(!m_settings->icons());
break;
-
case PagerSettings::EnumBackgroundType::BgPlain + bgOffset:
m_settings->setBackgroundType(PagerSettings::EnumBackgroundType::BgPlain);
break;
diff --git a/kicker/applets/minipager/pagerapplet.h b/kicker/applets/minipager/pagerapplet.h
index e72f44588..b05477004 100644
--- a/kicker/applets/minipager/pagerapplet.h
+++ b/kicker/applets/minipager/pagerapplet.h
@@ -64,15 +64,17 @@ public:
void setActive( WId active ) { m_activeWindow = active; }
WId activeWindow() { return m_activeWindow; }
- enum ConfigOptions { LaunchExtPager = 96, WindowThumbnails,
+ enum ConfigOptions { LaunchExtPager = 96, WindowThumbnails, Cycle,
WindowIcons, ConfigureDesktops, RenameDesktop };
int labelType() const { return m_settings->labelType(); }
int bgType() const { return m_settings->backgroundType(); }
bool desktopPreview() const { return m_settings->preview(); }
+ bool cycleWindow() const { return m_settings->cycle(); }
bool windowIcons() const { return m_settings->icons(); }
+
Orientation orientation() const { return KPanelApplet::orientation(); }
Direction popupDirection() { return KPanelApplet::popupDirection(); }
diff --git a/kicker/applets/minipager/pagersettings.kcfg b/kicker/applets/minipager/pagersettings.kcfg
index 8a26bdc86..3a821f20a 100644
--- a/kicker/applets/minipager/pagersettings.kcfg
+++ b/kicker/applets/minipager/pagersettings.kcfg
@@ -49,10 +49,15 @@
<label>Show desktop preview?</label>
<default>true</default>
</entry>
-
+
<entry name="Icons" type="Bool">
<label>Show window icons in previews?</label>
<default>true</default>
</entry>
+
+ <entry name="Cycle" type="Bool">
+ <label>Cycle through desktops with wheel?</label>
+ <default>true</default>
+ </entry>
</group>
</kcfg>