diff --git a/install.sh b/install.sh index f60fb5c1..38d1348c 100755 --- a/install.sh +++ b/install.sh @@ -180,6 +180,13 @@ install() { mkdir -p "${THEME_DIR}-xhdpi/xfwm4" cp -r "${SRC_DIR}/assets/xfwm4/assets${ELSE_LIGHT:-}${ctype}-xhdpi/"*.png "${THEME_DIR}-xhdpi/xfwm4" cp -r "${SRC_DIR}/main/xfwm4/themerc${ELSE_LIGHT:-}" "${THEME_DIR}-xhdpi/xfwm4/themerc" + + mkdir -p "${THEME_DIR}/plank" + if [[ "$color" == '-light' ]]; then + cp -r "${SRC_DIR}/main/plank/theme-light/"* "${THEME_DIR}/plank" + else + cp -r "${SRC_DIR}/main/plank/theme-dark/"* "${THEME_DIR}/plank" + fi } themes=() diff --git a/src/main/plank/theme-dark/dock.theme b/src/main/plank/theme-dark/dock.theme new file mode 100644 index 00000000..1b749eb5 --- /dev/null +++ b/src/main/plank/theme-dark/dock.theme @@ -0,0 +1,64 @@ +#This file based on: +#https://git.launchpad.net/plank/tree/data/themes/Default/dock.theme + +[PlankTheme] +#The roundness of the top corners. +TopRoundness=12 +#The roundness of the bottom corners. +BottomRoundness=0 +#The thickness (in pixels) of lines drawn. +LineWidth=0 +#The color (RGBA) of the outer stroke. +OuterStrokeColor=0;;0;;0;;0 +#The starting color (RGBA) of the fill gradient. +FillStartColor=33;;33;;33;;255 +#The ending color (RGBA) of the fill gradient. +FillEndColor=33;;33;;33;;255 +#The color (RGBA) of the inner stroke. +InnerStrokeColor=0;;0;;0;;0 + +[PlankDockTheme] +#The padding on the left/right dock edges, in tenths of a percent of IconSize. +HorizPadding=1 +#The padding on the top dock edge, in tenths of a percent of IconSize. +TopPadding=2 +#The padding on the bottom dock edge, in tenths of a percent of IconSize. +BottomPadding=1 +#The padding between items on the dock, in tenths of a percent of IconSize. +ItemPadding=2 +#The size of item indicators, in tenths of a percent of IconSize. +IndicatorSize=5 +#The size of the icon-shadow behind every item, in tenths of a percent of IconSize. +IconShadowSize=0 +#The height (in percent of IconSize) to bounce an icon when the application sets urgent. +UrgentBounceHeight=1.6666666666666667 +#The height (in percent of IconSize) to bounce an icon when launching an application. +LaunchBounceHeight=0.625 +#The opacity value (0 to 1) to fade the dock to when hiding it. +FadeOpacity=1 +#The amount of time (in ms) for click animations. +ClickTime=0 +#The amount of time (in ms) to bounce an urgent icon. +UrgentBounceTime=600 +#The amount of time (in ms) to bounce an icon when launching an application. +LaunchBounceTime=600 +#The amount of time (in ms) for active window indicator animations. +ActiveTime=150 +#The amount of time (in ms) to slide icons into/out of the dock. +SlideTime=300 +#The time (in ms) to fade the dock in/out on a hide (if FadeOpacity is < 1). +FadeTime=250 +#The time (in ms) to slide the dock in/out on a hide (if FadeOpacity is 1). +HideTime=250 +#The size of the urgent glow (shown when dock is hidden), in tenths of a percent of IconSize. +GlowSize=30 +#The total time (in ms) to show the hidden-dock urgent glow. +GlowTime=10000 +#The time (in ms) of each pulse of the hidden-dock urgent glow. +GlowPulseTime=2000 +#The hue-shift (-180 to 180) of the urgent indicator color. +UrgentHueShift=150 +#The time (in ms) to move an item to its new position or its addition/removal to/from the dock. +ItemMoveTime=450 +#Whether background and icons will unhide/hide with different speeds. The top-border of both will leave/hit the screen-edge at the same time. +CascadeHide=true diff --git a/src/main/plank/theme-light/dock.theme b/src/main/plank/theme-light/dock.theme new file mode 100644 index 00000000..c24eb46e --- /dev/null +++ b/src/main/plank/theme-light/dock.theme @@ -0,0 +1,64 @@ +#This file based on: +#https://git.launchpad.net/plank/tree/data/themes/Default/dock.theme + +[PlankTheme] +#The roundness of the top corners. +TopRoundness=12 +#The roundness of the bottom corners. +BottomRoundness=0 +#The thickness (in pixels) of lines drawn. +LineWidth=0 +#The color (RGBA) of the outer stroke. +OuterStrokeColor=0;;0;;0;;0 +#The starting color (RGBA) of the fill gradient. +FillStartColor=242;;242;;242;;255 +#The ending color (RGBA) of the fill gradient. +FillEndColor=242;;242;;242;;255 +#The color (RGBA) of the inner stroke. +InnerStrokeColor=0;;0;;0;;0 + +[PlankDockTheme] +#The padding on the left/right dock edges, in tenths of a percent of IconSize. +HorizPadding=1 +#The padding on the top dock edge, in tenths of a percent of IconSize. +TopPadding=2 +#The padding on the bottom dock edge, in tenths of a percent of IconSize. +BottomPadding=1 +#The padding between items on the dock, in tenths of a percent of IconSize. +ItemPadding=2 +#The size of item indicators, in tenths of a percent of IconSize. +IndicatorSize=5 +#The size of the icon-shadow behind every item, in tenths of a percent of IconSize. +IconShadowSize=0 +#The height (in percent of IconSize) to bounce an icon when the application sets urgent. +UrgentBounceHeight=1.6666666666666667 +#The height (in percent of IconSize) to bounce an icon when launching an application. +LaunchBounceHeight=0.625 +#The opacity value (0 to 1) to fade the dock to when hiding it. +FadeOpacity=1 +#The amount of time (in ms) for click animations. +ClickTime=0 +#The amount of time (in ms) to bounce an urgent icon. +UrgentBounceTime=600 +#The amount of time (in ms) to bounce an icon when launching an application. +LaunchBounceTime=600 +#The amount of time (in ms) for active window indicator animations. +ActiveTime=150 +#The amount of time (in ms) to slide icons into/out of the dock. +SlideTime=300 +#The time (in ms) to fade the dock in/out on a hide (if FadeOpacity is < 1). +FadeTime=250 +#The time (in ms) to slide the dock in/out on a hide (if FadeOpacity is 1). +HideTime=250 +#The size of the urgent glow (shown when dock is hidden), in tenths of a percent of IconSize. +GlowSize=30 +#The total time (in ms) to show the hidden-dock urgent glow. +GlowTime=10000 +#The time (in ms) of each pulse of the hidden-dock urgent glow. +GlowPulseTime=2000 +#The hue-shift (-180 to 180) of the urgent indicator color. +UrgentHueShift=150 +#The time (in ms) to move an item to its new position or its addition/removal to/from the dock. +ItemMoveTime=450 +#Whether background and icons will unhide/hide with different speeds. The top-border of both will leave/hit the screen-edge at the same time. +CascadeHide=true diff --git a/src/sass/gtk/_common-3.0.scss b/src/sass/gtk/_common-3.0.scss index c5c3dbe5..6fec1c9b 100644 --- a/src/sass/gtk/_common-3.0.scss +++ b/src/sass/gtk/_common-3.0.scss @@ -1377,7 +1377,7 @@ headerbar { @extend %titlebar-button; } - separator.titlebutton { + separator.titlebutton, separator.sidebar { margin-top: $large-size / 4; margin-bottom: $large-size / 4; background-color: transparent; @@ -2190,6 +2190,7 @@ switch { background-color: $text-disabled; background-clip: padding-box; font-size: 0; + color: transparent; &:checked { background-color: $primary; @@ -2198,21 +2199,22 @@ switch { &:disabled { opacity: 0.5; } // hide on/off icons for >=3.24.5 - image { - margin: -8px; - -gtk-icon-transform: scale(0); - } + // image { + // margin: -8px; + // -gtk-icon-transform: scale(0); + // } slider { transition: all $duration $ease-out; min-width: $small-size - 4px; min-height: $small-size - 4px; - margin: 1px; + margin: if($variant == 'light', 1px, 0); border-radius: $circular-radius; outline: none; box-shadow: none; background-color: white; border: none; + color: transparent; } &:focus slider, diff --git a/src/sass/gtk/apps/_budgie.scss b/src/sass/gtk/apps/_budgie.scss index 40324b81..f93f12ba 100644 --- a/src/sass/gtk/apps/_budgie.scss +++ b/src/sass/gtk/apps/_budgie.scss @@ -27,14 +27,23 @@ // Budgie popover .budgie-popover { - border-style: solid; - border-width: 1px; - border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.2) rgba(0, 0, 0, 0.3); - border-radius: $corner-radius; - box-shadow: $shadow-z4; - background-color: $surface; + @if $rimless == 'true' { + border: none; + box-shadow: $shadow-z4; + } @else if $variant == 'dark' { + border: 1px solid highlight($surface); + box-shadow: $shadow-z4, 0 0 0 1px $window-border; + background-clip: border-box; + } @else { + border: 1px solid $border; + box-shadow: $shadow-z4; + background-clip: padding-box; + } - .container { padding: $space-size; } + background-color: $popover; + border-radius: $menu-radius; + + .container { padding: 0; } separator { margin: $space-size / 2 0; } @@ -43,25 +52,19 @@ list { background-color: transparent; } row { - padding: 0; - &:hover { box-shadow: none; } button { @extend %button-flat-simple; - border-radius: $corner-radius - $space-size; + // border-radius: $corner-radius; } } - scrolledwindow.sidebar.categories { // AppMenu - background-color: $fill; - } - // AppMenu (Elementary) scrolledwindow.sidebar:not(.categories) { background-color: $fill; border-right: none; - border-bottom-left-radius: $corner-radius; + border-bottom-left-radius: $menu-radius; list > row.activatable { @extend %row_activatable; @@ -69,9 +72,17 @@ } } + treeview.view.sidebar { + border-right: none; + background: none; + + &:hover { background-color: $overlay-hover; } + &:selected { background-color: $overlay-active; } + } + &.bottom scrolledwindow.sidebar:not(.categories) { - padding-top: $corner-radius; - border-top-left-radius: $corner-radius; + padding-top: $menu-radius; + border-top-left-radius: $menu-radius; border-bottom-left-radius: 0; } @@ -88,19 +99,7 @@ } } - button { border-radius: $corner-radius - $space-size; } - - button.flat:not(.image-button) { - min-height: $menuitem-size; - padding: 0 8px; - color: $text; - font-weight: normal; - border-radius: $corner-radius - $space-size; - - &:disabled { color: $text-disabled; } - } - - &.budgie-menu { + &.budgie-menu { // Budgie AppMenu .container { padding: 0; } .sidebar, @@ -115,20 +114,23 @@ font-size: 120%; } - button.flat:not(.image-button):not(.indicator-item) { - @extend %row_activatable; - min-height: 32px; - padding: 0 8px; + scrolledwindow.sidebar.categories { + background-color: $fill; + padding-bottom: $menu-radius; + + button.flat.radio.category-button { + @extend %button-flat; + border-radius: 0; + } + } + + scrolledwindow > viewport.frame > list > row.activatable > button.flat { border-radius: 0; - - &:checked { @extend %selected_items; } - - &:checked:disabled { background-color: transparent; } // remove pointless indicator } } &.user-menu { - // .container { padding: $space-size; } + .container { padding: $space-size; } list, row { // reset styling @@ -146,9 +148,6 @@ button.indicator-item { transition: none; animation: none; - - &:hover { - } } } } @@ -167,8 +166,8 @@ .name-button { image { - &:dir(ltr) { margin-right: 8px - 5px; } - &:dir(rtl) { margin-left: 8px - 5px; } + &:dir(ltr) { margin-right: $space-size / 2; } + &:dir(rtl) { margin-left: $space-size / 2; } } } @@ -295,7 +294,7 @@ color: on($panel, secondary); font-weight: 500; - &.transparent { background-color: $scrim; } + &.transparent { background-color: rgba($panel, 0.75); } button { @extend %button-flat-simple; @@ -366,6 +365,8 @@ menubar, .menubar { color: on($panel, secondary); + box-shadow: none; + border: none; > menuitem { color: on($panel, secondary); @@ -491,7 +492,7 @@ $pos_list: ((top, bottom), (bottom, top), (left, right), (right, left)); stackswitcher button { margin: -4px 0 -5px; // remove unwanted vertical margins padding: 0 16px; - min-height: $medium-size; + min-height: $small-size; } } @@ -522,6 +523,7 @@ $pos_list: ((top, bottom), (bottom, top), (left, right), (right, left)); .powerstrip button { margin: 2px 0 1px; padding: ($large-size - 24px) / 2; + border-radius: $circular-radius; } .option-subtitle { font-size: smaller; } @@ -585,6 +587,44 @@ calendar.raven-calendar { } } +// notification list +.raven-notifications-view { + > .raven-background > viewport.frame { + padding: 0; // reset padding for full-width list node + + > list > row.activatable { + margin-left: -$space-size; + margin-right: -$space-size / 2; + + .raven-notifications-group-header { padding: 0 $space-size * 2; } + + // sub-list rows grouping + list { + padding: $space-size; + background: none; + + > row.activatable { + border: none; + padding: $space-size; + padding-left: $space-size * 2; + margin: $space-size / 2; + border-radius: $corner-radius; + background-color: $fill; + + &:hover, &:selected { + background-color: $divider; + } + } + } + + &:selected, &:selected:hover, &:hover, &:active, &:focus { + background: none; + box-shadow: none; + } + } + } +} + // Notifications .budgie-notification-window { background-color: transparent; } @@ -633,8 +673,9 @@ calendar.raven-calendar { } %budgie_dialog { - box-shadow: inset 0 1px highlight($surface); background-color: $surface; + border: none; + padding: 0; } // Session Dialog @@ -643,7 +684,14 @@ calendar.raven-calendar { .budgie-run-dialog { @extend %budgie_dialog; - &.background.csd, decoration { border-radius: $window-radius $window-radius $window-radius $window-radius; } + &.background, & > decoration { + border-radius: $window-radius; + } + + & > decoration { + border: none; + box-shadow: $shadow-z16, 0 0 0 1px $window-border; + } label:not(:last-child), .dialog-title { diff --git a/src/sass/gtk/apps/_gnome-3.0.scss b/src/sass/gtk/apps/_gnome-3.0.scss index 0f1c0be8..b3832616 100644 --- a/src/sass/gtk/apps/_gnome-3.0.scss +++ b/src/sass/gtk/apps/_gnome-3.0.scss @@ -583,6 +583,7 @@ window.background.csd { list { // left-pane background-color: transparent; + padding: $space-size / 2; row.activatable { border-radius: $corner-radius; @@ -591,10 +592,16 @@ window.background.csd { background-color: transparent; } } + + separator { @extend %hide_separators; } } } } } + + hdycolumn stack frame.view > stack > stack list > separator { + background-color: $border; + } } dialog.background.csd {