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 735014 - GtkPopover smart positioning broken in RTL
GtkPopover smart positioning broken in RTL
Status: RESOLVED FIXED
Product: gtk+
Classification: Platform
Component: Widget: GtkPopover
3.13.x
Other Linux
: Normal major
: ---
Assigned To: gtk-bugs
gtk-bugs
Depends on:
Blocks:
 
 
Reported: 2014-08-18 20:41 UTC by Damián Nohales
Modified: 2014-08-21 16:00 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Bug reproduction (3rd case) (1.50 KB, patch)
2014-08-18 20:41 UTC, Damián Nohales
none Details | Review

Description Damián Nohales 2014-08-18 20:41:01 UTC
Created attachment 283823 [details] [review]
Bug reproduction (3rd case)

Gtk+ tries to automatically change the preferred popover position if it has no space to show it due to the proximity of the window edge.

This algorithm seems to be broken when RTL is enabled.

For example, if the popover is as near to the left window edge so it won't fit if the popover is renderer using GTK_POS_LEFT, this happens:

1) LTR && preferred position LEFT -> final position RIGHT
2) LTR && preferred position RIGHT -> final position RIGHT
3) RTL && preferred position LEFT -> final position LEFT
4) RTL && preferred position RIGHT -> final position LEFT

So, for RTL, popover is not show properly whenever position I set as the preferred one.

The attachment illustrate the 3rd case.