st/scroll-bar: Fix vertical scrollbars in RTL locales

Commit 0db41a3773 fixed the handling of horizontal scrollbars in
RTL locales, but accidentally applied the translation to *all*
scrollbars when handling handle drags and paging. Fix this by
limiting the mirroring to horizontal bars.

https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/4458

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1910>
This commit is contained in:
Florian Müllner 2021-07-08 23:42:49 +02:00 committed by Marge Bot
parent dc47ca19ba
commit 0e72579364

View File

@ -633,7 +633,7 @@ move_slider (StScrollBar *bar,
&page_size); &page_size);
direction = clutter_actor_get_text_direction (CLUTTER_ACTOR (bar)); direction = clutter_actor_get_text_direction (CLUTTER_ACTOR (bar));
if (direction == CLUTTER_TEXT_DIRECTION_RTL) if (!priv->vertical && direction == CLUTTER_TEXT_DIRECTION_RTL)
pos = size - pos; pos = size - pos;
position = ((pos / size) position = ((pos / size)
@ -778,7 +778,7 @@ trough_paging_cb (StScrollBar *self)
&tx, &ty); &tx, &ty);
direction = clutter_actor_get_text_direction (CLUTTER_ACTOR (self)); direction = clutter_actor_get_text_direction (CLUTTER_ACTOR (self));
if (direction == CLUTTER_TEXT_DIRECTION_RTL) if (!priv->vertical && direction == CLUTTER_TEXT_DIRECTION_RTL)
page_increment *= -1; page_increment *= -1;
if (priv->vertical) if (priv->vertical)