GNU bug report logs - #57012
Activating versus raising frames

Previous Next

Package: emacs;

Reported by: Daniel Colascione <dancol <at> dancol.org>

Date: Sat, 6 Aug 2022 00:55:02 UTC

Severity: normal

Full log


View this message in rfc822 format

From: Daniel Colascione <dancol <at> dancol.org>
To: Po Lu <luangruo <at> yahoo.com>
Cc: 57012 <at> debbugs.gnu.org
Subject: bug#57012: Activating versus raising frames
Date: Sat, 06 Aug 2022 23:11:24 -0400
[Message part 1 (text/plain, inline)]

On August 6, 2022 23:03:04 Po Lu <luangruo <at> yahoo.com> wrote:

> Daniel Colascione <dancol <at> dancol.org> writes:
>
>> pgtk also runs on X, and the problem must be solved there in some
>> manner.
>
> It does not.  We do not support running the PGTK build on X (the
> selection code doesn't work on X, for example), and there is no way to
> "touch" the user time on that platform without relying on X11-specific
> code.  At present, it's not even possible to include gdk/gdkx.h there
> due to typedef conflicts with dispextern.h

I'm surprised to hear that considering that many other GTK applications 
manage selections adequately. If the intent of pgtk is to run only on 
Wayland, you should break the pgtk build at runtime if it's running under 
X11, and probably rename it too --- because "pure GTK" sounds like it 
should rely only on things GTK provides and that it should therefore run 
anywhere GTK does. If in fact it's just a Wayland window system 
implementation, call it that.

>
>
>> GTK has no magic facility for knowing that emacsclient
>> ran. Regardless, a terminal hook is not expensive, and I don't want to
>> add yet more window system typecases to the code. Terminal access
>> should be polymorphic. It's through terminal hooks that we make them
>> polymorphic. I'm not removing the terminal hook.
>
> After thinking a bit, I figure that a better way to solve the problem
> would be to document that window managers don't always respect
> x-focus-frame, and to add a force parameter which makes it query for the
> current server time and set it as the user time, thus making focus
> setting more reliable.


I don't agree. Telling Emacs that a user has interacted with a frame is not 
an X specific concept. And even in the context of X11, we should be 
resetting the user time generally, not just hacking something up for the 
special case of x-focus-frame, because 1) the general approach preserves 
timestamp monotonicity, and 2) the user did in fact interact with the frame.


>
> Thanks.

[Message part 2 (text/html, inline)]

This bug report was last modified 2 years and 242 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.