emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Removing the `window-id' frame parameter on non-Core Input platforms


From: Po Lu
Subject: Removing the `window-id' frame parameter on non-Core Input platforms
Date: Sat, 18 Dec 2021 13:29:48 +0800

The only platform where it is useful is X with Core Input, where third
party programs can use it to manipulate a frame's X Window.

This is safe on Core Input, but on XInput 2 I'd like the freedom to
change the underlying X window of a frame after it is created to work
around some difficult GTK related problems, which will make continuing
to support the `window-id' parameter unreasonable.  Touch event tracking
on XInput2 also requires that no non-Emacs code modify a window created
by Emacs to work correctly.

On non-X platforms, `window-id' is just a pointer which is even more
useless, so I'd like to make this code in frame.c conditional on
HAVE_X_WINDOWS && !HAVE_XINPUT2:

  w = (uintptr_t) FRAME_NATIVE_WINDOW (f);
  store_in_alist (alistptr, Qwindow_id,
                  make_formatted_string (buf, "%"PRIuMAX, w));

Does that look OK to you?


reply via email to

[Prev in Thread] Current Thread [Next in Thread]