GNU bug report logs - #49997
27.2; idle-time reset when switching desktop-page

Previous Next

Package: emacs;

Reported by: Peter Münster <pm <at> a16n.net>

Date: Wed, 11 Aug 2021 08:44:01 UTC

Severity: normal

Tags: confirmed, moreinfo

Found in version 27.2

Fixed in version 29.1

Done: martin rudalics <rudalics <at> gmx.at>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: martin rudalics <rudalics <at> gmx.at>
To: Lars Ingebrigtsen <larsi <at> gnus.org>, Eli Zaretskii <eliz <at> gnu.org>
Cc: pm <at> a16n.net, 49997 <at> debbugs.gnu.org
Subject: bug#49997: 27.2; idle-time reset when switching desktop-page
Date: Wed, 18 Aug 2021 10:02:33 +0200
[Message part 1 (text/plain, inline)]
>> The code you show is in keyboard.c, where we interpret the events
>> we've received.  To see whether we can distinguish between these
>> events and "real" move-frame events, we need to look in xterm.c, where
>> the events come in from the window-system.  Maybe they are different
>> in their raw form?
>
> Ah, I see.  Right, this is in handle_one_xevent, where we apparently
> synthesise the MOVE_FRAME_EVENT:
>
> 	      if (!FRAME_TOOLTIP_P (f)
> 		  && (old_left != f->left_pos || old_top != f->top_pos))
> 		{
> 		  inev.ie.kind = MOVE_FRAME_EVENT;
> 		  XSETFRAME (inev.ie.frame_or_window, f);
> 		}
> 	    }
>
> So it's purely based on whether the window manager told is that the
> position changed -- which I guess it sort of does?  When I move to a
> different virtual desktop, it shows me all the iconified frames, and
> that's probably where this comes from?
>
> This is in:
>
>      case ConfigureNotify:
>
> that case in itself is almost 200 lines long...
>
> I've added Martin to the CCs; perhaps he has some insights here.

I can offer the attached trivial patch.  Peter, can you try it?

martin
[move-frame.diff (text/x-patch, attachment)]

This bug report was last modified 3 years and 225 days ago.

Previous Next


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