xlib

Confusing _NET_SUPPORTING_WM_CHECK

Hi, I am trying to make my window manager conform to the ICCCM specifications. I fully understand the reason for the _NET_SUPPORTING_WM_CHECK atom - this ensures that no invalid information stays whenever the window manager isn't running anymore. What I don't understand is why are no other atoms like _NET_NUMBER_OF_DESKTOPS expected on...

16 bit limit on XDrawString arguments

From the XDrawString man page it seems that it aceepts signed 32 bit x and y coordinates int XDrawString(Display *display, Drawable d, GC gc, int x, int y, char *string, int length); Note how both x and y are int ( ie: 32 bit signed Integer on gcc/linux2.6-i386 at least ) The problem is when I pass y = 32767 ( 2^15 - 1) the ...

xdrawstring not working

Hi, I am using xdrawstring on solaris 10 as well as sunos 2.6. I am drawing everything to pixmap and then outputting the final pixmap. The method works on older version but on newer version it doesn't seem to work showing nothing as text. Best regards, RUI ...

How do determine if a polygon is complex/convex/nonconvex?

From the man page for XFillPolygon · If shape is Complex, the path may self-intersect. Note that con‐ tiguous coincident points in the path are not treated as self- intersection. · If shape is Convex, for every pair of points inside the polygon, the line segment connecting them does not i...

Filling a Polygon: Performance of Winding Rule vs Even Odd Rule

For a complex polygon (ie: self intersecting) the choice between the Winding or the Even-Odd filling rules makes a difference in the way the polygon is filled. But for non intersecting polygons is there any performance difference between the Winding or the Even Odd filling rules. I understand it would be implentation specific but which ...

XCreateWindow gives a window ID that clashes with already existing window

I have created a program that creates a window using XCreateWindow. This works perfectly on my system and many others but on many, it is causing a few weird problems. e.g. the ID that I got from it clashes with the id of the terminal from which the program is launched. In one such case, gnome-terminal also has the window ID of 0x2400001 ...

XFillPolygon: Transpent fill with out using a pixmap?

Because of a driver problems using XFillPolygon with StippleFill and a pixmap is extremly slow. The driver providers are also extremly slow in providing a fix so I need a workaround. Is there a way to fill a polygon with a transparent color using XFillPolygon with out using a stiple fill and a pix map? Thanks ...

Anyone still program using xlib directly

I am surprised at the lack of response to all the xlib related question I've had on SO, is this because no one uses xlib directly anymore or is this the wrong place to ask these types of questions? Even if no one uses xlib directly, there must still be people the remember the bad old days and help with these questions, but it doesn't loo...

Destroying an XmText is crashing my application; why?

Our application is crashing while destroying an XmText box. It also crashes randomly when I press any key. Not sure why, but may be due to some uninitialized keycodes. Here is the gdb output: #0 0x403e38b2 in _XtOnGrabList () from /usr/X11R6/lib/libXt.so.6 (gdb) bt #0 0x403e38b2 in _XtOnGrabList () from /usr/X11R6/lib/libXt.so.6 #1 ...

Handle "new top level window" events in Xlib/Xt

So I'm in a situation where I need to know when a top level window gets created. I'm working at the Xlib/Xt level and on a Window Manager that doesn't support the EWMH specification. My idea is to hook into the root window's SubstructureNotify events. But things are not as simple as just that. The problem is that not every CreateNotify...

XDeviceInfo.use values that aren't in the XInputExtension spec

The XInput specification defines three use values for the XDeviceInfo structure. They are: IsXKeyboard IsXPointer IsXExtensionDevice These roughly equate to (if I'm reading the XInput spec correctly): Device is being used for core keyboard events Device is being used for core pointer events Device is available as an extension devic...

What is wrong with my X11 code?

I am attempting to get the X Window at a certain location on screen. When I asked people for a function to do this, they said you would just call XQueryTree recursively. This is the code snippet which I think is somehow wrong. When I debug it, it seems to work perfectly. The only problem is that the output it gives seems a little str...

Failed to free a colormap entry in Xlib with XFreeColors()

I allocate a color entry with the next code, then I use it to draw correctly: char *color_name = "red"; XColor color, exact; XAllocNamedColor(display, colormap, color_name, &color, &exact); Then, when I don't need anymore the color entry, I try to free it: XFreeColors(display, colormap, &color.pixel, 1, 0); This call generates the...

Python Xlib catch/send mouseclick

Hello, At the moment I'm trying to use Python to detect when the left mouse button is being held and then start to rapidly send this event instead of only once. What I basically want to do is that when the left mouse button is held it clicks and clicks again until you let it go. But I'm a bit puzzled with the whole Xlib, I think it's ver...

How to identify top-level X11 windows using xlib?

I'm trying to get a list of all top level desktop windows in an X11 session. Basically, I want to get a list of all windows that are shown in the window managers application-switching UI (commonly opened when the user presses ALT+TAB). I've never done any X11 programming before, but so far I've managed to enumerate through the entire wi...

How to resize a pixmap with XLib?

I'm using a pixmap as a window's backup in order to restore it under expose events. When the window is resized, must I resize the backup pixmap? If so, what is the best way? Create a new pixmap with the new size? ...

Image draw issue on Linux using Xlib

I am developing an application, in which I am receiving images from my window host.. the client side is in Linux using C++.. I am sending JPEG format from server side.. the problem I am facing is that when I receive the image on client, I use "XCreateImage" function to create the "XImage" and when I write this image to a file, it appears...

Python: Xlib -- How can I raise(bring to top) windows?

I've tried using: win.configure(stack_mode=X.TopIf) win.set_input_focus(X.RevertToParent, X.CurrentTime) However even without any focus loss prevention on my window manager this does not work, does anyone know of another way to do this? Xlib or not. ...

XLookupString returning a UTF-8 code (Latin-1 to UTF-8)

Hello. I'm trying to use the function XLookupString. According to the documentation, it is supposed to return a Latin-1 code. How could I convert it or what should I use instead this function so I get a UTF-8 code? Thanks. ...

KeyRelease event lost in Xlib

This works perfectly while not open a client. When open a client, I don't receive the KeyRelease event, any idea? is possible that X is sending first the event to the client? const XEvent ev; KeySym keysym; do { keysym = XKeycodeToKeysym(dpy, (KeyCode)ev.xkey.keycode, 0); if ((keysym == XK_Tab } ...