all repos — tint2 @ f4af2a352a62e75a48e204b461f4e4e1cb4e05f5

fork of the tint2 desktop panel for my custom setup - only minimized windows across all desktops for the taskbar

Fix issue 465: broken WM_HINTS

git-svn-id: http://tint2.googlecode.com/svn/trunk@688 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
o9000 o9000
commit

f4af2a352a62e75a48e204b461f4e4e1cb4e05f5

parent

7b698e1fe153a72ea42e604fcabc548330a3cb10

1 files changed, 6 insertions(+), 4 deletions(-)

jump to
M src/panel.csrc/panel.c

@@ -522,12 +522,14 @@ state[3] = panel_layer == BOTTOM_LAYER ? server.atom._NET_WM_STATE_BELOW : server.atom._NET_WM_STATE_ABOVE;

int nb_atoms = panel_layer == NORMAL_LAYER ? 3 : 4; XChangeProperty (server.dsp, p->main_win, server.atom._NET_WM_STATE, XA_ATOM, 32, PropModeReplace, (unsigned char *) state, nb_atoms); - // Unfocusable XWMHints wmhints; - wmhints.icon_window = wmhints.window_group = p->main_win; - wmhints.flags = StateHint | IconWindowHint; + memset(&wmhints, 0, sizeof(wmhints)); + wmhints.flags = StateHint | IconWindowHint | InputHint; + // Necessary for placing the panel into the dock on Openbox and Fluxbox. + // See https://code.google.com/p/tint2/issues/detail?id=465 wmhints.initial_state = WithdrawnState; - wmhints.flags = InputHint; + wmhints.icon_window = wmhints.window_group = p->main_win; + // We do not need keyboard input focus. wmhints.input = False; XSetWMHints(server.dsp, p->main_win, &wmhints);