panel: Fix corner highlight
The style of the top bar's corners is bound to the style of the corresponding button; we used to hardcode this association, but as the login mode does have a different layout, the button is now determined programmatically. Unfortunately, some containers take the text direction into account when ordering their children, while some don't, so the current code returned the wrong button in RTL locales. https://bugzilla.gnome.org/show_bug.cgi?id=658983
This commit is contained in:
parent
c9ba94d4d8
commit
0518d69b72
@ -764,11 +764,21 @@ PanelCorner.prototype = {
|
||||
},
|
||||
|
||||
_boxStyleChanged: function() {
|
||||
let button;
|
||||
let side = this._side;
|
||||
|
||||
if (this._side == St.Side.LEFT)
|
||||
let rtlAwareContainer = this._box instanceof St.BoxLayout;
|
||||
if (rtlAwareContainer &&
|
||||
this._box.get_direction() == St.TextDirection.RTL) {
|
||||
if (this._side == St.Side.LEFT)
|
||||
side = St.Side.RIGHT;
|
||||
else if (this._side == St.Side.RIGHT)
|
||||
side = St.Side.LEFT;
|
||||
}
|
||||
|
||||
let button;
|
||||
if (side == St.Side.LEFT)
|
||||
button = this._findLeftmostButton(this._box);
|
||||
else if (this._side == St.Side.RIGHT)
|
||||
else if (side == St.Side.RIGHT)
|
||||
button = this._findRightmostButton(this._box);
|
||||
|
||||
if (button) {
|
||||
|
Loading…
Reference in New Issue
Block a user