Ticket #194 (closed usability: fixed)
GTK tooltips displayed with window title bar
| Reported by: | Luc_j_Bourhis@… | Owned by: | jeremyhu@… |
|---|---|---|---|
| Priority: | Nice to Have | Milestone: | 2.3.2 |
| Component: | xserver | Version: | dev (xorg-server-1.4-apple) |
| Keywords: | Cc: | luc_j_bourhis@…, jpe@…, sdeibel@… |
Description
Attachments
Change History
Changed 5 years ago by Luc_j_Bourhis@…
- Attachment tooltips.tiff added
comment:1 Changed 5 years ago by jeremyhu@…
- Status changed from new to closed
- Version set to 2.3.1 (xserver-1.4)
- Resolution set to invalid
An image or a filename does not indicate a problem to me. Please be descript.
comment:2 Changed 5 years ago by Luc_j_Bourhis@…
First, if this can help, those tooltips are the same which ticket #8 was concerned about. It's nice that this very annoying bug got squashed but I am afraid that it has been hammered a bit too heavily!
As for being descript, the pointer hovers over some word, the X11 program WingIDE displays some info as a tooltip. Such a tooltip should be displayed in a simple rectangle with a grey background and a hairline rim. Instead, with the new 2.3.2 rc1, it is displayed in a first-class window of its own with a title bar. The image illustrates that: the window title bar should not be there. Only what is the window content on that image should be drawn.
comment:3 Changed 5 years ago by jeremyhu@…
- Status changed from closed to reopened
- Resolution invalid deleted
Can you add a screenshot of the problem? The screenshot you added does not show this problem.
To be certain, you are using this on Leopard, correct?
comment:4 Changed 5 years ago by jeremyhu@…
can you please run 'xwininfo -all' and select that window.
comment:5 Changed 5 years ago by jeremyhu@…
I see override-redirect windows (menus and tooltips) being drawn correctly in xamacs, nedit, etc...
comment:6 Changed 5 years ago by jeremyhu@…
Do you have a binary package of this IDE that I can install, or do I need to install it from macports?
comment:8 Changed 5 years ago by Luc_j_Bourhis@…
Screenshot
There is obviously a misunderstanding about it. Do you see all that Python code syntactically-highlighted? That's the normal window on the top of which the tooltip appears. And the tooltip is that little window named wing.py. And the tooltip text is 'aspirin_1/scan…'
WingIDE
You can find binary installers here: http://www.wingware.com/downloads I am using the WingIDE Pro version 3.1.5 A side note: I had that problem with the tooltip that the debugger shows. So you need to get some Python code, put a breakpoint somewhere, by clicking in the leftmost column next to the editor window, and debug. When the debugger stops there, just hover over a variable in your Python script. Another side note: I have found out that the GUI tooltip, explaining what this or that button does I mean, do display fine.
xwininfo
Window id: 0x600001 "wing.py"
Root window id: 0x1fd (the root window) (has no name) Parent window id: 0x1fd (the root window) (has no name)
1 child: 0x600002 (has no name): () 1x1+-1+-1 +9+9
Absolute upper-left X: 10 Absolute upper-left Y: 10 Relative upper-left X: 10 Relative upper-left Y: 10 Width: 10 Height: 10 Depth: 24 Visual Class: TrueColor Border width: 0 Class: InputOutput Colormap: 0x21 (installed) Bit Gravity State: NorthWestGravity Window Gravity State: NorthWestGravity Backing Store State: NotUseful Save Under State: no Map State: IsUnMapped Override Redirect State: no Corners: +10+10 -1660+10 -1660-1008 +10-1008 -geometry 10x10+10+10
Bit gravity: NorthWestGravity Window gravity: NorthWestGravity Backing-store hint: NotUseful Backing-planes to be preserved: 0xffffffff Backing pixel: 0 Save-unders: No
Someone wants these events:
StructureNotify PropertyChange
Do not propagate these events: Override redirection?: No
No window manager hints defined
Normal window size hints:
Program supplied size: 10 by 10
No zoom window size hints defined
No window shape defined No border shape defined
comment:9 Changed 5 years ago by jeremyhu@…
All I see when I click on your "screenshot" is an image of a string "tooltips.tiff". I don't see any python code.
Please email me your screenshot if you're having trouble attaching it here.
It is clear from the xwininfo that this is not an override-redirect window... so quartz-wm is managing it and would place a frame on it if the app doesn't request no frame...
Can you verify that this worked with 2.3.1 and the same version of WingIDE?
comment:10 Changed 5 years ago by jeremyhu@…
- Version changed from 2.3.1 (xserver-1.4) to dev (xorg-server-1.4-apple)
comment:11 Changed 5 years ago by jeremyhu@…
- Status changed from reopened to closed
- Resolution set to invalid
This is a bug in WingIDE. It is setting the window type to _NET_WM_WINDOW_TYPE_NORMAL.
You can verify this with this application (compile it and pass the window id as an argument):
#include <stdio.h>
#include <stdlib.h>
#include <X11/Xlib.h>
Display *x_dpy;
int
x_get_property (Window id, Atom atom, long *dest,
unsigned int dest_size, unsigned int min_items)
{
Atom type;
int format;
unsigned int i;
unsigned long nitems;
unsigned char *data = 0;
int ret = 0;
do {
long long_length = 32;
unsigned long bytes_after;
while (1)
{
if (data != NULL)
XFree (data);
if (XGetWindowProperty (x_dpy, id, atom, 0, long_length, 0,
AnyPropertyType, &type, &format,
&nitems, &bytes_after, &data) != Success)
return 0;
if (type == None)
return 0;
if (bytes_after == 0)
break;
long_length += (bytes_after / sizeof(unsigned long)) + 1;
}
} while (0);
if (format == 32 && nitems >= min_items)
{
for (i = 0; i < ((nitems < dest_size) ? nitems : dest_size); i++)
dest[i] = ((unsigned long *) data)[i];
ret = i;
}
XFree (data);
return ret;
}
int main(int argc, char **argv) {
int id = atoi(argv[1]);
int n, i;
long atoms[16];
Atom net_wm_window_type;
x_dpy = XOpenDisplay(NULL);
net_wm_window_type = XInternAtom (x_dpy, "_NET_WM_WINDOW_TYPE", 0);
n = x_get_property(id, net_wm_window_type, atoms, 16, 0);
if(n == 0) {
printf("None\n");
} else {
for(i=0; i<n; i++) {
char *name = XGetAtomName(x_dpy, atoms[i]);
printf("%s\n", name);
XFree(name);
}
}
exit(0);
}
comment:13 Changed 5 years ago by jpe@…
The popup is a _NET_WM_WINDOW_TYPE_NORMAL window that's configured to have no decoration by setting the _XA_MOTIF_WM_HINTS window property to 0. I realize that it's up to the window manager to decide what to do here, but other window managers and older versions of Apple X11 did honor the request.
comment:14 Changed 5 years ago by jeremyhu@…
- Status changed from closed to reopened
- Resolution invalid deleted
The net_wm types override any motif hints in quartz-wm.
Can you *PLEASE* verify that this bug was not present in 2.3.1? Or can you tell me the last time this did work for you? I can't see any way that this bug would be new in 2.3.2_rc1. Further, it looks to me like this behavior should be seen in any version of quartz-wm that shipped with Leopard or Tiger.
What "older versions of Apple X11" honored this request?
comment:15 Changed 5 years ago by Luc_j_Bourhis@…
I have been using WingIDE on MacOS for years and I have never ever seen the reported problem until I installed 2.3.2 rc1. Just to rule out any strange fluke, I have wiped out /usr/X11 and X11.app an reinstalled the 2.3.1 package: the debugger tooltips are then displayed without a title bar. Just in case it matters, I run MacOS 10.5.5 on a MacPro first generation with a NVIDIA GeForce 7300 GT.
comment:17 Changed 4 years ago by jeremyhu@…
- Status changed from reopened to closed
- Resolution set to fixed
Ok, this will be fixed in 2.3.2_rc2.

Illustration of the problem