// panels can be on any side of the screen // some panel item theming is specific to panel orientation and is included in this section // each panel is also split into three zones // dnd is for panel edit mode // dummy is for adding or moving panels #panel { color: $dark_fg_color; height: 2.5em; width: 3.2em; &:highlight { background-color: $selected_bg_color; } } .panel-dummy { background-color: rgba(255, 0, 0, 0.6); &:entered { background-color: rgba(0, 255, 0, 0.6); } } .panelLeft { spacing: 4px; &:dnd { background-color: rgba(255, 0, 0, 0.6); } &:ltr { padding-right: 4px; } &:rtl { padding-left: 4px; } &.vertical { padding: 0; &:dnd { } } } .panelCenter { spacing: 4px; &:dnd { background-color: rgba(0, 255, 0, 0.6); } &.vertical { padding-left: 0; padding-right: 0; &:dnd { } } } .panelRight { spacing: 4px; &:dnd { background-color: rgba(0, 0, 255, 0.6); } &:ltr { padding-left: 0; spacing: 0; } &:rtl { padding-right: 0; spacing: 0; } &.vertical { padding: 0; &:dnd { } } } // panel borders must be defined with a border-top color or other color definition that encompasses border-top // panels do not support different colors of borders on different edges // due to a bug in cinnamons placing of panel items on a bordered panel small margins are used to ensure that bordered panel objects // do not overlap the panel border .panel-top { @extend %bg-grad-to-bottom; box-shadow: 0 -1px 0 0 $exterior_border inset; .window-list-item-box { @extend %bg-grad-to-top; margin-bottom: 1px; &:hover { @extend %hover-bg-grad-to-top; } &:active, &:checked, &:focus, &:running { @extend %panel-top-shared; &:hover { @extend %hover-selected-grad-to-top; } } } .grouped-window-list-item-box { &:active, &:checked { box-shadow: 0 2px 0 0 $dark_fg_color inset; } &:hover { box-shadow: 0 2px 0 0 $selected_border inset; } &:focus { box-shadow: 0 4px 0 0 $selected_border inset; } } .workspace-switcher, .workspace-graph { padding: 1px $spacing; } .panel-launchers .launcher:hover { box-shadow: 0 2px 0 0 $selected_border inset; } .applet-separator { padding: 3px $spacing; } } .panel-bottom { @extend %bg-grad-to-top; box-shadow: 0 1px 0 0 $exterior_border inset; .window-list-item-box { @extend %bg-grad-to-bottom; margin-top: 1px; &:hover { @extend %hover-bg-grad-to-bottom; } &:active, &:checked, &:focus, &:running { @extend %panel-bottom-shared; &:hover { @extend %hover-selected-grad-to-bottom; } } } .grouped-window-list-item-box { &:active, &:checked { box-shadow: 0 -2px 0 0 $dark_fg_color inset; } &:hover { box-shadow: 0 -2px 0 0 $selected_border inset; } &:focus { box-shadow: 0 -4px 0 0 $selected_border inset; } } .workspace-switcher, .workspace-graph { padding: 1px $spacing; } .panel-launchers .launcher:hover { box-shadow: 0 -2px 0 0 $selected_border inset; } .applet-separator { padding: 3px $spacing; } } .panel-left { @extend %bg-grad-to-right; box-shadow: -1px 0 0 0 $exterior_border inset; .window-list-item-box { margin-right: 1px; @extend %bg-grad-to-left; &:hover { @extend %hover-bg-grad-to-left; } &:active, &:checked, &:focus, &:running { @extend %panel-left-shared; &:hover { @extend %hover-selected-grad-to-left; } } } .grouped-window-list-item-box { &:active, &:checked { box-shadow: 2px 0 0 0 $dark_fg_color inset; } &:hover { box-shadow: 2px 0 0 0 $selected_border inset; } &:focus { box-shadow: 4px 0 0 0 $selected_border inset; } } .workspace-switcher, .workspace-graph { padding: $spacing 1px; } .panel-launchers .launcher:hover { box-shadow: 2px 0 0 0 $selected_border inset; } .applet-separator { padding: $spacing 3px; } } .panel-right { @extend %bg-grad-to-left; box-shadow: 1px 0 0 0 $exterior_border inset; .window-list-item-box { margin-left: 1px; @extend %bg-grad-to-right; &:hover { @extend %hover-bg-grad-to-right; } &:active, &:checked, &:focus, &:running { @extend %panel-right-shared; &:hover { @extend %hover-selected-grad-to-right; } } } .grouped-window-list-item-box { &:active, &:checked { box-shadow: -2px 0 0 0 $dark_fg_color inset; } &:hover { box-shadow: -2px 0 0 0 $selected_border inset; } &:focus { box-shadow: -4px 0 0 0 $selected_border inset; } } .workspace-switcher, .workspace-graph { padding: $spacing 1px; } .panel-launchers .launcher:hover { box-shadow: -2px 0 0 0 $selected_border inset; } .applet-separator { padding: $spacing 3px; } } // a non feature - not worth themeing .panel-corner { &:active { } &:overview { } &:focus { } } // remaining code is for panel items starting with the generic applets .applet-separator-line { width: 2px; background: $selected_bg_color; } .applet-separator-line-vertical { border-color: $selected_bg_color; border-bottom: 2px solid; } .applet-spacer:highlight { background-color: $selected_bg_color; } .applet-box { color: $dark_fg_color; transition-duration: 150; border-radius: $roundness; padding: 0 $spacing; &.vertical { padding: $spacing 0; } &:checked { color: $selected_bg_color; .applet-label { color: $selected_bg_color; } } &:hover { color: $selected_bg_color; .applet-label { color: $selected_bg_color; } } &:highlight { background-color: $selected_bg_color; color: $selected_fg_color; .applet-label { color: $selected_fg_color; } } } .applet-label { font-weight: bold; color: $dark_fg_color; padding-left: 3px; } // icon-size set to 22 to match hard-coded menu icon size - applet-icon style is used for search provider results in menu .applet-icon { color: $dark_fg_color; padding: 0; spacing: 0; icon-size: 22px; } // used by power applet to warn of low battery .system-status-icon { icon-size: 1.14em; padding: 0; spacing: 0; &.warning { color: $warning_color; } &.error { color: $error_color; } } // keyboard layout applet .panel-status-button { -natural-hpadding: 4px; -minimum-hpadding: 4px; font-weight: bold; color: $dark_fg_color; &:hover { color: $selected_bg_color; } } // user applet specific themeing .user-box { padding: 0.4em 1.3em; spacing: 10px; } .user-icon { padding: 4px; border: none; } .user-label { color: $dark_fg_color; font-weight: bold; font-size: 1em; } // the window list applet. Some third party applets inherit some of this theming. .window-list-box { spacing: $spacing; padding: 1px 3px; font-size: 0.9em; border-radius: $roundness; &.vertical { spacing: $spacing; padding: 3px 1px; } &:highlight { background-color: $selected_bg_color; } #appMenuIcon { } } // progress was added with cinnamon 3.6 and allows compatible applications to use the window list as a progress bar .window-list-item { &-box { border: 1px solid $interior_border; border-radius: $roundness; transition-duration: 150; &:hover { border: 1px solid $selected_border; } &.top StLabel, &.bottom StLabel { padding-left: 3px; } .progress { background-color: $success_color; border: 1px solid $selected_border; border-radius: $roundness; color: $info_fg_color; } #appMenuIcon { padding-right: 0.2em; } } &-demands-attention { background-color: $info_bg_color; color: $info_fg_color; } } // cinnamon 3.8 will support an improved window-list-thumbnail preview which now has it's own selector .window-list-preview { @extend %bg-grad-to-right; border-radius: $roundness; border: 1px solid $exterior_border; padding: 6px 12px; spacing: $spacing; color: $dark_fg_color; } // Cinnamon 4.0 has a new grouped window list applet with it's own selectors. // Initial theme support is defined here. .grouped-window-list { &-thumbnail-label { padding-left: 3px; } &-number-label { z-index: 99; font-size: 0.8em; color: $dark_fg_color; } // May need to revise depending on upstream GWL developments &-button-label { padding: 0; } &-badge { border-radius: 256px; background-color: $dark_bg_color; } &-thumbnail-alert { background: $warning_color; } &-item-box { transition-duration: 150; spacing: 1em; background-color: rgba(0, 0, 0, 0.01); &:hover, &:focus, { color: $selected_bg_color; } &:focus { font-weight: bold; } .progress { background-color: $success_color; } } &-demands-attention { background-color: $info_bg_color; color: $info_fg_color; } &-thumbnail-menu { @extend %bg-grad-to-right; border-radius: $roundness; padding: 10px 15px; spacing: $spacing; color: $dark_fg_color; .item-box { padding: 8px; border-radius: $roundness; border: 1px solid $interior_border; &:outlined { border: 1px solid $selected_border; } &:selected { background-color: $selected_bg_color; border: 1px solid $selected_border; color: $selected_fg_color; } } .thumbnail-box { padding: 2px; spacing: $spacing; } .thumbnail { width: 256px; } .separator { width: 1px; background: $selected_bg_color; } } } // the sound player applet .sound-player { StButton { @extend %shared-button; min-width: 2em; min-height: 2em; padding: $spacing_plus2; color: $button_fg_color; border-radius: $roundness; &:small { min-width: 1.5em; min-height: 1.5em; padding: $spacing; StIcon { icon-size: 1em; } } StIcon { icon-size: 1.5em; } &:hover { @extend %shared-button-hover; } &:focus { color: $selected_fg_color; } &:active { @extend %shared-button-active; } } .slider { @extend %slider-shared; height: 4px; } StBoxLayout { spacing: 0.5em; } > StBoxLayout { padding: 5px; } } .sound-player-generic-coverart { background: rgba(0,0,0,0.2); } .sound-player-overlay { @extend %bg-grad-to-bottom; min-width: 300px; padding: 12px 16px; spacing: 0.5em; color: $dark_fg_color; } // workspace switcher applet simple button view .workspace-button { width: 2em; height: 1em; color: $dark_fg_color; border: 1px solid $interior_border; margin: 2px; transition-duration: 150; &.vertical { height: 1.5em; } &:outlined { background-color: $selected_bg_color; color: $selected_fg_color; border-color: $selected_border; } } // workspace switcher applet graph view .workspace-graph { .workspace { @extend %bg-grad-to-bottom; border: 1px solid $interior_border; &:active { @extend %selected-bg-grad-to-bottom; border: 1px solid $interior_border; .windows { -active-window-background: rgba(255, 255, 255, 0.8); -active-window-border: rgba(0, 0, 0, 0.9); -inactive-window-background: rgba(140, 140, 140, 0.8); -inactive-window-border: rgba(0, 0, 0, 0.7); } } .windows { -active-window-background: rgba(140, 140, 140, 0.8); -active-window-border: rgba(0, 0, 0, 0.7); -inactive-window-background: rgba(140, 140, 140, 0.8); -inactive-window-border: rgba(0, 0, 0, 0.7); } } } // most panel launcher themeing is orientation specific .panel-launchers { padding: 0 $spacing; spacing: $spacing; .launcher { background-color:rgba(0, 0, 0, 0.01); } &.vertical { padding: $spacing 0; } } .notification-applet-padding { padding: .5em 1em; } .notification-applet-container { max-height: 100px; } .systray { spacing: $spacing; } .flashspot { background-color: $selected_bg_color; }