_common.scss
ASCII text
1// defines font family and standard font size across the whole theme 2// em is preferred for better support for text scaling 3stage { 4@include type(body2); 5 6font-family: $font-family; 7color: $on-surface; 8} 9.cinnamon-link { 10color: $primary; 11font-style: italic; 12&:hover { 13color: $primary; 14} 15} 16.label-shadow { 17color: transparent; 18} 19// themeing for various standard elements 20StScrollBar { 21padding: 0px; 22StButton { 23&#vhandle, &#hhandle { 24background-color: disabled($on-surface); 25border-radius: 100px; 26margin: 4px; 27&:hover { 28background-color: hint($on-surface); 29} 30} 31} 32StBin#trough { 33margin: 4px; 34border-radius: 100px; 35background-color: divider($on-surface); 36} 37} 38StScrollView { 39&.vfade { 40-st-vfade-offset: 32px; 41} 42&.hfade { 43-st-hfade-offset: 32px; 44} 45StScrollBar { 46min-width: 16px; 47min-height: 16px; 48} 49} 50.separator { 51@extend %separator-shared; 52} 53.slider { 54@extend %slider-shared; 55} 56#Tooltip { 57@include type(caption); 58 59padding: 6px 8px; 60color: $on-tooltip; 61text-align: center; 62border-radius: $corner-radius; 63background-color: $tooltip; 64} 65// applet menus. Note that cinnamon versions before 3.2 uses deprecated styles 66// .popup-menu and .popup-menu-boxpointer. These are excluded as it is not possible 67// due to other upstream changes to create a universal cinnamon theme that supports pre and post cinnamon 3.2 68.menu { 69@extend %menu-shared; 70min-width: 100px; 71margin: 4px; 72} 73// new style-classes for alternative stock menu 74.menu-top-box { 75spacing: 5px; 76} 77.menu-systembuttons-box { 78padding: 10px; 79} 80.popup-sub-menu { 81background-color: entry-fill($on-surface); 82} 83.popup-menu-arrow { 84icon-size: 1.14em; 85} 86// scale view right click menu 87.popup-combo-menu { 88@extend %menu-shared; 89padding: 8px 0; 90} 91.popup-menu-content{ 92padding: 8px 0; 93} 94 95// individual menu entries are themed here 96.popup-menu-item { 97padding: 0.4em 16px; 98spacing: 8px; 99transition-duration: $duration; 100&:active { 101background-color: overlay("hover", $on-surface); 102color: $on-surface; 103transition-duration: 0ms; 104} 105&:insensitive { color: disabled($on-surface); } 106} 107.popup-image-menu-item { 108color: hint($on-surface); 109} 110.popup-combobox-item { 111padding: 0.4em 16px; 112} 113// sliders and separators in menus 114.popup-separator-menu-item { 115@extend %separator-shared; 116} 117.popup-slider-menu-item { 118@extend %slider-shared; 119} 120.popup-device-menu-item { 121spacing: .5em; 122} 123.popup-inactive-menu-item { 124color: $on-surface; 125&:insensitive { color: disabled($on-surface); } 126} 127.popup-subtitle-menu-item { 128@include type(subtitle2); 129} 130.popup-menu-icon { 131icon-size: 1.14em; 132} 133.popup-menu-item-dot { 134} 135.popup-submenu-menu-item:open { 136} 137.popup-alternating-menu-item:alternate { 138@include type(subtitle2); 139} 140// toggles in menus 141.toggle-switch { 142width: 40px; 143height: 20px; 144} 145.toggle-switch-us, .toggle-switch-intl { 146background-image: url(assets/toggle-off.svg); 147&:checked { 148background-image: url(assets/toggle-on.svg); 149} 150} 151.nm-menu-item-icons { 152spacing: .5em; 153icon-size: 1.14em; 154} 155// panels can be on any side of the screen 156// some panel item theming is specific to panel orientation and is included in this section 157// each panel is also split into three zones 158// dnd is for panel edit mode 159// dummy is for adding or moving panels 160#panel { 161color: hint($on-titlebar); 162background-color: $scrim; 163height: 2.5em; 164width: 3.2em; 165&:highlight { 166background-color: stroke($on-titlebar); 167} 168} 169.panel-dummy { 170background-color: rgba(255, 0, 0, 0.6); 171&:entered { 172background-color: rgba(0, 255, 0, 0.6); 173} 174} 175.panelLeft { 176spacing: 4px; 177&:dnd { 178background-color: rgba(255, 0, 0, 0.6); 179} 180&:ltr { 181padding-right: 4px; 182} 183&:rtl { 184padding-left: 4px; 185} 186&.vertical { 187padding: 0; 188&:dnd { 189} 190} 191} 192.panelCenter { 193spacing: 4px; 194&:dnd { 195background-color: rgba(0, 255, 0, 0.6); 196} 197&.vertical { 198padding-left: 0; 199padding-right: 0; 200&:dnd { 201} 202} 203} 204.panelRight { 205spacing: 4px; 206&:dnd { 207background-color: rgba(0, 0, 255, 0.6); 208} 209&:ltr { 210padding-left: 0; 211spacing: 0; 212} 213&:rtl { 214padding-right: 0; 215spacing: 0; 216} 217&.vertical { 218padding: 0; 219&:dnd { 220} 221} 222} 223// orientation specific panel-item theming is defined here 224// non orientation specific theming for panel-items is defined later in the stylesheet 225.panel-top { 226.window-list-item-box { 227&:hover { 228box-shadow: 0 3px 0 0 $primary inset; 229} 230&:active, &:checked, &:focus { 231&:hover { 232box-shadow: 0 3px 0 0 $primary inset; 233} 234} 235} 236.grouped-window-list-item-box { 237&:hover { 238box-shadow: 0 3px 0 0 $primary inset; 239} 240&:active, &:checked { 241&:hover { 242box-shadow: 0 3px 0 0 $primary inset; 243} 244} 245&:focus { 246&:hover { 247box-shadow: 0 3px 0 0 $primary inset; 248} 249} 250} 251.grouped-window-list-badge { 252margin-top: 2px; 253} 254.workspace-switcher, .workspace-graph, .workspace-button { 255padding: 1px 4px; 256} 257.workspace-graph, .workspace-button {; 258&:hover { 259box-shadow: 0 3px 0 0 $primary inset; 260} 261} 262.applet-box { 263padding: 0 4px; 264&:hover { 265box-shadow: 0 3px 0 0 $primary inset; 266} 267} 268.applet-label { 269} 270.panel-launchers .launcher:hover { 271box-shadow: 0 3px 0 0 $primary inset; 272} 273.applet-separator { 274padding: 3px 4px; 275} 276.systray:hover { 277box-shadow: 0 4px 0 0 $primary inset; 278} 279} 280.panel-bottom { 281.window-list-item-box { 282&:hover { 283box-shadow: 0 -3px 0 0 $primary inset; 284} 285&:active, &:checked, &:focus { 286&:hover { 287box-shadow: 0 -3px 0 0 $primary inset; 288} 289} 290} 291.grouped-window-list-item-box { 292&:hover { 293box-shadow: 0 -3px 0 0 $primary inset; 294} 295&:active, &:checked { 296&:hover { 297box-shadow: 0 -3px 0 0 $primary inset; 298} 299} 300&:focus { 301&:hover { 302box-shadow: 0 -3px 0 0 $primary inset; 303} 304} 305} 306.workspace-switcher, .workspace-graph, .workspace-button { 307padding: 1px 4px; 308} 309.workspace-graph, .workspace-button {; 310&:hover { 311box-shadow: 0 -3px 0 0 $primary inset; 312} 313} 314.applet-box { 315padding: 0 4px; 316&:hover { 317box-shadow: 0 -3px 0 0 $primary inset; 318} 319} 320.applet-label { 321} 322.panel-launchers .launcher:hover { 323box-shadow: 0 -3px 0 0 $primary inset; 324} 325.applet-separator { 326padding: 3px 4px; 327} 328.systray:hover { 329box-shadow: 0 4px 0 0 $primary inset; 330} 331} 332.panel-left { 333.window-list-item-box { 334&:hover { 335box-shadow: 3px 0 0 0 $primary inset; 336} 337&:active, &:checked, &:focus { 338&:hover { 339box-shadow: 3px 0 0 0 $primary inset; 340} 341} 342} 343.grouped-window-list-item-box { 344&:hover { 345box-shadow: 3px 0 0 0 $primary inset; 346} 347&:active, &:checked { 348&:hover { 349box-shadow: 3px 0 0 0 $primary inset; 350} 351} 352&:focus { 353&:hover { 354box-shadow: 3px 0 0 0 $primary inset; 355} 356} 357} 358.grouped-window-list-badge { 359margin-left: 2px; 360} 361.workspace-switcher, .workspace-graph, .workspace-button { 362padding: 4px 1px; 363min-height: 1.2em; 364} 365.workspace-graph, .workspace-button {; 366&:hover { 367box-shadow: 3px 0 0 0 $primary inset; 368} 369} 370.applet-box { 371padding: 4px 0; 372&:hover { 373box-shadow: 3px 0 0 0 $primary inset; 374} 375} 376.applet-label { 377} 378.panel-launchers .launcher:hover { 379box-shadow: 3px 0 0 0 $primary inset; 380} 381.applet-separator { 382padding: 4px 3px; 383} 384.systray:hover { 385box-shadow: 4px 0 0 0 $primary inset; 386} 387} 388.panel-right { 389.window-list-item-box { 390&:hover { 391box-shadow: -3px 0 0 0 $primary inset; 392} 393&:active, &:checked, &:focus { 394&:hover { 395box-shadow: -3px 0 0 0 $primary inset; 396} 397} 398} 399.grouped-window-list-item-box { 400&:hover { 401box-shadow: -3px 0 0 0 $primary inset; 402} 403&:active, &:checked { 404&:hover { 405box-shadow: -3px 0 0 0 $primary inset; 406} 407} 408&:focus { 409&:hover { 410box-shadow: -3px 0 0 0 $primary inset; 411} 412} 413} 414.workspace-switcher, .workspace-graph, .workspace-button { 415padding: 4px 1px; 416min-height: 1.2em; 417} 418.workspace-graph, .workspace-button {; 419&:hover { 420box-shadow: -3px 0 0 0 $primary inset; 421} 422} 423.applet-box { 424padding: 4px 0; 425&:hover { 426box-shadow: -3px 0 0 0 $primary inset; 427} 428} 429.applet-label { 430} 431.panel-launchers .launcher:hover { 432box-shadow: -3px 0 0 0 $primary inset; 433} 434.applet-separator { 435padding: 4px 3px; 436} 437.systray:hover { 438box-shadow: -4px 0 0 0 $primary inset; 439} 440} 441// keyboard layout applet 442.panel-status-button { 443@include type(subtitle2); 444-natural-hpadding: 4px; 445-minimum-hpadding: 4px; 446color: hint($on-titlebar); 447&:hover { 448color: $on-titlebar; 449} 450} 451// used by power applet to warn of low battery 452.system-status-icon { 453icon-size: 1.14em; 454padding: 0; 455spacing: 0; 456&.warning { 457color: $warning; 458} 459&.error { 460color: $error; 461} 462} 463// a non feature - not worth themeing 464.panel-corner { 465&:active { 466} 467&:overview { 468} 469&:focus { 470} 471} 472// expo & scale view section 473#overview { 474spacing: 12px; 475} 476.overview-empty-placeholder { 477@extend %osd-info-workspace-shared; 478 479} 480.window-caption { 481@include type(caption); 482 483background-color: rgba(0, 0, 0, 0.01); 484color: hint($on-titlebar); 485padding: 4px 6px; 486text-align: center; 487height: 1.5em; 488-cinnamon-caption-spacing: 12px; 489&#selected, &:focus { 490color: $on-titlebar; 491box-shadow: 0 -3px 0 0 $primary inset; 492} 493} 494.workspace-controls { 495visible-height: 32px; 496} 497.workspace-thumbnails-background { 498color: hint($on-titlebar); 499background-color: fill($on-dark); 500border: none; 501padding: 8px; 502border-radius: $corner-radius 0 0 $corner-radius; 503&:rtl { border-radius: 0 $corner-radius $corner-radius 0;} 504} 505.workspace-thumbnails { 506spacing: 32px; 507} 508.workspace-add-button { 509background-image: url(assets/add-workspace.svg); 510height: 200px; 511width: 35px; 512transition-duration: shorter_duration; 513&:hover { 514background-image: url(assets/add-workspace-hover.svg); 515} 516&:active { 517background-image: url(assets/add-workspace-active.svg); 518} 519} 520.workspace-close-button, .window-close { 521background-image: url(assets/window-close.svg); 522height: 32px; 523width: 32px; 524-cinnamon-close-overlap: 20px; 525&:hover { 526background-image: url(assets/window-close-hover.svg); 527} 528&:active { 529background-image: url(assets/window-close-active.svg); 530} 531&:rtl { 532-st-background-image-shadow: 2px 2px 6px rgba(0,0,0,0.5); 533} 534} 535.window-border { 536border: 1px solid divider($on-surface); 537} 538.window-close-area { 539background-image: url(assets/trash-icon.png); 540background-size: 100px; 541background-color: $scrim-alt; 542border: 1px solid divider($on-surface); 543border-bottom-width: 0; 544border-radius: 20px 20px 0 0; 545height: 120px; 546width: 400px; 547} 548// this is OK with solid or transparent backgrounds 549.expo-background { 550background-color: $scrim; 551} 552// this always looks better semi transparent 553.workspace-overview-background-shade { 554background-color: $scrim; 555} 556.expo-workspace-thumbnail-frame { 557border: 1px solid divider($on-surface); 558&#active { 559border: 1px solid $primary; 560} 561} 562// dialog box for the cinnamon debug utility 563#LookingGlassDialog { 564@extend %osd-panel-shared; 565 566spacing: 4px; 567padding: 8px; 568} 569// the calendar displayed by the calendar applet is a heavily modified menu and inherits from the .menu selectosr 570// indivudual elements within the menu can be themed seperately with these selectors 571.calendar { 572padding: 4px 8px; 573spacing-rows: 2px; 574spacing-columns: 4px; 575} 576// also covers the year label 577.datemenu-date-label { 578@include type(headline6); 579 580height: $menuitem-size - 2px * 2; 581margin: 2px; 582padding: 6px 16px; 583border-radius: $corner-radius; 584color: $on-surface; 585text-align: center; 586&:focus { background-color: divider($on-surface) }; 587} 588.calendar-month-label { 589@include type(subtitle2); 590 591height: $menuitem-size - 6px * 2; 592margin: 2px; 593padding: 6px 16px; 594border-radius: $corner-radius; 595color: $on-surface; 596text-align: center; 597&:focus { background-color: divider($on-surface) }; 598} 599.calendar-change-month-back { 600@extend %calendar-shared; 601 602background-image: url(assets/calendar-arrow-left.svg); 603&:rtl { 604background-image: url(assets/calendar-arrow-right.svg); 605} 606} 607.calendar-change-month-forward { 608@extend %calendar-shared; 609 610background-image: url(assets/calendar-arrow-right.svg); 611&:rtl { 612background-image: url(assets/calendar-arrow-left.svg); 613} 614} 615.calendar-day-base { 616@include type(caption); 617 618text-align: center; 619width: $menuitem-size; height: $menuitem-size; 620padding: 0; 621margin: 2px; 622border-radius: 100px; 623&:hover,&:focus { background-color: stroke($on-titlebar); } 624&:active { 625color: $on-primary; 626background-color: $primary; 627border-color: transparent; 628} 629} 630.calendar-week-number { 631@include type(caption); 632 633width: $menuitem-size - 7px; height: $menuitem-size; 634margin: 2px; 635padding: 0; 636border-radius: 100px; 637background-color: transparent; 638color: disabled($on-surface); 639text-align: center; 640} 641.calendar-day-heading { 642@include type(caption); 643 644width: $menuitem-size; height: $menuitem-size - 7px; 645margin: 2px; 646padding: 0; 647border-radius: 100px; 648background-color: transparent; 649color: disabled($on-surface); 650text-align: center; 651} 652.calendar-day { 653border-width: 0; 654} 655.calendar-day-top { 656border-top-width: 0; 657} 658.calendar-day-left { 659border-left-width: 0; 660} 661.calendar-work-day { 662} 663.calendar-nonwork-day { 664color: $on-surface; 665} 666.calendar-today { 667font-weight: bold; 668border: none; 669} 670.calendar-day-with-events { 671color: $primary; 672font-weight: normal; 673text-decoration: underline; 674background-image: none; 675} 676.calendar-other-month-day { 677color: disabled-hint($on-surface); 678opacity: 0.5; 679} 680.calendar-week-number { 681width: $menuitem-size; height: $menuitem-size - 7px; 682margin: 2px; 683padding: 7px 0 0; 684border-radius: 100px; 685background-color: transparent; 686color: disabled($on-surface); 687font-size: inherit; 688font-weight: bold; 689text-align: center; 690} 691// notification system 692#notification { 693background-color: $surface-z8; 694border-radius: $corner-radius; 695border: 1px solid divider($on-surface); 696padding: 8px; 697spacing-rows: 4px; 698spacing-columns: 8px; 699margin-from-right-edge-of-screen: 20px; 700width: 34em; 701color: $on-surface; 702box-shadow: $shadow-z4; 703&.multi-line-notification { 704padding-bottom: 8px; 705} 706StEntry { 707@extend %dialog-entry-shared; 708} 709.url-highlighter { 710link-color: $primary; 711} 712} 713// min height 159px is required to avoid stretching/distortion of notification image 714.notification-with-image { 715min-height: 159px; 716color: $on-surface; 717} 718#notification-scrollview { 719max-height: 10em; 720> { 721.top-shadow { 722height: 1em; 723} 724.bottom-shadow { 725height: 1em; 726} 727} 728&:ltr > StScrollBar { 729padding-left: 6px; 730} 731&:rtl > StScrollBar { 732padding-right: 6px; 733} 734} 735#notification-body { 736spacing: 4px; 737} 738#notification-actions { 739spacing: 8px; 740} 741.notification-button { 742@extend %button-shared; 743} 744.notification-icon-button { 745@extend %icon-button-shared; 746 747> StIcon { 748icon-size: 1.5em; 749} 750} 751// non 3D alt-tab options 752#altTabPopup { 753padding: 8px; 754spacing: 16px; 755} 756.switcher-list { 757@extend %osd-panel-shared; 758 759transition-duration: $duration; 760.item-box { 761padding: 8px; 762border-radius: $corner-radius; 763&:selected { 764background-color: divider($on-surface); 765} 766} 767.thumbnail-box { 768padding: 2px; 769spacing: 4px; 770} 771.thumbnail { 772width: 256px 773} 774.separator { 775width: 1px; 776background: divider($on-surface); 777} 778} 779.switcher-list-item-container { 780spacing: 8px; 781} 782.thumbnail-scroll-gradient-left { 783background-gradient-direction: horizontal; 784background-gradient-start: rgba(51, 51, 51, 1.0); 785background-gradient-end: rgba(51, 51, 51, 0); 786border-radius: $corner-radius; 787border-radius-topright: 0; 788border-radius-bottomright: 0; 789width: 60px; 790} 791.thumbnail-scroll-gradient-right { 792background-gradient-direction: horizontal; 793background-gradient-start: rgba(51, 51, 51, 0); 794background-gradient-end: rgba(51, 51, 51, 1.0); 795border-radius: $corner-radius; 796border-radius-topleft: 0; 797border-radius-bottomleft: 0; 798width: 60px; 799} 800.switcher-arrow { 801border-color: rgba(0,0,0,0); 802color: hint($on-surface); 803&:highlighted { 804color: $on-surface; 805} 806} 807.switcher-preview-backdrop { 808background-color: $scrim; 809} 810// hot corners animation 811.ripple-box { 812width: 104px; 813height: 104px; 814background-image: url(assets/corner-ripple.png); 815background-color: $primary; 816border-radius: 52px; 817} 818// on screen messages and input boxes 819.modal-dialog { 820@extend %osd-panel-shared; 821 822padding: 16px 20px; 823} 824.modal-dialog-button-box { 825spacing: 16px; 826} 827.modal-dialog-button { 828@extend %button-shared; 829} 830.info-osd { 831@extend %osd-info-workspace-shared; 832} 833// run dialog (ALT-F2) 834.run-dialog-label { 835color: hint($on-surface); 836padding-bottom: .4em; 837} 838.run-dialog-error-label { 839color: $error; 840} 841.run-dialog-error-box { 842padding-top: 16px; 843spacing: 6px; 844} 845.run-dialog-completion-box { 846padding-left: 15px; 847} 848.run-dialog-entry { 849@extend %dialog-entry-shared; 850} 851.run-dialog { 852border-radius: $corner-radius; 853padding: 16px 20px; 854} 855// this is an full screen overlay that is displayed with any cinnamon OSD or modal dialog which needs to always be semi transparent 856.lightbox { 857background-color: $scrim-alt; 858} 859// removable media dialogs 860.cinnamon-mount-operation-icon { 861icon-size: 4.8em; 862} 863.mount-password-reask { 864color: $warning; 865} 866.show-processes-dialog { 867spacing: 24px; 868} 869.mount-question-dialog { 870spacing: 24px; 871} 872.show-processes-dialog-subject { 873@extend %dialogs-subject-shared; 874 875&:rtl { 876@extend %dialogs-subject-rtl-shared; 877} 878} 879.mount-question-dialog-subject { 880@extend %dialogs-subject-shared; 881 882&:rtl { 883@extend %dialogs-subject-rtl-shared; 884} 885} 886.show-processes-dialog-description { 887@extend %dialogs-description-shared; 888 889&:rtl { 890padding-right: 17px; 891} 892} 893.mount-question-dialog-description { 894@extend %dialogs-description-shared; 895 896&:rtl { 897padding-right: 17px; 898} 899} 900.show-processes-dialog-app-list { 901max-height: 200px; 902padding-top: 24px; 903padding-left: 49px; 904padding-right: 32px; 905&:rtl { 906padding-right: 49px; 907padding-left: 32px; 908} 909} 910.show-processes-dialog-app-list-item { 911color: $on-surface; 912&:hover { 913color: $on-surface; 914} 915&:ltr { 916padding-right: 1em; 917} 918&:rtl { 919padding-left: 1em; 920} 921} 922.show-processes-dialog-app-list-item-icon { 923&:ltr { 924padding-right: 17px; 925} 926&:rtl { 927padding-left: 17px; 928} 929} 930.show-processes-dialog-app-list-item-name { 931} 932// desktop zoom feature 933.magnifier-zoom-region { 934border: 3px solid divider($on-surface); 935&.full-screen { 936border-width: 0; 937} 938} 939// on screen keyboard 940#keyboard { 941background-color: $scrim; 942} 943.keyboard-key { 944@extend %icon-button-shared; 945@include type(button); 946} 947.keyboard-layout { 948spacing: 8px; 949padding: 8px; 950} 951.keyboard-row { 952spacing: 16px; 953} 954.keyboard-subkeys { //long press on a key popup 955color: inherit; 956padding: 5px; 957-arrow-border-radius: 0; 958-arrow-background-color: transparent; 959-arrow-border-width: 0; 960-arrow-border-color: transparent; 961-arrow-base: 0; 962-arrow-rise: 0; 963-boxpointer-gap: 5px; 964background-color: $surface-z8; 965border-radius: $corner-radius; 966box-shadow: $shadow-z4; 967} 968// main menu applet 969.menu-favorites-box { 970padding: 8px; 971} 972.menu-favorites-button { 973padding: 0.4em 4px; 974&:hover { 975background-color: divider($on-surface); 976border-radius: $corner-radius; 977color: $on-surface; 978} 979} 980.menu-categories-box { 981padding: 8px; 982} 983.menu-applications-inner-box { 984padding: 8px; 985} 986.menu-applications-outer-box { 987padding: 8px; 988border-radius: $corner-radius; 989} 990.menu-application-button { 991padding: 0.4em 4px; 992&:highlighted { 993font-weight: bold; 994} 995} 996.menu-application-button-selected { 997padding: 0.4em 4px; 998background-color: divider($on-surface); 999border-radius: $corner-radius; 1000color: $on-surface; 1001&:highlighted { 1002font-weight: bold; 1003} 1004} 1005.menu-application-button-label { 1006@extend %menu-button-label-shared; 1007} 1008.menu-category-button { 1009padding: 0.4em 4px; 1010} 1011.menu-category-button-greyed { 1012padding: 0.4em 4px; 1013color: hint($on-surface); 1014font-style: italic; 1015} 1016.menu-category-button-selected { 1017padding: 0.4em 4px; 1018background-color: divider($on-surface); 1019border-radius: $corner-radius; 1020color: $on-surface; 1021&:hover { 1022} 1023} 1024.menu-category-button-label { 1025@extend %menu-button-label-shared; 1026} 1027// in the stock menu app descriptions are shown at the base of the menu 1028.menu-selected-app-box { 1029padding: 8px; 1030margin-bottom: 4px; 1031text-align: right; 1032&:rtl { 1033text-align: left; 1034} 1035} 1036.menu-selected-app-title { 1037@include type(caption); 1038} 1039.menu-selected-app-description { 1040@include type(caption); 1041 1042max-width: 150px; 1043} 1044// the menus search box 1045.menu-search-box { 1046&:ltr { 1047padding-left: 30px; 1048padding-bottom: 5px; 1049padding-top: 5px; 1050} 1051&:rtl { 1052padding-right: 30px; 1053padding-bottom: 5px; 1054padding-top: 5px; 1055} 1056} 1057#menu-search-entry { 1058@extend %dialog-entry-shared; 1059} 1060.menu-search-entry-icon { 1061icon-size: 1em; 1062padding: 0 0; 1063color: disabled($on-surface); 1064} 1065// the window list applet. Some third party applets inherit some of this theming. 1066.window-list-box { 1067@include type(caption); 1068 1069spacing: 4px; 1070padding: 0 3px; 1071&.vertical { 1072spacing: 4px; 1073padding: 3px 0; 1074} 1075#appMenuIcon { 1076} 1077&:highlight { 1078background: stroke($on-titlebar); 1079color: $on-titlebar; 1080} 1081} 1082.window-list-item-label { 1083} 1084// progress was added with cinnamon 3.6 and allows compatible applications to use the window list as a progress bar 1085.window-list-item-box { 1086background-color: rgba(0, 0, 0, 0.01); 1087transition-duration: $duration; 1088&:hover { 1089color: $on-titlebar; 1090} 1091&:active, &:checked, &:focus { 1092background-color: stroke($on-titlebar); 1093color: $on-titlebar; 1094&:hover { 1095color: $on-titlebar; 1096} 1097} 1098.progress { 1099background-color: $success; 1100} 1101} 1102.window-list-item-box.top StLabel, .window-list-item-box.bottom StLabel { 1103padding-left: 3px; 1104} 1105.window-list-item-demands-attention { 1106background-color: $titlebar; 1107color: hint($on-titlebar); 1108} 1109// cinnamon 3.8 will support an improved window-list-thumbnail preview which now has it's own selector 1110.window-list-preview { 1111background-color: $surface-z8; 1112border-radius: $corner-radius; 1113padding: 10px 15px; 1114spacing: 1em; 1115color: $on-surface; 1116box-shadow: $shadow-z8; 1117} 1118// Cinnamon 4.0 has a new grouped window list applet with it's own selectors. 1119// Initial theme support is defined here. Some theming is defined in the panel orientation specific section above. 1120.grouped-window-list { 1121&-thumbnail-label { 1122padding-left: 3px; 1123padding-bottom: 6px; 1124} 1125&-number-label { 1126@include type(caption); 1127 1128z-index: 99; 1129} 1130&-list-button-label { 1131padding-left: 3px; 1132} 1133&-badge { 1134border-radius: $circular-radius; 1135background-color: $panel-solid; 1136} 1137&-thumbnail-alert { 1138background: $warning; 1139} 1140&-item-box { 1141background-color: rgba(0, 0, 0, 0.01); 1142transition-duration: $duration; 1143&:hover { 1144color: $on-titlebar; 1145} 1146&:active, &:checked { 1147background-color: divider($on-titlebar); 1148&:hover { 1149color: $on-titlebar; 1150} 1151} 1152&:focus { 1153background-color: stroke($on-titlebar); 1154color: $on-titlebar; 1155&:hover { 1156color: $on-titlebar; 1157} 1158} 1159.progress { 1160background-color: $success; 1161} 1162} 1163&-item-demands-attention { 1164background-color: $titlebar; 1165color: hint($on-titlebar); 1166} 1167&-thumbnail-menu { 1168padding: 20px; 1169border: none; 1170border-radius: $corner-radius; 1171color: hint($on-titlebar); 1172background: none; 1173.item-box { 1174padding: 8px; 1175spacing: 2px; 1176border-radius: $corner-radius; 1177&:outlined { 1178border: 2px solid divider($on-surface); 1179color: $on-titlebar; 1180} 1181&:selected { 1182background: divider($on-titlebar); 1183color: $on-titlebar; 1184} 1185> StBoxLayout { // icon and title 1186&:ltr { margin: 1px 0 0 6px; } 1187&:rtl { margin: 1px 6px 0 0; } 1188 1189StLabel { padding-bottom: 2px; } 1190} 1191 1192> StButton { // close button 1193&:ltr { margin: 1px 6px 0 0; } 1194&:rtl { margin: 1px 0 0 6px; } 1195} 1196} 1197.thumbnail-box { 1198padding: 2px; 1199} 1200.thumbnail { 1201width: 256px; 1202} 1203.separator { 1204width: 1px; 1205background: divider($on-surface); 1206} 1207} 1208} 1209// the sound player applet 1210.sound-player { 1211StButton { 1212@extend %icon-button-shared; 1213 1214&:small { 1215min-width: $small-size; 1216min-height: $small-size; 1217padding: 4px; 1218StIcon { 1219icon-size: 1em; 1220} 1221} 1222StIcon { 1223icon-size: 1.5em; 1224} 1225} 1226.slider { 1227@extend %slider-shared; 1228 1229height: 5px; 1230} 1231StBoxLayout { 1232spacing: 0.5em; 1233} 1234> StBoxLayout { 1235padding: 5px; 1236} 1237} 1238.sound-player-generic-coverart { 1239background: rgba(0,0,0,0.2); 1240} 1241.sound-player-overlay { 1242background-color: $surface-z8; 1243min-width: 300px; 1244padding: 12px 16px; 1245spacing: 0.5em; 1246color: hint($on-surface); 1247} 1248// workspace switcher applet simple button view 1249.workspace-button { 1250background-color: $panel-solid; 1251width: 2em; 1252height: 1em; 1253color: hint($on-titlebar); 1254margin: 2px; 1255&:outlined { 1256background-color: stroke($on-titlebar); 1257color: $on-titlebar; 1258} 1259} 1260// workspace switcher applet graph view 1261.workspace-graph { 1262background-color: $scrim; 1263.workspace { 1264background-color: $panel-solid; 1265border: 1px solid divider($on-surface); 1266&:active { 1267background-color: stroke($on-titlebar); 1268 1269border: 1px solid divider($on-surface); 1270.windows { 1271-active-window-background: rgba(255, 255, 255, 0.8); 1272-active-window-border: rgba(0, 0, 0, 0.9); 1273-inactive-window-background: rgba(140, 140, 140, 0.8); 1274-inactive-window-border: rgba(0, 0, 0, 0.7); 1275} 1276} 1277.windows { 1278-active-window-background: rgba(140, 140, 140, 0.8); 1279-active-window-border: rgba(0, 0, 0, 0.7); 1280-inactive-window-background: rgba(140, 140, 140, 0.8); 1281-inactive-window-border: rgba(0, 0, 0, 0.7); 1282} 1283} 1284} 1285// most panel launcher themeing is orientation specific 1286.panel-launchers { 1287padding: 0 4px; 1288spacing: 4px; 1289transition-duration: $duration; 1290.launcher { 1291background-color:rgba(0, 0, 0, 0.01); 1292} 1293&.vertical { 1294padding: 4px 0; 1295spacing: 4px; 1296.launcher .icon-box { 1297padding-top: 0; 1298} 1299} 1300} 1301// applets in general 1302.applet-separator-line, .applet-separator-line-vertical { 1303width: 2px; 1304background: divider($on-titlebar); 1305} 1306.applet-spacer:highlight { 1307background: highlight($surface-z8); 1308} 1309.applet-box { 1310background-color: rgba(0, 0, 0, 0.01); 1311color: hint($on-titlebar); 1312transition-duration: $duration; 1313&:checked { 1314color: $on-titlebar; 1315.applet-label { 1316color: $on-titlebar; 1317} 1318} 1319&:hover { 1320color: $on-titlebar; 1321.applet-label { 1322color: $on-titlebar; 1323} 1324} 1325&:highlight { 1326background: stroke($on-titlebar); 1327color: $on-titlebar; 1328.applet-label { 1329color: $on-titlebar; 1330} 1331} 1332} 1333.applet-label { 1334@include type(subtitle2); 1335 1336color: hint($on-titlebar); 1337} 1338// icon-size set to 22 to match hard-coded menu icon size - applet-icon style is used for search provider results in menu 1339.applet-icon { 1340color: hint($on-titlebar); 1341padding: 0; 1342spacing: 0; 1343icon-size: 22px; 1344} 1345// desklets - the base .desklet selector is for 'undecorated' desklets however some subtle background themeing is desirable 1346// to maintain visibility irrespctive of wallpaper and to allow for the highlighting scheme to work 1347.desklet { 1348@include type(caption); 1349 1350color: $on-titlebar; 1351border: none; 1352box-shadow: $shadow-z8; 1353padding: 12px; 1354background-color: $scrim-alt; 1355border-radius: $corner-radius 1356} 1357// these do not inherit from .desklet 1358.desklet-with-borders { 1359@extend %desklet-shared; 1360@include type(caption); 1361 1362background-color: $surface-z8; 1363border-radius: $corner-radius; 1364&:highlight { 1365background-color: highlight($surface-z8); 1366} 1367} 1368.desklet-with-borders-and-header { 1369@extend %desklet-shared; 1370@include type(caption); 1371 1372background-color: $surface-z8; 1373border-radius-bottomleft: 2px; 1374border-radius-bottomright: 2px; 1375&:highlight { 1376background-color: highlight($surface-z8); 1377} 1378} 1379.desklet-header { 1380@include type(headline6); 1381@extend %desklet-shared; 1382 1383background-color: $surface-z8; 1384border-radius-topleft: 2px; 1385border-radius-topright: 2px; 1386&:highlight { 1387background-color: highlight($surface-z8); 1388} 1389} 1390.photoframe-box { 1391@extend %desklet-shared; 1392 1393background-color: $surface-z8; 1394border-radius: $corner-radius; 1395&:highlight { 1396background-color: highlight($surface-z8); 1397} 1398} 1399.desklet-drag-placeholder { 1400border: 2px solid $primary; 1401background-color: $scrim-alt; 1402border-radius: $corner-radius; 1403} 1404.launcher { 1405padding: 1px; 1406.icon-box { 1407padding-top: 2px; 1408} 1409} 1410// applet 'about' OSDs - inherits from modal dialogs 1411.about-content { 1412min-width: 250px; 1413min-height: 150px; 1414spacing: 8px; 1415padding-bottom: 16px; 1416} 1417.about-title { 1418@include type(headline6); 1419} 1420.about-uuid { 1421@include type(caption); 1422} 1423.about-icon { 1424padding-right: 20px; 1425} 1426.about-scrollBox { 1427border: 1px solid divider($on-surface); 1428border-radius: $corner-radius; 1429} 1430.about-scrollBox-innerBox { 1431padding: 1.2em; 1432spacing: 1.2em; 1433} 1434.about-description { 1435padding-top: 4px; 1436} 1437.about-version { 1438padding-left: 7px; 1439} 1440.workspace-osd { 1441@extend %osd-info-workspace-shared; 1442} 1443.expo-workspaces-name-entry { 1444@include type(body1); 1445 1446background-color: entry-fill($on-dark); 1447color: $on-dark; 1448padding: 0 8px; 1449selection-background-color: stroke($on-dark); 1450selected-color: $on-dark; 1451caret-color: $on-dark; 1452text-align: center; 1453height: $medium-size; 1454border-radius: $corner-radius $corner-radius 0 0; 1455-cinnamon-caption-spacing: 12px; 1456&#selected { 1457color: $on-dark; 1458background-color: stroke($on-dark); 1459} 1460&:focus { 1461color: $on-dark; 1462box-shadow: inset 0 -2px $on-dark; 1463} 1464&:hover { 1465background-color: divider($on-dark); 1466} 1467} 1468.notification-applet-padding { 1469padding: .5em 1em; 1470} 1471.notification-applet-container { 1472max-height: 100px; 1473} 1474.check-box { 1475CinnamonGenericContainer { 1476spacing: 8px; 1477} 1478StBin { 1479@extend %check-box-shared; 1480} 1481&:focus { 1482StBin { 1483@extend %check-box-shared; 1484} 1485&:checked StBin { 1486background-image: url(assets/checkbox.svg); 1487} 1488} 1489StLabel { 1490} 1491&:checked StBin { 1492background-image: url(assets/checkbox.svg); 1493} 1494} 1495.radiobutton { 1496CinnamonGenericContainer { 1497spacing: 8px; 1498} 1499StBin { 1500@extend %radiobutton-shared; 1501} 1502&:focus { 1503StBin { 1504@extend %radiobutton-shared; 1505} 1506&:checked StBin { 1507background-image: url(assets/radiobutton.svg); 1508} 1509} 1510StLabel { 1511} 1512&:checked StBin { 1513background-image: url(assets/radiobutton.svg); 1514} 1515} 1516.flashspot { 1517background-color: $primary; 1518} 1519// displayed when media keys are pressed. 1520.osd-window { 1521@extend %osd-panel-shared; 1522 1523spacing: 1em; 1524padding: 16px; 1525.level { 1526height: 0.7em; 1527border-radius: 0.3em; 1528background-color: stroke($on-surface); 1529} 1530.level-bar { 1531border-radius: 0.3em; 1532background-color: $primary; 1533} 1534} 1535// on screen preview of windows tiling placement 1536.tile-preview { 1537@extend %tile-shared; 1538 1539&.snap { 1540@extend %tile-shared-snap; 1541} 1542} 1543.tile-hud { 1544@extend %tile-shared; 1545 1546&.snap { 1547@extend %tile-shared-snap; 1548} 1549&:top { 1550border-top-width: 0; 1551 1552border-radius: 0 0 10px 10px; 1553} 1554&:bottom { 1555border-bottom-width: 0; 1556 1557border-radius: $corner-radius $corner-radius 0 0; 1558} 1559&:left { 1560border-left-width: 0; 1561 1562border-radius: 0 10px 10px 0; 1563} 1564&:right { 1565border-right-width: 0; 1566 1567border-radius: 10px 0 0 10px; 1568} 1569&:top-left { 1570border-top-width: 0; 1571border-left-width: 0; 1572 1573border-radius: 0 0 10px 0; 1574} 1575&:top-right { 1576border-top-width: 0; 1577border-right-width: 0; 1578 1579border-radius: 0 0 0 10px; 1580} 1581&:bottom-left { 1582border-bottom-width: 0; 1583border-left-width: 0; 1584 1585border-radius: 0 10px 0 0; 1586} 1587&:bottom-right { 1588border-bottom-width: 0; 1589border-right-width: 0; 1590 1591border-radius: 10px 0 0 0; 1592} 1593} 1594.systray { 1595spacing: 4px; 1596} 1597// user-applet specific themeing - overrides applet stylesheet 1598.user-box { 1599padding: 0.4em 1.3em; 1600spacing: 10px; 1601} 1602.user-icon { 1603padding: 4px; 1604border: none; 1605} 1606.user-label { 1607@include type(subtitle2); 1608 1609color: $on-surface; 1610} 1611