combo-box-menu-item: Propagate style changes to the combo menu
ComboBoxMenuItems use ClutterClones to reconstruct the active item in the associated ComboMenu to not impose a particular MenuItem type in the menu. However, this results in style changes (for instance those triggered by icon-theme or text-scaling-factor changes) of the ComboBoxMenuItem not having a visual effect until the ComboBoxMenu is shown. As a fix, force a style update on the ComboBoxMenu when the item's style changes. https://bugzilla.gnome.org/show_bug.cgi?id=662799
This commit is contained in:
parent
8678b87120
commit
d20e646ed6
@ -1500,6 +1500,8 @@ PopupComboMenu.prototype = {
|
||||
this.actor._delegate = this;
|
||||
this.actor.connect('key-press-event', Lang.bind(this, this._onKeyPressEvent));
|
||||
this.actor.connect('key-focus-in', Lang.bind(this, this._onKeyFocusIn));
|
||||
sourceActor.connect('style-changed',
|
||||
Lang.bind(this, this._onSourceActorStyleChanged));
|
||||
this._activeItemPos = -1;
|
||||
global.focus_manager.add_group(this.actor);
|
||||
},
|
||||
@ -1519,6 +1521,10 @@ PopupComboMenu.prototype = {
|
||||
activeItem.actor.grab_key_focus();
|
||||
},
|
||||
|
||||
_onSourceActorStyleChanged: function() {
|
||||
_ensureStyle(this.actor);
|
||||
},
|
||||
|
||||
open: function() {
|
||||
if (this.isOpen)
|
||||
return;
|
||||
|
Loading…
Reference in New Issue
Block a user