diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/Makefile.am | 8 | ||||
-rw-r--r-- | src/display.c | 11 | ||||
-rw-r--r-- | src/stack.c | 3 | ||||
-rw-r--r-- | src/window.c | 8 | ||||
-rw-r--r-- | src/window.h | 1 |
5 files changed, 22 insertions, 9 deletions
diff --git a/src/Makefile.am b/src/Makefile.am index 2019534c..25d93073 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -1,11 +1,5 @@ -if HAVE_SM -SM_SUBDIRS=msm -else -SM_SUBDIRS= -endif - -SUBDIRS=wm-tester $(SM_SUBDIRS) +SUBDIRS=wm-tester INCLUDES=@METACITY_CFLAGS@ -DMETACITY_LIBEXECDIR=\"$(libexecdir)\" -DHOST_ALIAS=\"@HOST_ALIAS@\" diff --git a/src/display.c b/src/display.c index 9c573138..24ea36ad 100644 --- a/src/display.c +++ b/src/display.c @@ -741,9 +741,18 @@ event_callback (XEvent *event, case EnterNotify: /* do this even if window->has_focus to avoid races */ if (window && event->xany.serial != display->last_ignored_unmap_serial) - meta_window_focus (window, event->xcrossing.time); + { + meta_window_focus (window, event->xcrossing.time); + if (window->type == META_WINDOW_DOCK) + meta_window_raise (window); + } break; case LeaveNotify: + if (window) + { + if (window->type == META_WINDOW_DOCK) + meta_window_lower (window); + } break; case FocusIn: case FocusOut: diff --git a/src/stack.c b/src/stack.c index d030cf27..65af5e2f 100644 --- a/src/stack.c +++ b/src/stack.c @@ -259,7 +259,8 @@ compute_layer (MetaWindow *window) break; case META_WINDOW_DOCK: - window->layer = META_LAYER_DOCK; + /* still experimenting here */ + window->layer = META_LAYER_NORMAL; break; case META_WINDOW_FULLSCREEN: diff --git a/src/window.c b/src/window.c index 0e3e8212..c253526b 100644 --- a/src/window.c +++ b/src/window.c @@ -2040,6 +2040,14 @@ meta_window_raise (MetaWindow *window) } void +meta_window_lower (MetaWindow *window) +{ + meta_verbose ("Lowering window %s\n", window->desc); + + meta_stack_lower (window->screen->stack, window); +} + +void meta_window_send_icccm_message (MetaWindow *window, Atom atom, Time timestamp) diff --git a/src/window.h b/src/window.h index 9a23a4f1..8abcc076 100644 --- a/src/window.h +++ b/src/window.h @@ -299,6 +299,7 @@ void meta_window_delete (MetaWindow *window, void meta_window_focus (MetaWindow *window, Time timestamp); void meta_window_raise (MetaWindow *window); +void meta_window_lower (MetaWindow *window); /* Sends a client message */ |