After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 667249 - Revert part of f1bfdda3fd9275f1527a19a0d19409fdec16f587
Revert part of f1bfdda3fd9275f1527a19a0d19409fdec16f587
Status: RESOLVED FIXED
Product: gtk+
Classification: Platform
Component: Widget: GtkMenu
unspecified
Other All
: Normal normal
: ---
Assigned To: gtk-bugs
gtk-bugs
Depends on:
Blocks:
 
 
Reported: 2012-01-04 10:57 UTC by Paolo Borelli
Modified: 2012-01-06 04:30 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Revert part of f1bfdda3fd9275f1527a19a0d19409fdec16f587 (1022 bytes, patch)
2012-01-04 10:57 UTC, Paolo Borelli
none Details | Review
Another attempt at fixing menu positioning corner cases (2.51 KB, patch)
2012-01-06 04:30 UTC, Matthias Clasen
committed Details | Review

Description Paolo Borelli 2012-01-04 10:57:29 UTC
This part of the changeset broke menus higher than the monitor height,
like gedit's language selection menu.
Comment 1 Paolo Borelli 2012-01-04 10:57:33 UTC
Created attachment 204556 [details] [review]
Revert part of f1bfdda3fd9275f1527a19a0d19409fdec16f587
Comment 2 Matthias Clasen 2012-01-04 17:07:17 UTC
It seems to work ok here, do you have a screenshot ?
Comment 3 Paolo Borelli 2012-01-04 17:26:16 UTC
Sorry no screenshot, alt+prntscreen does not work with the menu it seems :)

Anyway there is little to shoot, the menu does not popup at all.
Note that I mean the menu you get by clicking on the button in the statusbar, not from the View menuitem
Comment 4 Matthias Clasen 2012-01-06 04:30:39 UTC
The following fix has been pushed:
c74ac08 Another attempt at fixing menu positioning corner cases
Comment 5 Matthias Clasen 2012-01-06 04:30:42 UTC
Created attachment 204723 [details] [review]
Another attempt at fixing menu positioning corner cases

The code for moving the menu into monitor / workarea was duplicated,
once for the push-in scenario and once for without. The problem with
the second case is that we've stored the menu position before adjusting
it. That made us remember an out-of-monitor position that then later
triggered _another_ copy of this code in the size-request implementation.

Unify this to only have one copy of code, and only store the menu
position after adjusting it to be inside the monitor. This fixes both
statusicon menus that get popped up from the panel, outside the workarea,
to not have scroll arrows, and the gedit language menu which was not
placed in the monitor at all after the initial workarea commit.

As a side-effect of this change, we now make large scrolling menus
occupy the full height of the workarea. Before this change, we were
keeping either the top or bottom edge put while shrinking the menu
to fit in the monitor.