[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-core-devel
Subject:    Re: Kicker patch
From:       Henrik Johnson <hpj () globecom ! net>
Date:       2001-05-10 10:41:17
[Download RAW message or body]

Sorry, the patchfile seems corrupt. Hopefully this one will work better.

/Henrik Johnson
GlobeCom AB

>>>>>>>>>>>>>>>>>> Original Message <<<<<<<<<<<<<<<<<<

On 5/10/01, 10:02:48 AM, Henrik Johnson <hpj@globecom.net> wrote regarding 
Kicker patch:


> I've tried to submit this patch again and got no response, so I'm giving
> it a new try.

> The patch will add an option to popup the kicker briefly when switching
> desktops if the panel is autohidden. This is usefull to get a brief
> glimpse at which desktop you are at now.

> /Henrik Johnson
> GlobeCom AB
["kicker-popup2.patch" (kicker-popup2.patch)]

Index: kicker/core/panel.cpp
===================================================================
RCS file: /home/kde/kdebase/kicker/core/panel.cpp,v
retrieving revision 1.59
diff -U5 -r1.59 panel.cpp
--- kicker/core/panel.cpp	2001/04/20 11:12:02	1.59
+++ kicker/core/panel.cpp	2001/05/10 10:00:22
@@ -102,11 +102,12 @@
 
     // instantiate plugin manager and kwin module
     PGlobal::pluginmgr = new KickerPluginManager();
     PGlobal::kwin_module = new KWinModule(this );
     connect( PGlobal::kwin_module, SIGNAL( strutChanged() ), this, SLOT( \
                strutChanged() ) );
-
+    connect( PGlobal::kwin_module, SIGNAL( currentDesktopChanged(int) ),
+	     this, SLOT( currentDesktopChanged(int) ) );
     // let PGlobal know we are there
     PGlobal::panel = this;
 
     // panel global tooltip group
     PGlobal::tooltipgroup = new QToolTipGroup( this );
@@ -178,10 +179,11 @@
     config->reparseConfiguration();
     emit configurationChanged();
     config->setGroup("General");
 
     _autoHide = config->readBoolEntry("AutoHidePanel", false);
+    _autoHideSwitch =3D config->readBoolEntry("AutoHideSwitch", false);
     _hideAnim = config->readBoolEntry("HideAnimation", true);
     _autoHideAnim = config->readBoolEntry("AutoHideAnimation", true);
     _autoHideDelay = config->readNumEntry("AutoHideDelay", 3);
     _hideAnimSpeed = config->readNumEntry("HideAnimationSpeed", 50);
     _autoHideAnimSpeed = config->readNumEntry("AutoHideAnimationSpeed", 5);
@@ -259,10 +261,18 @@
     // auto hide - Lotzi B.
     // ... or a user hide - Matthias E.
     if (!_autoHidden && !_userHidden ) {
 	if ( initialGeometry( _pos ) != geometry() )
 	    resetLayout();
+    }
+}
+
+void Panel::currentDesktopChanged(int)
+{
+    if (_autoHideSwitch) {
+        autoHide(false);
+        _autohideTimer->start(250, true);
     }
 }
 
 void Panel::resetLayout()
 {
Index: kicker/core/panel.h
===================================================================
RCS file: /home/kde/kdebase/kicker/core/panel.h,v
retrieving revision 1.18
diff -U5 -r1.18 panel.h
--- kicker/core/panel.h	2001/04/20 10:17:31	1.18
+++ kicker/core/panel.h	2001/05/10 10:00:22
@@ -110,10 +110,11 @@
     void autoHideTimeout();
     void slotRestart();
     void strutChanged();
     void showScrollButtons(bool);
     void containerSizeHintChanged();
+    void currentDesktopChanged(int);
 
 private:
 
     void animatedHide(bool left);
 
@@ -122,10 +123,11 @@
     bool _showLeftHB;
     bool _showRightHB;
     int _HBwidth;
     int _panelsize;
     bool _autoHide;
+    bool _autoHideSwitch;
     bool _autoHidden;
     bool _userHidden;
     bool _hideAnim, _autoHideAnim;
     int _autoHideDelay;
     int _hideAnimSpeed, _autoHideAnimSpeed;
Index: kcontrol/kicker/generaltab.ui
===================================================================
RCS file: /home/kde/kdebase/kcontrol/kicker/generaltab.ui,v
retrieving revision 1.7
diff -U5 -r1.7 generaltab.ui
--- kcontrol/kicker/generaltab.ui	2001/04/29 18:11:27	1.7
+++ kcontrol/kicker/generaltab.ui	2001/05/10 10:00:23
@@ -379,10 +379,21 @@
                         <name>text</name>
                         <string>Enable automatic hide</string>
                     </property>
                 </widget>
                 <widget>
+                    <class>QCheckBox</class>
+                    <property stdset="1">
+                        <name>name</name>
+                        <cstring>m_autoHideSwitch</cstring>
+                    </property>
+                    <property stdset="1">
+                        <name>text</name>
+                        <string>Show panel when switching desktop</string>
+                    </property>
+                </widget>
+                <widget>
                     <class>QLayoutWidget</class>
                     <property stdset="1">
                         <name>name</name>
                         <cstring>Layout30</cstring>
                     </property>
@@ -478,10 +489,16 @@
             </property>
         </spacer>
     </vbox>
 </widget>
 <connections>
+     <connection>
+         <sender>m_autoHide</sender>
+         <signal>toggled(bool)</signal>
+        <receiver>m_autoHideSwitch</receiver>
+        <slot>setEnabled(bool)</slot>
+    </connection>
     <connection>
         <sender>m_autoHide</sender>
         <signal>toggled(bool)</signal>
         <receiver>m_delaySlider</receiver>
         <slot>setEnabled(bool)</slot>
@@ -520,9 +537,10 @@
 <tabstops>
     <tabstop>m_bottomButton</tabstop>
     <tabstop>m_normal</tabstop>
     <tabstop>m_large</tabstop>
     <tabstop>m_autoHide</tabstop>
+    <tabstop>m_autoHideSwitch</tabstop>
     <tabstop>m_delaySlider</tabstop>
     <tabstop>m_delaySpinBox</tabstop>
 </tabstops>
 </UI>
Index: kcontrol/kicker/generaltab_impl.cpp
===================================================================
RCS file: /home/kde/kdebase/kcontrol/kicker/generaltab_impl.cpp,v
retrieving revision 1.11
diff -U5 -r1.11 generaltab_impl.cpp
--- kcontrol/kicker/generaltab_impl.cpp	2001/04/29 18:11:27	1.11
+++ kcontrol/kicker/generaltab_impl.cpp	2001/05/10 10:00:23
@@ -38,10 +38,11 @@
 {
     // connections
     connect(m_locationGroup, SIGNAL(clicked(int)), SIGNAL(changed()));
     connect(m_sizeGroup, SIGNAL(clicked(int)), SIGNAL(changed()));
     connect(m_autoHide, SIGNAL(clicked()), SIGNAL(changed()));
+    connect(m_autoHideSwitch, SIGNAL(clicked()), SIGNAL(changed()));
     connect(m_delaySlider, SIGNAL(valueChanged(int)), SIGNAL(changed()));
     connect(m_delaySpinBox, SIGNAL(valueChanged(int)), SIGNAL(changed()));
     connect(m_percentSlider, SIGNAL(valueChanged(int)), SIGNAL(changed()));
     connect(m_percentSpinBox, SIGNAL(valueChanged(int)), SIGNAL(changed()));
     connect(m_expandCheckBox, SIGNAL(clicked()), SIGNAL(changed()));
@@ -60,10 +61,14 @@
                                      "after some time and reappear when you move the \
                mouse to the "
                                      "screen edge the panel is attached to. "
                                      "This is particularly useful for small screen \
resolutions, "  "for example, on laptops.") );
 
+    QWhatsThis::add(m_autoHideSwitch, i18n("If this option is enabled, the panel \
will automatically show " +					   "itself for a brief period of time when the \
desktop is switched " +					   "so you can see what desktop you are on.") );
+
     QString delaystr = i18n("Here you can change the delay after which the panel \
will disappear"  " if not used.");
 
     QWhatsThis::add(m_delaySlider, delaystr);
     QWhatsThis::add(m_delaySpinBox, delaystr);
@@ -84,13 +89,15 @@
 
     m_sizeGroup->setButton(c->readNumEntry("Size", 2));
     m_locationGroup->setButton(c->readNumEntry("Position", 3));
 
     bool ah = c->readBoolEntry("AutoHidePanel", false);
+    bool ahs = c->readBoolEntry("AutoHideSwitch", false);
     int delay = c->readNumEntry("AutoHideDelay", 3);
 
     m_autoHide->setChecked(ah);
+    m_autoHideSwitch->setChecked(ahs);
     m_delaySlider->setValue(delay);
     m_delaySpinBox->setValue(delay);
     m_delaySlider->setEnabled(ah);
     m_delaySpinBox->setEnabled(ah);
 
@@ -115,10 +122,11 @@
     c->setGroup("General");
 
     c->writeEntry("Size", m_sizeGroup->id(m_sizeGroup->selected()));
     c->writeEntry("Position", m_locationGroup->id(m_locationGroup->selected()));
     c->writeEntry("AutoHidePanel", m_autoHide->isChecked());
+    c->writeEntry("AutoHideSwitch", m_autoHideSwitch->isChecked());
     c->writeEntry("AutoHideDelay", m_delaySlider->value());
     c->writeEntry( "SizePercentage", m_percentSlider->value() );
     c->writeEntry( "ExpandSize", m_expandCheckBox->isChecked() );
 
     c->sync();



[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic