GNU bug report logs - #67753
28.2, 29.1: Making frame invisible always affects frame position parameters

Previous Next

Package: emacs;

Reported by: soliidne <at> gmail.com

Date: Sun, 10 Dec 2023 17:50:02 UTC

Severity: normal

Found in version 28.2

To reply to this bug, email your comments to 67753 AT debbugs.gnu.org.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#67753; Package emacs. (Sun, 10 Dec 2023 17:50:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to soliidne <at> gmail.com:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Sun, 10 Dec 2023 17:50:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: soliidne <at> gmail.com
To: bug-gnu-emacs <at> gnu.org
Subject: 28.2,
 29.1: Making frame invisible always affects frame position parameters
Date: Sun, 10 Dec 2023 19:45:49 +0200
[Message part 1 (text/plain, inline)]
Hi !

Always for all frames, position constantly affected by: left - 5 and top -
29.
It seems like a bug, but it could also be an oversight. Can someone comment
please ?

Thanks !

xfwm4 4.18.0
xorg-server 21.1.9
Emacs 28.2, 29.1
Archlinux

How to reproduce:
#################

$ emacs --fg-daemon -Q
...
Starting Emacs daemon.
$ emacsclient --eval "(make-frame-on-display \":0\")"
#<frame GNU Emacs at Elitebook 0x558cf8d7d120>
$ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
(185 . 130)
$ emacsclient --eval "(make-frame-invisible (nth 0 (frame-list)) t)"
nil
$ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
(180 . 101)

Moving frame to left-top corner
###############################

$ emacsclient --eval "(make-frame-visible (nth 0 (frame-list)))"
#<frame GNU Emacs at Elitebook 0x558cf8d7d120>
$ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
(0 . 0)
$ emacsclient --eval "(make-frame-invisible (nth 0 (frame-list)) t)"
nil
$ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
(-5 . -29)
$ emacsclient --eval "(make-frame-visible (nth 0 (frame-list)))"
#<frame GNU Emacs at Elitebook 0x558cf8d7d120>
$ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
(-5 . 0)
$ emacsclient --eval "(make-frame-invisible (nth 0 (frame-list)) t)"
nil
$ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
(-10 . -29)
$ emacsclient --eval "(make-frame-visible (nth 0 (frame-list)))"
#<frame GNU Emacs at Elitebook 0x558cf8d7d120>
$ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
(-10 . 0)
[Message part 2 (text/html, inline)]

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#67753; Package emacs. (Sat, 16 Dec 2023 12:09:02 GMT) Full text and rfc822 format available.

Message #8 received at 67753 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: soliidne <at> gmail.com, Po Lu <luangruo <at> yahoo.com>
Cc: 67753 <at> debbugs.gnu.org
Subject: Re: bug#67753: 28.2,
 29.1: Making frame invisible always affects frame position parameters
Date: Sat, 16 Dec 2023 14:07:41 +0200
> From: soliidne <at> gmail.com
> Date: Sun, 10 Dec 2023 19:45:49 +0200
> 
> Always for all frames, position constantly affected by: left - 5 and top - 29. 
> It seems like a bug, but it could also be an oversight. Can someone comment please ?
> 
> Thanks !
> 
> xfwm4 4.18.0
> xorg-server 21.1.9
> Emacs 28.2, 29.1
> Archlinux
> 
> How to reproduce:
> #################
> 
> $ emacs --fg-daemon -Q
> ...
> Starting Emacs daemon.
> $ emacsclient --eval "(make-frame-on-display \":0\")"
> #<frame GNU Emacs at Elitebook 0x558cf8d7d120>
> $ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
> (185 . 130)
> $ emacsclient --eval "(make-frame-invisible (nth 0 (frame-list)) t)"
> nil
> $ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
> (180 . 101)
> 
> Moving frame to left-top corner
> ###############################
> 
> $ emacsclient --eval "(make-frame-visible (nth 0 (frame-list)))"
> #<frame GNU Emacs at Elitebook 0x558cf8d7d120>
> $ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
> (0 . 0)
> $ emacsclient --eval "(make-frame-invisible (nth 0 (frame-list)) t)"
> nil
> $ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
> (-5 . -29)
> $ emacsclient --eval "(make-frame-visible (nth 0 (frame-list)))"
> #<frame GNU Emacs at Elitebook 0x558cf8d7d120>
> $ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
> (-5 . 0)
> $ emacsclient --eval "(make-frame-invisible (nth 0 (frame-list)) t)"
> nil
> $ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
> (-10 . -29)
> $ emacsclient --eval "(make-frame-visible (nth 0 (frame-list)))"
> #<frame GNU Emacs at Elitebook 0x558cf8d7d120>
> $ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
> (-10 . 0)

Po Lu, any comments?




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#67753; Package emacs. (Sat, 16 Dec 2023 12:19:02 GMT) Full text and rfc822 format available.

Message #11 received at 67753 <at> debbugs.gnu.org (full text, mbox):

From: Po Lu <luangruo <at> yahoo.com>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 67753 <at> debbugs.gnu.org, soliidne <at> gmail.com
Subject: Re: bug#67753: 28.2, 29.1: Making frame invisible always affects
 frame position parameters
Date: Sat, 16 Dec 2023 20:18:07 +0800
Eli Zaretskii <eliz <at> gnu.org> writes:

>> From: soliidne <at> gmail.com
>> Date: Sun, 10 Dec 2023 19:45:49 +0200
>> 
>> Always for all frames, position constantly affected by: left - 5 and top - 29. 
>> It seems like a bug, but it could also be an oversight. Can someone comment please ?
>> 
>> Thanks !
>> 
>> xfwm4 4.18.0
>> xorg-server 21.1.9
>> Emacs 28.2, 29.1
>> Archlinux
>> 
>> How to reproduce:
>> #################
>> 
>> $ emacs --fg-daemon -Q
>> ...
>> Starting Emacs daemon.
>> $ emacsclient --eval "(make-frame-on-display \":0\")"
>> #<frame GNU Emacs at Elitebook 0x558cf8d7d120>
>> $ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
>> (185 . 130)
>> $ emacsclient --eval "(make-frame-invisible (nth 0 (frame-list)) t)"
>> nil
>> $ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
>> (180 . 101)
>> 
>> Moving frame to left-top corner
>> ###############################
>> 
>> $ emacsclient --eval "(make-frame-visible (nth 0 (frame-list)))"
>> #<frame GNU Emacs at Elitebook 0x558cf8d7d120>
>> $ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
>> (0 . 0)
>> $ emacsclient --eval "(make-frame-invisible (nth 0 (frame-list)) t)"
>> nil
>> $ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
>> (-5 . -29)
>> $ emacsclient --eval "(make-frame-visible (nth 0 (frame-list)))"
>> #<frame GNU Emacs at Elitebook 0x558cf8d7d120>
>> $ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
>> (-5 . 0)
>> $ emacsclient --eval "(make-frame-invisible (nth 0 (frame-list)) t)"
>> nil
>> $ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
>> (-10 . -29)
>> $ emacsclient --eval "(make-frame-visible (nth 0 (frame-list)))"
>> #<frame GNU Emacs at Elitebook 0x558cf8d7d120>
>> $ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
>> (-10 . 0)
>
> Po Lu, any comments?

Did the OP mention the toolkit Emacs was built with?




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#67753; Package emacs. (Sat, 16 Dec 2023 15:16:04 GMT) Full text and rfc822 format available.

Message #14 received at 67753 <at> debbugs.gnu.org (full text, mbox):

From: soliidne <at> gmail.com
To: Po Lu <luangruo <at> yahoo.com>
Cc: Eli Zaretskii <eliz <at> gnu.org>, 67753 <at> debbugs.gnu.org
Subject: Re: bug#67753: 28.2, 29.1: Making frame invisible always affects
 frame position parameters
Date: Sat, 16 Dec 2023 14:53:47 +0200
[Message part 1 (text/plain, inline)]
On Sat, 16 Dec 2023 20:18:07 +0800
Po Lu <luangruo <at> yahoo.com> wrote:

> Eli Zaretskii <eliz <at> gnu.org> writes:
>
> >> From: soliidne <at> gmail.com
> >> Date: Sun, 10 Dec 2023 19:45:49 +0200
> >>
> >> Always for all frames, position constantly affected by: left - 5
> >> and top - 29. It seems like a bug, but it could also be an
> >> oversight. Can someone comment please ?
> >>
> >> Thanks !
> >>
> >> xfwm4 4.18.0
> >> xorg-server 21.1.9
> >> Emacs 28.2, 29.1
> >> Archlinux
> >>
> >> How to reproduce:
> >> #################
> >>
> >> $ emacs --fg-daemon -Q
> >> ...
> >> Starting Emacs daemon.
> >> $ emacsclient --eval "(make-frame-on-display \":0\")"
> >> #<frame GNU Emacs at Elitebook 0x558cf8d7d120>
> >> $ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
> >> (185 . 130)
> >> $ emacsclient --eval "(make-frame-invisible (nth 0 (frame-list))
> >> t)" nil
> >> $ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
> >> (180 . 101)
> >>
> >> Moving frame to left-top corner
> >> ###############################
> >>
> >> $ emacsclient --eval "(make-frame-visible (nth 0 (frame-list)))"
> >> #<frame GNU Emacs at Elitebook 0x558cf8d7d120>
> >> $ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
> >> (0 . 0)
> >> $ emacsclient --eval "(make-frame-invisible (nth 0 (frame-list))
> >> t)" nil
> >> $ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
> >> (-5 . -29)
> >> $ emacsclient --eval "(make-frame-visible (nth 0 (frame-list)))"
> >> #<frame GNU Emacs at Elitebook 0x558cf8d7d120>
> >> $ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
> >> (-5 . 0)
> >> $ emacsclient --eval "(make-frame-invisible (nth 0 (frame-list))
> >> t)" nil
> >> $ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
> >> (-10 . -29)
> >> $ emacsclient --eval "(make-frame-visible (nth 0 (frame-list)))"
> >> #<frame GNU Emacs at Elitebook 0x558cf8d7d120>
> >> $ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
> >> (-10 . 0)
> >
> > Po Lu, any comments?
>
> Did the OP mention the toolkit Emacs was built with?

$ emacsclient --eval "system-configuration-options"
"--sysconfdir=/etc --prefix=/usr --libexecdir=/usr/lib --localstatedir=/var
--with-cairo --with-harfbuzz --with-libsystemd --with-modules
--with-x-toolkit=gtk3 'CFLAGS=-march=x86-64 -mtune=generic -O2 -pipe
-fno-plt -fexceptions         -Wp,-D_FORTIFY_SOURCE=2 -Wformat
-Werror=format-security         -fstack-clash-protection -fcf-protection -g
-ffile-prefix-map=/build/emacs/src=/usr/src/debug/emacs -flto=auto'
'LDFLAGS=-Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now -flto=auto'"
[Message part 2 (text/html, inline)]

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#67753; Package emacs. (Sat, 23 Dec 2023 09:06:02 GMT) Full text and rfc822 format available.

Message #17 received at 67753 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: luangruo <at> yahoo.com, soliidne <at> gmail.com
Cc: 67753 <at> debbugs.gnu.org
Subject: Re: bug#67753: 28.2, 29.1: Making frame invisible always affects
 frame position parameters
Date: Sat, 23 Dec 2023 11:05:22 +0200
Ping!  Po Lu, can we make some progress here?

> From: soliidne <at> gmail.com
> Date: Sat, 16 Dec 2023 14:53:47 +0200
> Cc: Eli Zaretskii <eliz <at> gnu.org>, 67753 <at> debbugs.gnu.org
> 
> On Sat, 16 Dec 2023 20:18:07 +0800
> Po Lu <luangruo <at> yahoo.com> wrote:
> 
> > Eli Zaretskii <eliz <at> gnu.org> writes:
> > 
> > >> From: soliidne <at> gmail.com
> > >> Date: Sun, 10 Dec 2023 19:45:49 +0200
> > >> 
> > >> Always for all frames, position constantly affected by: left - 5
> > >> and top - 29. It seems like a bug, but it could also be an
> > >> oversight. Can someone comment please ?
> > >> 
> > >> Thanks !
> > >> 
> > >> xfwm4 4.18.0
> > >> xorg-server 21.1.9
> > >> Emacs 28.2, 29.1
> > >> Archlinux
> > >> 
> > >> How to reproduce:
> > >> #################
> > >> 
> > >> $ emacs --fg-daemon -Q
> > >> ...
> > >> Starting Emacs daemon.
> > >> $ emacsclient --eval "(make-frame-on-display \":0\")"
> > >> #<frame GNU Emacs at Elitebook 0x558cf8d7d120>
> > >> $ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
> > >> (185 . 130)
> > >> $ emacsclient --eval "(make-frame-invisible (nth 0 (frame-list))
> > >> t)" nil
> > >> $ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
> > >> (180 . 101)
> > >> 
> > >> Moving frame to left-top corner
> > >> ###############################
> > >> 
> > >> $ emacsclient --eval "(make-frame-visible (nth 0 (frame-list)))"
> > >> #<frame GNU Emacs at Elitebook 0x558cf8d7d120>
> > >> $ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
> > >> (0 . 0)
> > >> $ emacsclient --eval "(make-frame-invisible (nth 0 (frame-list))
> > >> t)" nil
> > >> $ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
> > >> (-5 . -29)
> > >> $ emacsclient --eval "(make-frame-visible (nth 0 (frame-list)))"
> > >> #<frame GNU Emacs at Elitebook 0x558cf8d7d120>
> > >> $ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
> > >> (-5 . 0)
> > >> $ emacsclient --eval "(make-frame-invisible (nth 0 (frame-list))
> > >> t)" nil
> > >> $ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
> > >> (-10 . -29)
> > >> $ emacsclient --eval "(make-frame-visible (nth 0 (frame-list)))"
> > >> #<frame GNU Emacs at Elitebook 0x558cf8d7d120>
> > >> $ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
> > >> (-10 . 0)  
> > >
> > > Po Lu, any comments?  
> > 
> > Did the OP mention the toolkit Emacs was built with?
> 
> $ emacsclient --eval "system-configuration-options"
> "--sysconfdir=/etc --prefix=/usr --libexecdir=/usr/lib --localstatedir=/var --with-cairo --with-harfbuzz -
> -with-libsystemd --with-modules --with-x-toolkit=gtk3 'CFLAGS=-march=x86-64 -mtune=generic -O2 -
> pipe -fno-plt -fexceptions         -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security       
>  -fstack-clash-protection -fcf-protection -g -ffile-prefix-map=/build/emacs/src=/usr/src/debug/emacs -
> flto=auto' 'LDFLAGS=-Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now -flto=auto'"




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#67753; Package emacs. (Tue, 09 Jan 2024 19:59:02 GMT) Full text and rfc822 format available.

Message #20 received at 67753 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: luangruo <at> yahoo.com
Cc: 67753 <at> debbugs.gnu.org, soliidne <at> gmail.com
Subject: Re: bug#67753: 28.2,
 29.1: Making frame invisible always affects frame position parameters
Date: Tue, 09 Jan 2024 21:58:10 +0200
Ping! Ping!  Can we make some progress here, please?

> Cc: 67753 <at> debbugs.gnu.org
> Date: Sat, 23 Dec 2023 11:05:22 +0200
> From: Eli Zaretskii <eliz <at> gnu.org>
> 
> Ping!  Po Lu, can we make some progress here?
> 
> > From: soliidne <at> gmail.com
> > Date: Sat, 16 Dec 2023 14:53:47 +0200
> > Cc: Eli Zaretskii <eliz <at> gnu.org>, 67753 <at> debbugs.gnu.org
> > 
> > On Sat, 16 Dec 2023 20:18:07 +0800
> > Po Lu <luangruo <at> yahoo.com> wrote:
> > 
> > > Eli Zaretskii <eliz <at> gnu.org> writes:
> > > 
> > > >> From: soliidne <at> gmail.com
> > > >> Date: Sun, 10 Dec 2023 19:45:49 +0200
> > > >> 
> > > >> Always for all frames, position constantly affected by: left - 5
> > > >> and top - 29. It seems like a bug, but it could also be an
> > > >> oversight. Can someone comment please ?
> > > >> 
> > > >> Thanks !
> > > >> 
> > > >> xfwm4 4.18.0
> > > >> xorg-server 21.1.9
> > > >> Emacs 28.2, 29.1
> > > >> Archlinux
> > > >> 
> > > >> How to reproduce:
> > > >> #################
> > > >> 
> > > >> $ emacs --fg-daemon -Q
> > > >> ...
> > > >> Starting Emacs daemon.
> > > >> $ emacsclient --eval "(make-frame-on-display \":0\")"
> > > >> #<frame GNU Emacs at Elitebook 0x558cf8d7d120>
> > > >> $ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
> > > >> (185 . 130)
> > > >> $ emacsclient --eval "(make-frame-invisible (nth 0 (frame-list))
> > > >> t)" nil
> > > >> $ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
> > > >> (180 . 101)
> > > >> 
> > > >> Moving frame to left-top corner
> > > >> ###############################
> > > >> 
> > > >> $ emacsclient --eval "(make-frame-visible (nth 0 (frame-list)))"
> > > >> #<frame GNU Emacs at Elitebook 0x558cf8d7d120>
> > > >> $ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
> > > >> (0 . 0)
> > > >> $ emacsclient --eval "(make-frame-invisible (nth 0 (frame-list))
> > > >> t)" nil
> > > >> $ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
> > > >> (-5 . -29)
> > > >> $ emacsclient --eval "(make-frame-visible (nth 0 (frame-list)))"
> > > >> #<frame GNU Emacs at Elitebook 0x558cf8d7d120>
> > > >> $ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
> > > >> (-5 . 0)
> > > >> $ emacsclient --eval "(make-frame-invisible (nth 0 (frame-list))
> > > >> t)" nil
> > > >> $ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
> > > >> (-10 . -29)
> > > >> $ emacsclient --eval "(make-frame-visible (nth 0 (frame-list)))"
> > > >> #<frame GNU Emacs at Elitebook 0x558cf8d7d120>
> > > >> $ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
> > > >> (-10 . 0)  
> > > >
> > > > Po Lu, any comments?  
> > > 
> > > Did the OP mention the toolkit Emacs was built with?
> > 
> > $ emacsclient --eval "system-configuration-options"
> > "--sysconfdir=/etc --prefix=/usr --libexecdir=/usr/lib --localstatedir=/var --with-cairo --with-harfbuzz -
> > -with-libsystemd --with-modules --with-x-toolkit=gtk3 'CFLAGS=-march=x86-64 -mtune=generic -O2 -
> > pipe -fno-plt -fexceptions         -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security       
> >  -fstack-clash-protection -fcf-protection -g -ffile-prefix-map=/build/emacs/src=/usr/src/debug/emacs -
> > flto=auto' 'LDFLAGS=-Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now -flto=auto'"
> 
> 
> 
> 




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#67753; Package emacs. (Wed, 10 Jan 2024 12:05:01 GMT) Full text and rfc822 format available.

Message #23 received at 67753 <at> debbugs.gnu.org (full text, mbox):

From: soliidne <at> gmail.com
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: Po Lu <luangruo <at> yahoo.com>, 67753 <at> debbugs.gnu.org
Subject: Re: bug#67753: 28.2, 29.1: Making frame invisible always affects
 frame position parameters
Date: Wed, 10 Jan 2024 12:25:19 +0200
[Message part 1 (text/plain, inline)]
Hi !

Probable bug in void xfns.c → x_real_pos_and_offsets interpreting
_NET_FRAME_EXTENTS set in Application Window Properties by WM.

Current visible Emacs frame parameters:

_NET_FRAME_EXTENTS(CARDINAL) = 5, 5, 29, 5

That means these are Emacs frame border and frame title thicknesses.

The Window Manager MUST set _NET_FRAME_EXTENTS to the extents of the
window's frame. left, right, top and bottom are widths of the respective
borders added by the Window Manager.
-----
Original Reference: [[
https://specifications.freedesktop.org/wm-spec/1.4/ar01s05.html][Application
Window Properties]]


On Tue, 09 Jan 2024 21:58:10 +0200
Eli Zaretskii <eliz <at> gnu.org> wrote:

> Ping! Ping!  Can we make some progress here, please?
>
> > Cc: 67753 <at> debbugs.gnu.org
> > Date: Sat, 23 Dec 2023 11:05:22 +0200
> > From: Eli Zaretskii <eliz <at> gnu.org>
> >
> > Ping!  Po Lu, can we make some progress here?
> >
> > > From: soliidne <at> gmail.com
> > > Date: Sat, 16 Dec 2023 14:53:47 +0200
> > > Cc: Eli Zaretskii <eliz <at> gnu.org>, 67753 <at> debbugs.gnu.org
> > >
> > > On Sat, 16 Dec 2023 20:18:07 +0800
> > > Po Lu <luangruo <at> yahoo.com> wrote:
> > >
> > > > Eli Zaretskii <eliz <at> gnu.org> writes:
> > > >
> > > > >> From: soliidne <at> gmail.com
> > > > >> Date: Sun, 10 Dec 2023 19:45:49 +0200
> > > > >>
> > > > >> Always for all frames, position constantly affected by: left
> > > > >> - 5 and top - 29. It seems like a bug, but it could also be
> > > > >> an oversight. Can someone comment please ?
> > > > >>
> > > > >> Thanks !
> > > > >>
> > > > >> xfwm4 4.18.0
> > > > >> xorg-server 21.1.9
> > > > >> Emacs 28.2, 29.1
> > > > >> Archlinux
> > > > >>
> > > > >> How to reproduce:
> > > > >> #################
> > > > >>
> > > > >> $ emacs --fg-daemon -Q
> > > > >> ...
> > > > >> Starting Emacs daemon.
> > > > >> $ emacsclient --eval "(make-frame-on-display \":0\")"
> > > > >> #<frame GNU Emacs at Elitebook 0x558cf8d7d120>
> > > > >> $ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
> > > > >> (185 . 130)
> > > > >> $ emacsclient --eval "(make-frame-invisible (nth 0
> > > > >> (frame-list)) t)" nil
> > > > >> $ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
> > > > >> (180 . 101)
> > > > >>
> > > > >> Moving frame to left-top corner
> > > > >> ###############################
> > > > >>
> > > > >> $ emacsclient --eval "(make-frame-visible (nth 0
> > > > >> (frame-list)))" #<frame GNU Emacs at Elitebook
> > > > >> 0x558cf8d7d120> $ emacsclient --eval "(frame-position (nth 0
> > > > >> 0x558cf8d7d120> (frame-list)))"
> > > > >> (0 . 0)
> > > > >> $ emacsclient --eval "(make-frame-invisible (nth 0
> > > > >> (frame-list)) t)" nil
> > > > >> $ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
> > > > >> (-5 . -29)
> > > > >> $ emacsclient --eval "(make-frame-visible (nth 0
> > > > >> (frame-list)))" #<frame GNU Emacs at Elitebook
> > > > >> 0x558cf8d7d120> $ emacsclient --eval "(frame-position (nth 0
> > > > >> 0x558cf8d7d120> (frame-list)))"
> > > > >> (-5 . 0)
> > > > >> $ emacsclient --eval "(make-frame-invisible (nth 0
> > > > >> (frame-list)) t)" nil
> > > > >> $ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
> > > > >> (-10 . -29)
> > > > >> $ emacsclient --eval "(make-frame-visible (nth 0
> > > > >> (frame-list)))" #<frame GNU Emacs at Elitebook
> > > > >> 0x558cf8d7d120> $ emacsclient --eval "(frame-position (nth 0
> > > > >> 0x558cf8d7d120> (frame-list)))"
> > > > >> (-10 . 0)
> > > > >
> > > > > Po Lu, any comments?
> > > >
> > > > Did the OP mention the toolkit Emacs was built with?
> > >
> > > $ emacsclient --eval "system-configuration-options"
> > > "--sysconfdir=/etc --prefix=/usr --libexecdir=/usr/lib
> > > --localstatedir=/var --with-cairo --with-harfbuzz -
> > > -with-libsystemd --with-modules --with-x-toolkit=gtk3
> > > 'CFLAGS=-march=x86-64 -mtune=generic -O2 - pipe -fno-plt
> > > -fexceptions         -Wp,-D_FORTIFY_SOURCE=2 -Wformat
> > > -Werror=format-security -fstack-clash-protection -fcf-protection
> > > -g -ffile-prefix-map=/build/emacs/src=/usr/src/debug/emacs -
> > > flto=auto'
> > > 'LDFLAGS=-Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now
> > > -flto=auto'"
> >
> >
> >
> >
[Message part 2 (text/html, inline)]

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#67753; Package emacs. (Sat, 20 Jan 2024 09:11:02 GMT) Full text and rfc822 format available.

Message #26 received at 67753 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: luangruo <at> yahoo.com, soliidne <at> gmail.com
Cc: 67753 <at> debbugs.gnu.org
Subject: Re: bug#67753: 28.2, 29.1: Making frame invisible always affects
 frame position parameters
Date: Sat, 20 Jan 2024 11:09:33 +0200
Po Lu, any comments or suggestions on this matter?

> From: soliidne <at> gmail.com
> Date: Wed, 10 Jan 2024 12:25:19 +0200
> Cc: Po Lu <luangruo <at> yahoo.com>, 67753 <at> debbugs.gnu.org
> 
> Hi !
> 
> Probable bug in void xfns.c → x_real_pos_and_offsets interpreting _NET_FRAME_EXTENTS set in
> Application Window Properties by WM.
> 
> Current visible Emacs frame parameters:
> 
> _NET_FRAME_EXTENTS(CARDINAL) = 5, 5, 29, 5
> 
> That means these are Emacs frame border and frame title thicknesses.
> 
> The Window Manager MUST set _NET_FRAME_EXTENTS to the extents of the window's frame.
> left, right, top and bottom are widths of the respective borders added by the Window Manager.
> -----
> Original Reference: [[https://specifications.freedesktop.org/wm-spec/1.4/ar01s05.html][Application
> Window Properties]]
> 
> On Tue, 09 Jan 2024 21:58:10 +0200
> Eli Zaretskii <eliz <at> gnu.org> wrote:
> 
> > Ping! Ping!  Can we make some progress here, please?
> > 
> > > Cc: 67753 <at> debbugs.gnu.org
> > > Date: Sat, 23 Dec 2023 11:05:22 +0200
> > > From: Eli Zaretskii <eliz <at> gnu.org>
> > > 
> > > Ping!  Po Lu, can we make some progress here?
> > >   
> > > > From: soliidne <at> gmail.com
> > > > Date: Sat, 16 Dec 2023 14:53:47 +0200
> > > > Cc: Eli Zaretskii <eliz <at> gnu.org>, 67753 <at> debbugs.gnu.org
> > > > 
> > > > On Sat, 16 Dec 2023 20:18:07 +0800
> > > > Po Lu <luangruo <at> yahoo.com> wrote:
> > > >   
> > > > > Eli Zaretskii <eliz <at> gnu.org> writes:
> > > > >   
> > > > > >> From: soliidne <at> gmail.com
> > > > > >> Date: Sun, 10 Dec 2023 19:45:49 +0200
> > > > > >> 
> > > > > >> Always for all frames, position constantly affected by: left
> > > > > >> - 5 and top - 29. It seems like a bug, but it could also be
> > > > > >> an oversight. Can someone comment please ?
> > > > > >> 
> > > > > >> Thanks !
> > > > > >> 
> > > > > >> xfwm4 4.18.0
> > > > > >> xorg-server 21.1.9
> > > > > >> Emacs 28.2, 29.1
> > > > > >> Archlinux
> > > > > >> 
> > > > > >> How to reproduce:
> > > > > >> #################
> > > > > >> 
> > > > > >> $ emacs --fg-daemon -Q
> > > > > >> ...
> > > > > >> Starting Emacs daemon.
> > > > > >> $ emacsclient --eval "(make-frame-on-display \":0\")"
> > > > > >> #<frame GNU Emacs at Elitebook 0x558cf8d7d120>
> > > > > >> $ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
> > > > > >> (185 . 130)
> > > > > >> $ emacsclient --eval "(make-frame-invisible (nth 0
> > > > > >> (frame-list)) t)" nil
> > > > > >> $ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
> > > > > >> (180 . 101)
> > > > > >> 
> > > > > >> Moving frame to left-top corner
> > > > > >> ###############################
> > > > > >> 
> > > > > >> $ emacsclient --eval "(make-frame-visible (nth 0
> > > > > >> (frame-list)))" #<frame GNU Emacs at Elitebook
> > > > > >> 0x558cf8d7d120> $ emacsclient --eval "(frame-position (nth 0
> > > > > >> 0x558cf8d7d120> (frame-list)))"
> > > > > >> (0 . 0)
> > > > > >> $ emacsclient --eval "(make-frame-invisible (nth 0
> > > > > >> (frame-list)) t)" nil
> > > > > >> $ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
> > > > > >> (-5 . -29)
> > > > > >> $ emacsclient --eval "(make-frame-visible (nth 0
> > > > > >> (frame-list)))" #<frame GNU Emacs at Elitebook
> > > > > >> 0x558cf8d7d120> $ emacsclient --eval "(frame-position (nth 0
> > > > > >> 0x558cf8d7d120> (frame-list)))"
> > > > > >> (-5 . 0)
> > > > > >> $ emacsclient --eval "(make-frame-invisible (nth 0
> > > > > >> (frame-list)) t)" nil
> > > > > >> $ emacsclient --eval "(frame-position (nth 0 (frame-list)))"
> > > > > >> (-10 . -29)
> > > > > >> $ emacsclient --eval "(make-frame-visible (nth 0
> > > > > >> (frame-list)))" #<frame GNU Emacs at Elitebook
> > > > > >> 0x558cf8d7d120> $ emacsclient --eval "(frame-position (nth 0
> > > > > >> 0x558cf8d7d120> (frame-list)))"
> > > > > >> (-10 . 0)    
> > > > > >
> > > > > > Po Lu, any comments?    
> > > > > 
> > > > > Did the OP mention the toolkit Emacs was built with?  
> > > > 
> > > > $ emacsclient --eval "system-configuration-options"
> > > > "--sysconfdir=/etc --prefix=/usr --libexecdir=/usr/lib
> > > > --localstatedir=/var --with-cairo --with-harfbuzz -
> > > > -with-libsystemd --with-modules --with-x-toolkit=gtk3
> > > > 'CFLAGS=-march=x86-64 -mtune=generic -O2 - pipe -fno-plt
> > > > -fexceptions         -Wp,-D_FORTIFY_SOURCE=2 -Wformat
> > > > -Werror=format-security -fstack-clash-protection -fcf-protection
> > > > -g -ffile-prefix-map=/build/emacs/src=/usr/src/debug/emacs -
> > > > flto=auto'
> > > > 'LDFLAGS=-Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now
> > > > -flto=auto'"  
> > > 
> > > 
> > > 
> > >   




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#67753; Package emacs. (Sat, 20 Jan 2024 09:38:01 GMT) Full text and rfc822 format available.

Message #29 received at 67753 <at> debbugs.gnu.org (full text, mbox):

From: Po Lu <luangruo <at> yahoo.com>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 67753 <at> debbugs.gnu.org, soliidne <at> gmail.com
Subject: Re: bug#67753: 28.2, 29.1: Making frame invisible always affects
 frame position parameters
Date: Sat, 20 Jan 2024 17:36:58 +0800
Eli Zaretskii <eliz <at> gnu.org> writes:

> Po Lu, any comments or suggestions on this matter?
>
>> From: soliidne <at> gmail.com
>> Date: Wed, 10 Jan 2024 12:25:19 +0200
>> Cc: Po Lu <luangruo <at> yahoo.com>, 67753 <at> debbugs.gnu.org
>> 
>> Hi !
>> 
>> Probable bug in void xfns.c → x_real_pos_and_offsets interpreting _NET_FRAME_EXTENTS set in
>> Application Window Properties by WM.
>> 
>> Current visible Emacs frame parameters:
>> 
>> _NET_FRAME_EXTENTS(CARDINAL) = 5, 5, 29, 5
>> 
>> That means these are Emacs frame border and frame title thicknesses.
>> 
>> The Window Manager MUST set _NET_FRAME_EXTENTS to the extents of the window's frame.
>> left, right, top and bottom are widths of the respective borders added by the Window Manager.

Would you please elaborate on the nature of the bug you perceive?  I get
the impression that you're referring to x_real_pos_and_offsets's
consulting this property in itself, but that is no bug, since the
offsets are not returned as the frame's left and top coordinates, but
are subtracted from its position relative to the root window as
determined from calls to XTranslateCoordinates and XGetGeometry instead.

Unfortunately there is a backlog of X window management related issues I
cannot investigate at the moment, so any input would be appreciated, or
rather, more so than in the past.

Thanks.




This bug report was last modified 1 year and 229 days ago.

Previous Next


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