_theme.scss
ASCII text
1$dark-theme: false !default; 2$light-topbar: false !default; 3$compact: false !default; 4$toolkit: "none" !default; 5 6$asset-suffix: if($dark-theme, "-dark", ""); 7 8// 9// Sizes 10// 11 12$container-padding: 6px; 13$small-size: 24px; 14$medium-size: 36px; 15$large-size: 48px; 16 17@if $compact { 18$container-padding: 4px; 19$small-size: 24px; 20$medium-size: 32px; 21$large-size: 40px; 22} 23 24$bar-size: 4px; 25 26$menu-item-height: 32px; 27$menu-item-dense-height: 28px; 28 29@if $compact { 30$menu-item-height: 28px; 31} 32 33// 34// Radii 35// 36 37$corner-radius: 4px; 38$circular-radius: 9999px; 39 40// 41// Durations 42// 43 44$duration: 75ms; 45$ripple-fade-in-duration: 225ms; 46$ripple-fade-out-duration: 300ms; 47$ripple-fade-out-opacity-duration: 1200ms; 48 49// 50// Timing functions 51// 52 53$ease: cubic-bezier(.4, 0, .2, 1); 54$ease-out: cubic-bezier(0, 0, .2, 1); 55$ease-in: cubic-bezier(.4, 0, 1, 1); 56$ease-in-out: cubic-bezier(.4, 0, .6, 1); 57 58// 59// Transition shorthands 60// 61 62$transition: all $duration $ease-out; 63$transition-shadow: box-shadow $duration $ease-out; 64 65// 66// Shadows 67// 68 69// Values are based on: 70// https://github.com/material-components/material-components-web/blob/master/packages/mdc-elevation/_elevation-theme.scss 71 72$shadow-z1: 730 2px 1px -1px rgba(black, .2), 740 1px 1px 0 rgba(black, .14), 750 1px 3px 0 rgba(black, .12); 76$shadow-z2: 770 3px 1px -2px rgba(black, .2), 780 2px 2px 0 rgba(black, .14), 790 1px 5px 0 rgba(black, .12); 80$shadow-z3: 810 3px 3px -2px rgba(black, .2), 820 3px 4px 0 rgba(black, .14), 830 1px 8px 0 rgba(black, .12); 84$shadow-z4: 850 2px 4px -1px rgba(black, .2), 860 4px 5px 0 rgba(black, .14), 870 1px 10px 0 rgba(black, .12); 88$shadow-z6: 890 3px 5px -1px rgba(black, .2), 900 6px 10px 0 rgba(black, .14), 910 1px 18px 0 rgba(black, .12); 92$shadow-z8: 930 5px 5px -3px rgba(black, .2), 940 8px 10px 1px rgba(black, .14), 950 3px 14px 2px rgba(black, .12); 96$shadow-z12: 970 7px 8px -4px rgba(black, .2), 980 12px 17px 2px rgba(black, .14), 990 5px 22px 4px rgba(black, .12); 100$shadow-z16: 1010 8px 10px -5px rgba(black, .2), 1020 16px 24px 2px rgba(black, .14), 1030 6px 30px 5px rgba(black, .12); 104$shadow-z24: 1050 11px 15px -7px rgba(black, .2), 1060 24px 38px 3px rgba(black, .14), 1070 9px 46px 8px rgba(black, .12); 108 109$text-shadow: 1100 1px 1px rgba(black, .2), 1110 1px 2px rgba(black, .14), 1120 1px 3px rgba(black, .12); 113 114// workaround for selection-mode checkboxes 115$icon-shadow-z2: 1160 1px 1px rgba(black, .2), 1170 2px 2px rgba(black, .14), 1180 1px 5px rgba(black, .12); 119$icon-shadow-z4: 1200 2px 3px rgba(black, .2), 1210 4px 5px rgba(black, .14), 1220 1px 10px rgba(black, .12); 123 124// Note that GTK 3 does not support blur below 2px, 125// and its blur is huge compared to web rendering. 126// See: https://gitlab.gnome.org/GNOME/gtk/issues/511 127@if $toolkit == "gtk3" { 128$shadow-z1: 1290 2px 2px -2px rgba(black, .3), 1300 1px 2px -1px rgba(black, .24), 1310 1px 2px -.6px rgba(black, .17); 132$shadow-z2: 1330 3px 2px -3px rgba(black, .3), 1340 2px 2px -1px rgba(black, .24), 1350 1px (5px * .6) 0 rgba(black, .12); 136$shadow-z3: 1370 3px 2px -2px rgba(black, .2), 1380 3px (4px * .6) 0 rgba(black, .14), 1390 1px (8px * .6) 0 rgba(black, .12); 140$shadow-z4: 1410 2px (4px * .6) -1px rgba(black, .2), 1420 4px (5px * .6) 0 rgba(black, .14), 1430 1px (10px * .6) 0 rgba(black, .12); 144$shadow-z6: 1450 3px (5px * .6) -1px rgba(black, .2), 1460 6px (10px * .6) 0 rgba(black, .14), 1470 1px (18px * .6) 0 rgba(black, .12); 148$shadow-z8: 1490 5px (5px * .6) -3px rgba(black, .2), 1500 8px (10px * .6) 1px rgba(black, .14), 1510 3px (14px * .6) 2px rgba(black, .12); 152$shadow-z12: 1530 7px (8px * .6) -4px rgba(black, .2), 1540 12px (17px * .6) 2px rgba(black, .14), 1550 5px (22px * .6) 4px rgba(black, .12); 156$shadow-z16: 1570 8px (10px * .6) -5px rgba(black, .2), 1580 16px (24px * .6) 2px rgba(black, .14), 1590 6px (30px * .6) 5px rgba(black, .12); 160$shadow-z24: 1610 11px (15px * .6) -7px rgba(black, .2), 1620 24px (38px * .6) 3px rgba(black, .14), 1630 9px (46px * .6) 8px rgba(black, .12); 164 165$text-shadow: 1660 1px 1px rgba(black, .2), 1670 1px 2px rgba(black, .14), 1680 1px 3px rgba(black, .12); 169 170$icon-shadow-z2: 1710 1px 1px rgba(black, .2), 1720 2px 2px rgba(black, .14), 1730 1px (5px * .6) rgba(black, .12); 174$icon-shadow-z4: 1750 2px 2px rgba(black, .2), 1760 4px (5px * .6) rgba(black, .14), 1770 1px (10px * .6) rgba(black, .12); 178} 179 180@if $toolkit == "st" { 181$shadow-z1: 0 1px 1px rgba(black, .36); 182$shadow-z2: 0 1px 2px rgba(black, .4); 183$shadow-z4: 0 2px 8px rgba(black, .44); 184$shadow-z8: 0 5px 16px rgba(black, .5); 185$shadow-z16: 0 8px 24px rgba(black, .68); // TODO 186} 187