Bug 12119 - [IceWM] [dock] Unneeded xxkb icon shown over the taskbar
: [IceWM] [dock] Unneeded xxkb icon shown over the taskbar
: Sisyphus
(All bugs in Sisyphus/xxkb)
: unstable
: all Linux
: P2 minor
Assigned To:
  Show dependency tree
Reported: 2007-06-23 21:45 by
Modified: 2009-01-01 18:31 (History)

The patch that fixes this bug (1006 bytes, patch)
2007-06-23 21:48, Konstantin Uvarin (lodin)
no flags Details | Diff
Patch for xxkb-1.10-alt3 (1.07 KB, patch)
2007-10-23 14:14, Konstantin Uvarin (lodin)
no flags Details | Diff


You need to log in before you can comment on or make changes to this bug.

Description From 2007-06-23 21:45:49
When I start a docking-capable application (e.g. Opera, SIM, linuxdc++),
xxkb will attach it's flag icon to the dock (partly covering the clock in my 
xxkb and IceWM config) as well as to the app's window.

However, if the app is already started, only the main window is processed,
which is the right behaviour.

After several hours of debugging, I was able to locate the root of the
problem and to create a "fix".

When xxkbstarts, it calls the XQueryTree (3) function which returns a list
of all windows. The docklets never get into this list.

However, when processing a ReparentNotify event, xxkb does not know whether
the window is a docklet or a real app. 

My solution was to iterate the XQueryTree's return and only call AddWindow
if the window is there. Honestly, I find it a bit ugly, but I haven't found a 
better way.

The patch is attached.

Is there a more elegant solution?
------- Comment #1 From 2007-06-23 21:48:04 -------
Created an attachment (id=2032) [details]
The patch that fixes this bug

See also the project's BZ ticket:

I've seen no reaction there yet.
------- Comment #2 From 2007-06-29 17:31:47 -------
xxkb team has accepted the patch. 
------- Comment #3 From 2007-10-23 14:13:07 -------
Адаптировал патч к xxkb-1.10-alt3.

Описание данного бага (коротко):
Если xxkb настроен так, чтобы показывать флажок на каждом окне, и запущен 
IceWM, то при запуске приложения, которое отображает себя в доке (opera, sim, 
linuxdcpp etc) появляется паразитный флажок поверх часов IceWM, который 
никакого смысла не несет, только вид портит. Если приложение запущено до xxkb, 
эффекта не наблюдается. 

Описание патча: 
Перебираем все окна, и только если это реальное окно настоящего приложения 
вешаем на него флажок. 

Наверняка можно сделать намного лучше. 
------- Comment #4 From 2007-10-23 14:14:40 -------
Created an attachment (id=2233) [details]
Patch for xxkb-1.10-alt3
------- Comment #5 From 2007-10-28 20:54:51 -------
Константин, мож возьмётесь поддерживать xxkb?  У меня ещё #1712 наболело, хотя
сейчас ловится реже...
------- Comment #6 From 2007-11-07 09:33:08 -------
Ну, страшно конечно =) Но попробовать можно, надо ж с чего-то начинать. 
------- Comment #7 From 2008-06-13 12:59:26 -------
*** This bug has been confirmed by popular vote. ***
------- Comment #8 From 2009-01-01 18:31:10 -------
Applied in xxkb-1.11-alt1