Index: pagerapplet.cpp
===================================================================
--- kdebase.ori/kicker/applets/minipager/pagerapplet.cpp (revision 1287351)
+++ kdebase/kicker/applets/minipager/pagerapplet.cpp (working copy)
@@ -442,6 +442,10 @@
{
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 @@
{
newDesk = (desktops + m_curDesk - 2) % desktops + 1;
}
-
+
slotButtonSelected(newDesk);
+ }
}
void KMiniPager::drawButtons()
@@ -729,6 +734,7 @@
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 @@
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 @@
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;
Index: pagersettings.kcfg
===================================================================
--- kdebase.ori/kicker/applets/minipager/pagersettings.kcfg (revision 1287351)
+++ kdebase/kicker/applets/minipager/pagersettings.kcfg (working copy)
@@ -49,10 +49,15 @@
true
-
+
true
+
+
+
+ true
+
Index: pagerapplet.h
===================================================================
--- kdebase.ori/kicker/applets/minipager/pagerapplet.h (revision 1287351)
+++ kdebase/kicker/applets/minipager/pagerapplet.h (working copy)
@@ -64,15 +64,17 @@
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(); }