From c3a382cac902a7260fd6d87647546e8f341a0261 Mon Sep 17 00:00:00 2001 From: Matthias Ettrich Date: Tue, 11 Jul 2000 14:38:17 +0000 Subject: [PATCH] improved stays-on-top hint handling svn path=/trunk/kdebase/kwin/; revision=56111 --- client.cpp | 4 ++-- workspace.cpp | 9 ++++++--- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/client.cpp b/client.cpp index 45ceec8273..ed59362d9b 100644 --- a/client.cpp +++ b/client.cpp @@ -450,7 +450,7 @@ Client::Client( Workspace *ws, WId w, QWidget *parent, const char *name, WFlags // window wants to stay on top? - stays_on_top = info->state() & NET::StaysOnTop; + stays_on_top = ( info->state() & NET::StaysOnTop) != 0; @@ -1879,7 +1879,7 @@ void Client::takeFocus() { if ( isMenu() ) return; // menus don't take focus - + if ( input ) XSetInputFocus( qt_xdisplay(), win, RevertToPointerRoot, kwin_time ); if ( Ptakefocus ) diff --git a/workspace.cpp b/workspace.cpp index b82b9daa86..4f776fb4f7 100644 --- a/workspace.cpp +++ b/workspace.cpp @@ -258,10 +258,9 @@ Workspace::Workspace( bool restore ) grabKey(XK_Tab, ControlMask); grabKey(XK_Tab, ControlMask | ShiftMask); createKeybindings(); - - init(); - tab_box = new TabBox( this ); + + init(); } void Workspace::init() @@ -349,6 +348,10 @@ void Workspace::init() } updateClientArea(); + + // initialize stacking + if ( stacking_order.last() ) + raiseClient( stacking_order.last() ); } Workspace::~Workspace()