gtk-4.0/widgets/_menus.scss 2.7 K raw
1
/*********
2
 * Menus *
3
 *********/
4
menubar,
5
.menubar {
6
  background-color: $headerbar_color;
7
  color: $headerbar_fg_color;
8
  padding: 0px;
9
  box-shadow: inset 0 -1px transparentize(black, 0.9);
10
11
  > item {
12
    min-height: 16px;
13
    padding: 4px 8px;
14
15
    &:hover { //Seems like it :hover even with keyboard focus
16
      box-shadow: inset 0 -3px $selected_bg_color;
17
    }
18
19
    &:disabled {
20
      color: $insensitive_fg_color;
21
      box-shadow: none;
22
    }
23
  }
24
}
25
26
menu,
27
.menu,
28
.context-menu {
29
  padding: 2px 0px;
30
  background: $main_dark_color;
31
  border: none; // adds borders in a non composited env
32
  border-radius: 5px;
33
  font: initial;
34
35
  .csd & { border: none; }  // axes borders in a composited env
36
37
  &:backdrop { background-color: $backdrop_menu_color; }
38
39
  menuitem {
40
    min-height: 17px;
41
    min-width: 40px;
42
    padding: 4px 6px;
43
    text-shadow: none;
44
45
    &:hover {
46
      color: $selected_fg_color;
47
      background-color: $selected_bg_color;
48
    }
49
50
    &:disabled {
51
      color: $insensitive_fg_color;
52
      &:backdrop { color: $backdrop_insensitive_color; }
53
    }
54
55
    &:backdrop,
56
    &:backdrop:hover {
57
      color: $backdrop_fg_color;
58
      background-color: transparent;
59
    }
60
61
    // submenu indicators
62
    arrow {
63
      min-height: 16px;
64
      min-width: 16px;
65
66
      &:dir(ltr) {
67
        -gtk-icon-source: -gtk-icontheme('pan-end-symbolic');
68
        margin-left: 10px;
69
      }
70
71
      &:dir(rtl) {
72
        -gtk-icon-source:-gtk-icontheme('pan-end-symbolic-rtl');
73
        margin-right: 10px;
74
      }
75
    }
76
77
    // avoids labels color being overridden, see
78
    // https://bugzilla.gnome.org/show_bug.cgi?id=767058
79
    label { &:dir(rtl), &:dir(ltr) { color: inherit; }}
80
  }
81
82
  // overflow arrows
83
  > arrow {
84
    @include button(undecorated);
85
86
    min-height: 16px;
87
    min-width: 16px;
88
    padding: 4px;
89
    background-color: $menu_color;
90
    border-radius: 0;
91
92
    &.top {
93
      margin-top: -6px;
94
      border-bottom: 1px solid mix($fg_color, $base_color, 10%);
95
      -gtk-icon-source: -gtk-icontheme('pan-up-symbolic');
96
    }
97
98
    &.bottom {
99
      margin-bottom: -6px;
100
      border-top: 1px solid mix($fg_color, $base_color, 10%);
101
      -gtk-icon-source: -gtk-icontheme('pan-down-symbolic');
102
    }
103
104
    &:hover { background-color: mix($fg_color, $base_color, 10%); }
105
106
    &:backdrop { background-color: $backdrop_menu_color; }
107
108
    &:disabled {
109
      color: transparent;
110
      background-color: transparent;
111
      border-color: transparent ;
112
    }
113
  }
114
}
115
116
menuitem {
117
  accelerator { color: gtkalpha(currentColor,0.55); }
118
119
  check,
120
  radio {
121
    min-height: 16px;
122
    min-width: 16px;
123
124
    &:dir(ltr) { margin-right: 7px; }
125
    &:dir(rtl) { margin-left: 7px; }
126
  }
127
}
128
129
.csd.popup {
130
  background-color: transparent;
131
}