[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-bugs-dist
Subject: [plasma] [Bug 314994] invalid taskbar icon for SDL applications
From: Sam Protsenko <joe.skb7 () gmail ! com>
Date: 2013-06-18 23:26:24
Message-ID: bug-314994-17878-hzvi3Ho96B () http ! bugs ! kde ! org/
[Download RAW message or body]
https://bugs.kde.org/show_bug.cgi?id=314994
--- Comment #8 from Sam Protsenko <joe.skb7@gmail.com> ---
> Can you ensure the pixmap on the server is not the "X11" default but some "real" one?
I've checked next applications with your tool:
- scummvm
- wesnoth
- instead
And for all of them I see correct icon and mask pictures (not X11 default
icon).
> 64bit architecture? (the id is only 32bit - could be some wrong alignment?)
I've dig it for you. See:
1. In Xlib sources:
in src/Xatomtype.h file:
in struct xPropWMHints we see such a line:
RESOURCEID iconPixmap;
where RECOURCEID is defined as unsigned long
2. In X11-utils sources, in xprop.c file:
- bitmap id (to use for icon) -- we see it here:
#define WM_HINTS_DFORMAT ":\n"\
"?m2(\t\tbitmap id # to use for icon: $3\n)"\
- in windowPropTable[] we see next format for WM_HINTS_DFORMAT:
{"WM_HINTS", XA_WM_HINTS, "32mbcxxiixx", WM_HINTS_DFORMAT },
- so this is 3rd param ($3), and have 'x' format character
- from "man xprop" we see that
x The field is a hex number (like 'c' but displayed in hex
c The field is an unsigned number, a cardinal.
- but what is cardinal? let's see in xprop.c again:
in Format_Thunk() function:
case 'x': return Format_Hex(value);
Format_Hex() function defined as follows:
static const char *Format_Hex (long wrd)
{
snprintf(_formatting_buffer2, sizeof(_formatting_buffer2), "0x%lx", wrd);
return _formatting_buffer2;
}
- so format is "0x%lx", and variable is "long" (for bitmap id)
Conclusion: "bitmap id" is really 64-bit, and displays correctly via "xprop",
the only thing to understand is that this "bitmap id" little enough to be
displayed similarly to 32-bit value.
--
You are receiving this mail because:
You are watching all bug changes.
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic