mirror of
https://github.com/edu4rdshl/gnome-shell.git
synced 2026-07-17 23:24:51 +00:00
quickSettings: Rotate menu arrows
Static arrows representing menus are inconsistent with the rest of the platform, where we rotate arrows to represent that the menu is open. Make quick settings arrows do the same.
This commit is contained in:
parent
235dd7be76
commit
c1d73d8cae
1 changed files with 25 additions and 1 deletions
|
|
@ -115,6 +115,7 @@ var QuickMenuToggle = GObject.registerClass({
|
|||
child: new St.Icon({
|
||||
style_class: 'quick-toggle-arrow',
|
||||
icon_name: 'go-next-symbolic',
|
||||
pivot_point: new Graphene.Point({x: 0.5, y: 0.5}),
|
||||
}),
|
||||
style_class: 'quick-toggle-arrow-button',
|
||||
x_expand: false,
|
||||
|
|
@ -133,6 +134,16 @@ var QuickMenuToggle = GObject.registerClass({
|
|||
if (this.menuEnabled)
|
||||
this.menu.open();
|
||||
});
|
||||
|
||||
this.menu.connect('open-state-changed', (popup, isOpen) => {
|
||||
const ltr = this.text_direction !== Clutter.TextDirection.RTL;
|
||||
const angle = ltr ? 90 : -90;
|
||||
this._menuButton.child.ease({
|
||||
rotationAngleZ: isOpen ? angle : 0,
|
||||
delay: isOpen ? 0 : POPUP_ANIMATION_TIME / 2,
|
||||
duration: POPUP_ANIMATION_TIME / 2,
|
||||
});
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
|
|
@ -200,7 +211,10 @@ var QuickSlider = GObject.registerClass({
|
|||
sliderBin.connect('event', (bin, event) => this.slider.event(event, false));
|
||||
|
||||
this._menuButton = new St.Button({
|
||||
child: new St.Icon({icon_name: 'go-next-symbolic'}),
|
||||
child: new St.Icon({
|
||||
icon_name: 'go-next-symbolic',
|
||||
pivot_point: new Graphene.Point({x: 0.5, y: 0.5}),
|
||||
}),
|
||||
style_class: 'icon-button',
|
||||
can_focus: true,
|
||||
x_expand: false,
|
||||
|
|
@ -216,6 +230,16 @@ var QuickSlider = GObject.registerClass({
|
|||
if (this.menuEnabled)
|
||||
this.menu.open();
|
||||
});
|
||||
|
||||
this.menu.connect('open-state-changed', (popup, isOpen) => {
|
||||
const ltr = this.text_direction !== Clutter.TextDirection.RTL;
|
||||
const angle = ltr ? 90 : -90;
|
||||
this._menuButton.child.ease({
|
||||
rotationAngleZ: isOpen ? angle : 0,
|
||||
delay: isOpen ? 0 : POPUP_ANIMATION_TIME / 2,
|
||||
duration: POPUP_ANIMATION_TIME / 2,
|
||||
});
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue