Bug#843418: menus do not appear on high-DPI display

Benjamin Barenblat bbaren at mit.edu
Sun Nov 6 14:47:32 UTC 2016


Package: libgtk-3-0
Version: 3.22.2-1
Severity: important

GTK3 applications fail to show menus.  Instead, a single white pixel
appears in the upper-left corner of the screen.  The issue is visible
in <http://web.mit.edu/bbaren/c/32f9df7c0.png>.  (I added the grey
border for visibility; in reality, the white pixel is right on the edge
of the screen.)  When I click on a menu, I receive a bunch of GTK
debugging output, which I’ve included below.

This issue appears in multiple GTK3 applications, not just Emacs.  I am
running xmonad, and the issue persists in both tiling and floating
modes.  Adding or removing a compositor (compton) doesn’t change the
behaviour.

The issue first appeared in GTK 3.21; downgrading to 3.20.9-1 fixes the
issue.

My monitor is a Dell UP2414Q, which I’m driving at 3840x2160 at 60 over
DisplayPort1.2 with MST.  I’m using an Nvidia GeForce GTX 760 with the
proprietary nvidia driver.

-- System Information:
Debian Release: stretch/sid
  APT prefers testing
  APT policy: (990, 'testing'), (500, 'unstable'), (500, 'stable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386, armhf

Kernel: Linux 4.7.0-1-amd64 (SMP w/12 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages libgtk-3-0 depends on:
ii  adwaita-icon-theme                      3.22.0-1
ii  hicolor-icon-theme                      0.15-1
ii  libatk-bridge2.0-0                      2.22.0-1
ii  libatk1.0-0                             2.22.0-1
ii  libc6                                   2.24-5
ii  libcairo-gobject2                       1.14.6-1+b1
ii  libcairo2                               1.14.6-1+b1
ii  libcolord2                              1.3.3-2
ii  libcups2                                2.2.1-1
ii  libepoxy0                               1.3.1-1
ii  libfontconfig1                          2.11.0-6.7
ii  libfreetype6                            2.6.3-3+b1
ii  libgdk-pixbuf2.0-0                      2.36.0-1
ii  libglib2.0-0                            2.50.1-1
ii  libgtk-3-common                         3.22.2-1
ii  libjson-glib-1.0-0                      1.2.2-1
ii  libpango-1.0-0                          1.40.3-2
ii  libpangocairo-1.0-0                     1.40.3-2
ii  libpangoft2-1.0-0                       1.40.3-2
ii  librest-0.7-0                           0.8.0-2
ii  libsoup2.4-1                            2.56.0-1
ii  libwayland-client0                      1.11.0-2
ii  libwayland-cursor0                      1.11.0-2
ii  libwayland-egl1-mesa [libwayland-egl1]  12.0.3-3
ii  libx11-6                                2:1.6.3-1
ii  libxcomposite1                          1:0.4.4-1
ii  libxcursor1                             1:1.1.14-1+b1
ii  libxdamage1                             1:1.1.4-2+b1
ii  libxext6                                2:1.3.3-1
ii  libxfixes3                              1:5.0.2-1
ii  libxi6                                  2:1.7.6-1
ii  libxinerama1                            2:1.1.3-1+b1
ii  libxkbcommon0                           0.6.1-1
ii  libxml2                                 2.9.4+dfsg1-2
ii  libxrandr2                              2:1.5.0-1
ii  shared-mime-info                        1.7-1

Versions of packages libgtk-3-0 recommends:
ii  libgtk-3-bin  3.22.2-1

Versions of packages libgtk-3-0 suggests:
pn  gvfs             <none>
ii  librsvg2-common  2.40.16-1

-- no debconf information

*** /tmp/gtk.log
(emacs:1657): Gtk-CRITICAL **: gtk_widget_get_preferred_height_for_width: assertion 'width >= 0' failed

(emacs:1657): Gtk-CRITICAL **: gtk_widget_get_preferred_height_for_width: assertion 'width >= 0' failed

(emacs:1657): Gtk-CRITICAL **: gtk_widget_get_preferred_height_for_width: assertion 'width >= 0' failed

(emacs:1657): Gtk-CRITICAL **: gtk_widget_get_preferred_height_for_width: assertion 'width >= 0' failed

(emacs:1657): Gtk-CRITICAL **: gtk_widget_get_preferred_height_for_width: assertion 'width >= 0' failed

(emacs:1657): Gtk-CRITICAL **: gtk_widget_get_preferred_height_for_width: assertion 'width >= 0' failed

(emacs:1657): Gtk-CRITICAL **: gtk_widget_get_preferred_height_for_width: assertion 'width >= 0' failed

(emacs:1657): Gtk-CRITICAL **: gtk_widget_get_preferred_height_for_width: assertion 'width >= 0' failed

(emacs:1657): Gtk-CRITICAL **: gtk_widget_get_preferred_height_for_width: assertion 'width >= 0' failed

(emacs:1657): Gtk-CRITICAL **: gtk_widget_get_preferred_height_for_width: assertion 'width >= 0' failed

(emacs:1657): Gtk-CRITICAL **: gtk_widget_get_preferred_height_for_width: assertion 'width >= 0' failed

(emacs:1657): Gtk-CRITICAL **: gtk_widget_get_preferred_height_for_width: assertion 'width >= 0' failed

(emacs:1657): Gtk-CRITICAL **: gtk_widget_get_preferred_height_for_width: assertion 'width >= 0' failed

(emacs:1657): Gtk-CRITICAL **: gtk_widget_get_preferred_height_for_width: assertion 'width >= 0' failed

(emacs:1657): Gtk-CRITICAL **: gtk_widget_get_preferred_height_for_width: assertion 'width >= 0' failed
*** BUG ***
In pixman_region32_init_rect: Invalid rectangle passed
Set a breakpoint on '_pixman_log_error' to debug

*** BUG ***
In pixman_region32_init_rect: Invalid rectangle passed
Set a breakpoint on '_pixman_log_error' to debug


(emacs:1657): Gtk-WARNING **: Negative content width -7 (allocation 1, extents 4x4) while allocating gadget (node arrow, owner GtkMenu)

(emacs:1657): Gtk-WARNING **: Negative content width -7 (allocation 1, extents 4x4) while allocating gadget (node arrow, owner GtkMenu)
*** BUG ***
In pixman_region32_init_rect: Invalid rectangle passed
Set a breakpoint on '_pixman_log_error' to debug


(emacs:1657): Gtk-WARNING **: Negative content width -11 (allocation 1, extents 6x6) while allocating gadget (node menuitem, owner GtkMenuItem)

(emacs:1657): Gtk-WARNING **: Negative content width -11 (allocation 1, extents 6x6) while allocating gadget (node menuitem, owner GtkMenuItem)

(emacs:1657): Gtk-WARNING **: Negative content width -11 (allocation 1, extents 6x6) while allocating gadget (node menuitem, owner GtkMenuItem)

(emacs:1657): Gtk-WARNING **: Negative content width -11 (allocation 1, extents 6x6) while allocating gadget (node menuitem, owner GtkMenuItem)

(emacs:1657): Gtk-WARNING **: Negative content width -11 (allocation 1, extents 6x6) while allocating gadget (node menuitem, owner GtkMenuItem)

(emacs:1657): Gtk-WARNING **: Negative content width -11 (allocation 1, extents 6x6) while allocating gadget (node menuitem, owner GtkMenuItem)

(emacs:1657): Gtk-WARNING **: Negative content width -11 (allocation 1, extents 6x6) while allocating gadget (node menuitem, owner GtkMenuItem)

(emacs:1657): Gtk-WARNING **: Negative content width -11 (allocation 1, extents 6x6) while allocating gadget (node menuitem, owner GtkMenuItem)

(emacs:1657): Gtk-WARNING **: Negative content width -11 (allocation 1, extents 6x6) while allocating gadget (node menuitem, owner GtkMenuItem)

(emacs:1657): Gtk-WARNING **: Negative content width -11 (allocation 1, extents 6x6) while allocating gadget (node menuitem, owner GtkMenuItem)

(emacs:1657): Gtk-WARNING **: Negative content width -11 (allocation 1, extents 6x6) while allocating gadget (node menuitem, owner GtkMenuItem)

(emacs:1657): Gtk-WARNING **: Negative content width -11 (allocation 1, extents 6x6) while allocating gadget (node menuitem, owner GtkMenuItem)

(emacs:1657): Gtk-WARNING **: Negative content width -11 (allocation 1, extents 6x6) while allocating gadget (node menuitem, owner GtkMenuItem)



More information about the pkg-gnome-maintainers mailing list