unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Stefan Kangas <stefankangas@gmail.com>
To: Tobias Bading <tbading@web.de>
Cc: Po Lu <luangruo@yahoo.com>, 63395@debbugs.gnu.org
Subject: bug#63395: HiDPI/GTK: menubar height scaled twice in xg_update_frame_menubar()
Date: Wed, 6 Sep 2023 04:05:05 -0700	[thread overview]
Message-ID: <CADwFkmnUK2hUs3v5qiDLAMZCuHCcJdQuQjEqDh7_yQQO6_H=xw@mail.gmail.com> (raw)
In-Reply-To: <db0e7168-364d-e58e-0835-ed3fdb9e2c20@web.de> (Tobias Bading's message of "Tue, 9 May 2023 20:22:53 +0200")

Po Lu, could you please take a look at the below bug report?

Tobias Bading <tbading@web.de> writes:

> It looks like
>
> --- %< ---
>
> commit 401ccb0b9c697fd3af026a72b6621a692e206aea
> Author:     Po Lu <luangruo@yahoo.com>
> AuthorDate: Wed Jan 26 13:53:20 2022 +0800
> Commit:     Po Lu <luangruo@yahoo.com>
> CommitDate: Wed Jan 26 13:53:20 2022 +0800
>
>     Fix GTK menu bar height reporting when scaled
>
>     * src/gtkutil.c (xg_update_frame_menubar): Multiply requisition
>     height by GDK scale.
>
> M       src/gtkutil.c
>
> --- >% ---
>
> tried to correct a problem that was already fixed by
>
> --- %< ---
>
> commit a05bafffdcb88df74408a8402cafc9829407c1e5
> Author:     Tobias Bading <tbading@web.de>
> AuthorDate: Wed Nov 27 16:51:26 2019 +0100
> Commit:     Robert Pluim <rpluim@gmail.com>
> CommitDate: Tue Dec 3 08:54:31 2019 +0100
>
>     Fix incorrect GTK menus on HiDPI monitors with scaling factor > 1
>
>     This should fix Bug#31223, Bug#28106, Bug#23672 as well as Ubuntu bug
>     https://bugs.launchpad.net/ubuntu/+source/emacs25/+bug/1695228
>
>     Also fixes the formerly unscaled Y value returned by
>     frame-monitor-workarea (and display-monitor-attributes-list).
>
>     For details on why some GTK menus were empty please see thread
>     https://lists.gnu.org/archive/html/emacs-devel/2019-11/msg01061.html
>
>     * src/gtkutil.c (menubar_map_cb, xg_update_frame_menubar): Scale up
>     req.height so that the menu bar's height is in device pixels as
>     expected.
>     (xg_event_is_for_menubar): Scale down rec.x and rec.y so that
>     gtk_widget_intersect() works as intended.
>     * src/xfns.c (Fx_display_monitor_attributes_list): Scale work.x and
>     work.y up to be in device pixels.
>
>     Copyright-paperwork-exempt: yes
>
> M       src/gtkutil.c
> M       src/xfns.c
>
> --- >% ---
>
> In emacs-29 as well as master req.height in xg_update_frame_menubar() is now
> multiplied with xg_get_scale(f) twice. As a result my window manager (Compiz
> from Ubuntu 20.04.6 LTS) assumes that the Emacs frame wouldn’t fit into the
> monitor’s workarea and ignores my requested position.
>
> Reverting 401ccb0b9c697fd3af026a72b6621a692e206aea fixes this for me.





  reply	other threads:[~2023-09-06 11:05 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-05-09 18:22 bug#63395: HiDPI/GTK: menubar height scaled twice in xg_update_frame_menubar() Tobias Bading
2023-09-06 11:05 ` Stefan Kangas [this message]
2023-09-06 11:43   ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-09-07  0:59   ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CADwFkmnUK2hUs3v5qiDLAMZCuHCcJdQuQjEqDh7_yQQO6_H=xw@mail.gmail.com' \
    --to=stefankangas@gmail.com \
    --cc=63395@debbugs.gnu.org \
    --cc=luangruo@yahoo.com \
    --cc=tbading@web.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).