From my ~/.xxkbrc:
XXkb.mainwindow.type: normal
Still sometimes stalonetray swallows xxkb. This happens erratically.
Output of xprop:
WM_STATE(WM_STATE):
window state: Normal
icon window: 0x0
_WIN_AREA(CARDINAL) = 0, 0
_WIN_WORKSPACE(CARDINAL) = 6
_WIN_LAYER(CARDINAL) = 4
_WIN_STATE(CARDINAL) = 0
_NET_FRAME_EXTENTS(CARDINAL) = 0, 0, 38, 0
_KDE_NET_WM_FRAME_STRUT(CARDINAL) = 0, 0, 38, 0
_NET_WM_ALLOWED_ACTIONS(ATOM) = _NET_WM_ACTION_CHANGE_DESKTOP, _NET_WM_ACTION_CLOSE, _NET_WM_ACTION_FULLSCREEN, _NET_WM_ACTION_MAXIMIZE_HORZ, _NET_WM_ACTION_MAXIMIZE_VERT, _NET_WM_ACTION_MOVE, _NET_WM_ACTION_RESIZE, _NET_WM_ACTION_SHADE, _NET_WM_ACTION_STICK
_NET_WM_DESKTOP(CARDINAL) = 6
_NET_WM_ICON_VISIBLE_NAME(UTF8_STRING) = "XXkb"
_NET_WM_VISIBLE_NAME(UTF8_STRING) = "XXkb"
_XEMBED_INFO(_XEMBED_INFO) = 0x0, 0x1
_NET_WM_NAME(UTF8_STRING) = "XXkb"
WM_PROTOCOLS(ATOM): protocols WM_DELETE_WINDOW
WM_NORMAL_HINTS(WM_SIZE_HINTS):
program specified size: 48 by 48
WM_CLASS(STRING) = "XXkb", "XXkb"
WM_HINTS(WM_HINTS):
Client accepts input or input focus: False
window id # of group leader: 0xa00009
WM_COMMAND(STRING) = { "xxkb" }
WM_NAME(STRING) = "XXkb"
The problem may be: _XEMBED_INFO(_XEMBED_INFO) = 0x0, 0x1
Output of stalonetray --log-level info:
WM does not support KDE_NET_SYSTEM_TRAY_WINDOWS, will use legacy scheme
added icon XXkb (wid 0xc00009) as visible
----------- tray status -----------
active: yes
geometry: 96x96+0+0
XEMBED focus: 0xc00009
currently managed icons:
wid = 0xc00009
name = XXkb
visible = 1
position (grid) = 1x1+0+0
position (pixels) = 48x48+0+0
wnd_sz = 48x48
xembed = 1
embedded = 1
-----------------------------------
added icon volumeicon (wid 0x2e00004) as hidden
added icon cbatticon (wid 0x3000004) as hidden
showing icon 0x2e00004
----------- tray status -----------
active: yes
geometry: 96x96+12+50
XEMBED focus: 0xc00009
currently managed icons:
wid = 0x3000004
name = cbatticon
visible = 0
position (grid) = 0x0+0+0
position (pixels) = 0x0+0+0
wnd_sz = 0x0
xembed = 1
embedded = 0
wid = 0xc00009
name = XXkb
visible = 1
position (grid) = 1x1+0+0
position (pixels) = 48x48+0+0
wnd_sz = 48x48
xembed = 1
embedded = 1
wid = 0x2e00004
name = volumeicon
visible = 1
position (grid) = 1x1+1+0
position (pixels) = 48x48+48+0
wnd_sz = 48x48
xembed = 1
embedded = 1
-----------------------------------
showing icon 0x3000004
----------- tray status -----------
active: yes
geometry: 96x96+12+50
XEMBED focus: 0xc00009
currently managed icons:
wid = 0xc00009
name = XXkb
visible = 1
position (grid) = 1x1+0+0
position (pixels) = 48x48+0+0
wnd_sz = 48x48
xembed = 1
embedded = 1
wid = 0x2e00004
name = volumeicon
visible = 1
position (grid) = 1x1+1+0
position (pixels) = 48x48+48+0
wnd_sz = 48x48
xembed = 1
embedded = 1
wid = 0x3000004
name = cbatticon
visible = 1
position (grid) = 1x1+0+1
position (pixels) = 48x48+0+48
wnd_sz = 48x48
xembed = 1
embedded = 1
-----------------------------------
Can you please post stalonetray output with --log-level trace? I hope it would show why it decided that Xxkb windows is an KDE icon...
Says awaiting moderation, but I guess you can already see my post.
Stalonetray author here. I see that XXkb sends a messare requesting it to be embedded into a tray:
Apr 27 10:48:23 stalonetray tray_main(): ClientMessage(from 0xc00001?)
Apr 27 10:48:23 stalonetray client_message(): message "_NET_SYSTEM_TRAY_OPCODE"
Apr 27 10:48:23 stalonetray client_message(): this is the
_NET_SYSTEM_TRAY_OPCODE(0) message
Apr 27 10:48:23 stalonetray client_message(): dockin' requested by
window 0xe00009, serving in a moment
Apr 27 10:48:23 stalonetray add_icon(): starting embedding for icon
0xe00009, cmode=2
xwininfo: Window id: 0xe00009 "XXkb"
< ... snip ... >
Apr 27 10:48:23 stalonetray embedder_reset_size(): proposed icon size: 48x48
So, stalonetray just does what it's being asked to.
Thanks for finding that out, @Busa!
But why does it request docking.
See my attached configuration file, which generally works. In the man
page I also found
XXkb.mainwindow.in_tray, but - looking at thesource - that seems not supported anymore.