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(); }