Bug 122359

Summary: wish: raise panel without having to set an area explicitly, even if it is set to allow other apps to cover it
Product: [Unmaintained] kicker Reporter: S. Burmeister <sven.burmeister>
Component: generalAssignee: Aaron J. Seigo <aseigo>
Status: RESOLVED FIXED    
Severity: wishlist    
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: openSUSE   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description S. Burmeister 2006-02-20 19:12:07 UTC
Version:            (using KDE KDE 3.5.1)
Installed from:    SuSE RPMs
OS:                Linux

If one sets the panel to hide after x seconds, it is automatically set to be raised, if the mouse touches the edge of the screen the panel is placed at.

If one chooses to let other applications cover the panel, which is very similar to hiding it, the behaviour described above is not enabled.

As a consequence one has to enable "Raise panel..." which is then bound to a certain edge or corner and does not change automatically when the panel is moved to another place on the desktop.

Expected behaviour would be to raise the panel, if it was set to let other apps cover it, when the mouse touches the edge of the desktop it is placed at.
Comment 1 Aaron J. Seigo 2006-02-20 22:00:55 UTC
SVN commit 511761 by aseigo:

make "allow panels hidden by windows" and autohide really work the same,
e.g. auto-enable the screen edge where the panel resides as an unhide
trigger zone. makes sense now that all the other hide settings have been
harmonized between them.
BUG:122359


 M  +5 -1      container_extension.cpp  


--- branches/KDE/3.5/kdebase/kicker/kicker/core/container_extension.cpp #511760:511761
@@ -685,6 +685,10 @@
             autoHide(false);
             maybeStartAutoHideTimer();
         }
+        else if (m_hideMode == BackgroundHide)
+        {
+            KWin::raiseWindow(winId());
+        }
     }
 }
 
@@ -1108,7 +1112,7 @@
 
 void ExtensionContainer::maybeStartAutoHideTimer()
 {
-    if (m_hideMode == AutomaticHide &&
+    if (m_hideMode != ManualHide &&
         !_autoHidden &&
         !_userHidden)
     {