popupSubMenu: Only remove padding when scrollbar is shown
The special padding rules for submenu items currently ensure that content aligns properly when the scrollbar is shown. While they work nicely for the network menu, it looks odd for non-scrolled submenus, so make this case explicit by introducing a :scrolled pseudo class and adjust the style rules to use it. https://bugzilla.gnome.org/show_bug.cgi?id=683009
This commit is contained in:
parent
6b016c2528
commit
58477282fe
@ -151,11 +151,11 @@ StScrollBar StButton#vhandle:active {
|
||||
box-shadow: inset 0px 2px 4px rgba(0,0,0,0.9);
|
||||
}
|
||||
|
||||
.popup-sub-menu .popup-menu-item:ltr {
|
||||
.popup-sub-menu:scrolled .popup-menu-item:ltr {
|
||||
padding-right: 0em;
|
||||
}
|
||||
|
||||
.popup-sub-menu .popup-menu-item:rtl {
|
||||
.popup-sub-menu:scrolled .popup-menu-item:rtl {
|
||||
padding-left: 0em;
|
||||
}
|
||||
|
||||
|
@ -1343,6 +1343,11 @@ const PopupSubMenu = new Lang.Class({
|
||||
this.actor.vscrollbar_policy =
|
||||
needsScrollbar ? Gtk.PolicyType.AUTOMATIC : Gtk.PolicyType.NEVER;
|
||||
|
||||
if (needsScrollbar)
|
||||
this.actor.add_style_pseudo_class('scrolled');
|
||||
else
|
||||
this.actor.remove_style_pseudo_class('scrolled');
|
||||
|
||||
// It looks funny if we animate with a scrollbar (at what point is
|
||||
// the scrollbar added?) so just skip that case
|
||||
if (animate && needsScrollbar)
|
||||
|
Loading…
Reference in New Issue
Block a user