Don't check non-X frames for z order (Bug#31373)
* src/xfns.c (x_frame_list_z_order): Only use frames with `output_method' set to `output_x_window'.
This commit is contained in:
parent
7dc028e250
commit
1d9e66aea1
1 changed files with 10 additions and 6 deletions
16
src/xfns.c
16
src/xfns.c
|
@ -5300,12 +5300,16 @@ x_frame_list_z_order (Display* dpy, Window window)
|
|||
Lisp_Object frame, tail;
|
||||
|
||||
FOR_EACH_FRAME (tail, frame)
|
||||
/* With a reparenting window manager the parent_desc field
|
||||
usually specifies the topmost windows of our frames.
|
||||
Otherwise FRAME_OUTER_WINDOW should do. */
|
||||
if (XFRAME (frame)->output_data.x->parent_desc == children[i]
|
||||
|| FRAME_OUTER_WINDOW (XFRAME (frame)) == children[i])
|
||||
frames = Fcons (frame, frames);
|
||||
{
|
||||
struct frame *cf = XFRAME (frame);
|
||||
/* With a reparenting window manager the parent_desc
|
||||
field usually specifies the topmost windows of our
|
||||
frames. Otherwise FRAME_OUTER_WINDOW should do. */
|
||||
if (FRAME_X_P (cf)
|
||||
&& (cf->output_data.x->parent_desc == children[i]
|
||||
|| FRAME_OUTER_WINDOW (cf) == children[i]))
|
||||
frames = Fcons (frame, frames);
|
||||
}
|
||||
}
|
||||
|
||||
if (children) XFree ((char *)children);
|
||||
|
|
Loading…
Add table
Reference in a new issue