diff options
author | Kensuke Matsuzaki <zakki@peppermint.jp> | 2011-07-23 17:03:03 +0100 |
---|---|---|
committer | Jon TURNEY <jon.turney@dronecode.org.uk> | 2011-11-09 18:20:26 +0000 |
commit | 46dc903e10ddea640ec920391f8ecf0906bf786f (patch) | |
tree | da90fe31705823e313ac890ee1dfefd3ef0ef401 | |
parent | 893250b0369d62a5baf8c01b8d767a4a9131a22a (diff) |
xwinwm-20040409
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | TODO | 8 | ||||
-rw-r--r-- | src/Screen.cc | 1 | ||||
-rw-r--r-- | src/Window.cc | 13 |
4 files changed, 21 insertions, 7 deletions
@@ -1,3 +1,9 @@ +2004-04-09 Kensuke Matsuzaki <zakki@peppermint.jp> + + * src/Window.cc: Fix restacking and moving window problem. + + * src/Screen.cc: Fix restacking window problem. + 2004-01-28 Kensuke Matsuzaki <zakki@peppermint.jp> * src/blackbox.cc.in: Fix error when debug build. @@ -5,13 +5,17 @@ * Clean up nls * Window position and gravity * ICCCM and EWMH compliance -* MS-IME to XIM/iiimf/uim bridge +* MS-IME to XIM/iiimf/uim bridge <- IME Proxy seems good.(http://sourceforge.jp/projects/imeproxy/) * Alpha blending with RENDER extention and Layered window <-- Cygwin/X side -* Large cursor with Xcursor +* Large cursor with Xcursor <- It's implemented as normal X Window so maybe hard. * Customizable menu * Port some feture to -multiwindow mode * Maximize and Restore window +-- KNOWN BUG +* Resizing and moving window is unstable. +* Sometimes window order changing never stop. + -- TODO for Blackbox - an X11 Window manager diff --git a/src/Screen.cc b/src/Screen.cc index 4827d2d..4902564 100644 --- a/src/Screen.cc +++ b/src/Screen.cc @@ -602,6 +602,7 @@ void BScreen::raiseWindows(Window *workspace_stack, unsigned int num) { while (k--) *(session_stack + i++) = *(workspace_stack + k); + XRaiseWindow(blackbox->getXDisplay(), session_stack[0]); XRestackWindows(blackbox->getXDisplay(), session_stack, i); delete [] session_stack; diff --git a/src/Window.cc b/src/Window.cc index 20e3fa1..5d4bcf4 100644 --- a/src/Window.cc +++ b/src/Window.cc @@ -170,6 +170,7 @@ BlackboxWindow::BlackboxWindow(Blackbox *b, Window w, BScreen *s) { // get size, aspect, minimum/maximum size and other hints set by the // client + /* if (! getBlackboxHints()) getMWMHints(); @@ -177,12 +178,13 @@ BlackboxWindow::BlackboxWindow(Blackbox *b, Window w, BScreen *s) { getWMHints(); getWMNormalHints(); getWMClass(); + */ window_in_taskbar = createToplevelWindow(); blackbox->saveWindowSearch(window_in_taskbar, this); XSelectInput(blackbox->getXDisplay(), window_in_taskbar, StructureNotifyMask); - /* + //FIXME: if (! getBlackboxHints()) getMWMHints(); @@ -191,7 +193,7 @@ BlackboxWindow::BlackboxWindow(Blackbox *b, Window w, BScreen *s) { getWMHints(); getWMNormalHints(); getWMClass(); - */ + /*XChangeProperty(blackbox->getXDisplay(), frame.window, blackbox->getWindowsWMClientWindow(), XA_INTEGER, 32, @@ -1287,6 +1289,7 @@ bool BlackboxWindow::setInputFocus(void) { NoEventMask, &ce); XFlush(blackbox->getXDisplay()); } + //SetForegroundWindow((HWND)getHWnd(client.window)); return ret; } @@ -2146,10 +2149,10 @@ void BlackboxWindow::configureRequestEvent(const XConfigureRequestEvent *cr) { } if (cr->value_mask & CWWidth) - req.setWidth(cr->width + frame.margin.left + frame.margin.right); + req.setWidth(cr->width/* + frame.margin.left + frame.margin.right*/); if (cr->value_mask & CWHeight) - req.setHeight(cr->height + frame.margin.top + frame.margin.bottom); + req.setHeight(cr->height/* + frame.margin.top + frame.margin.bottom*/); // if (!flags.maximized) //configure(req.x(), req.y(), req.width(), req.height()); @@ -2164,7 +2167,7 @@ void BlackboxWindow::configureRequestEvent(const XConfigureRequestEvent *cr) { cr->value_mask & (CWX|CWY|CWWidth|CWHeight), &wc); } if (cr->value_mask & CWStackMode) { -#if 1 +#if 0 XWindowChanges wc; wc.sibling = cr->above; wc.stack_mode = cr->detail; |