_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/close-window.svg); 522height: 32px; 523width: 32px; 524-cinnamon-close-overlap: 20px; 525&:rtl { 526-st-background-image-shadow: 2px 2px 6px rgba(0,0,0,0.5); 527} 528} 529.window-border { 530border: 1px solid divider($on-surface); 531} 532.window-close-area { 533background-image: url(assets/trash-icon.png); 534background-size: 100px; 535background-color: $scrim-alt; 536border: 1px solid divider($on-surface); 537border-bottom-width: 0; 538border-radius: 20px 20px 0 0; 539height: 120px; 540width: 400px; 541} 542// this is OK with solid or transparent backgrounds 543.expo-background { 544background-color: $scrim; 545} 546// this always looks better semi transparent 547.workspace-overview-background-shade { 548background-color: $scrim; 549} 550.expo-workspace-thumbnail-frame { 551border: 1px solid divider($on-surface); 552&#active { 553border: 1px solid $primary; 554} 555} 556// dialog box for the cinnamon debug utility 557#LookingGlassDialog { 558@extend %osd-panel-shared; 559 560spacing: 4px; 561padding: 8px; 562} 563// the calendar displayed by the calendar applet is a heavily modified menu and inherits from the .menu selectosr 564// indivudual elements within the menu can be themed seperately with these selectors 565.calendar { 566padding: 4px 8px; 567spacing-rows: 2px; 568spacing-columns: 4px; 569} 570// also covers the year label 571.datemenu-date-label { 572@include type(headline6); 573 574height: $menuitem-size - 2px * 2; 575margin: 2px; 576padding: 6px 16px; 577border-radius: $corner-radius; 578color: $on-surface; 579text-align: center; 580&:focus { background-color: divider($on-surface) }; 581} 582.calendar-month-label { 583@include type(subtitle2); 584 585height: $menuitem-size - 6px * 2; 586margin: 2px; 587padding: 6px 16px; 588border-radius: $corner-radius; 589color: $on-surface; 590text-align: center; 591&:focus { background-color: divider($on-surface) }; 592} 593.calendar-change-month-back { 594@extend %calendar-shared; 595 596background-image: url(assets/calendar-arrow-left.svg); 597&:rtl { 598background-image: url(assets/calendar-arrow-right.svg); 599} 600} 601.calendar-change-month-forward { 602@extend %calendar-shared; 603 604background-image: url(assets/calendar-arrow-right.svg); 605&:rtl { 606background-image: url(assets/calendar-arrow-left.svg); 607} 608} 609.calendar-day-base { 610@include type(caption); 611 612text-align: center; 613width: $menuitem-size; height: $menuitem-size; 614padding: 0; 615margin: 2px; 616border-radius: 100px; 617&:hover,&:focus { background-color: stroke($on-titlebar); } 618&:active { 619color: $on-primary; 620background-color: $primary; 621border-color: transparent; 622} 623} 624.calendar-week-number { 625@include type(caption); 626 627width: $menuitem-size - 7px; height: $menuitem-size; 628margin: 2px; 629padding: 0; 630border-radius: 100px; 631background-color: transparent; 632color: disabled($on-surface); 633text-align: center; 634} 635.calendar-day-heading { 636@include type(caption); 637 638width: $menuitem-size; height: $menuitem-size - 7px; 639margin: 2px; 640padding: 0; 641border-radius: 100px; 642background-color: transparent; 643color: disabled($on-surface); 644text-align: center; 645} 646.calendar-day { 647border-width: 0; 648} 649.calendar-day-top { 650border-top-width: 0; 651} 652.calendar-day-left { 653border-left-width: 0; 654} 655.calendar-work-day { 656} 657.calendar-nonwork-day { 658color: $on-surface; 659} 660.calendar-today { 661font-weight: bold; 662border: none; 663} 664.calendar-day-with-events { 665color: $primary; 666font-weight: normal; 667text-decoration: underline; 668background-image: none; 669} 670.calendar-other-month-day { 671color: disabled-hint($on-surface); 672opacity: 0.5; 673} 674.calendar-week-number { 675width: $menuitem-size; height: $menuitem-size - 7px; 676margin: 2px; 677padding: 7px 0 0; 678border-radius: 100px; 679background-color: transparent; 680color: disabled($on-surface); 681font-size: inherit; 682font-weight: bold; 683text-align: center; 684} 685// notification system 686#notification { 687background-color: $surface-z8; 688border-radius: $corner-radius; 689border: 1px solid divider($on-surface); 690padding: 8px; 691spacing-rows: 4px; 692spacing-columns: 8px; 693margin-from-right-edge-of-screen: 20px; 694width: 34em; 695color: $on-surface; 696box-shadow: $shadow-2; 697&.multi-line-notification { 698padding-bottom: 8px; 699} 700StEntry { 701@extend %dialog-entry-shared; 702} 703.url-highlighter { 704link-color: $primary; 705} 706} 707// min height 159px is required to avoid stretching/distortion of notification image 708.notification-with-image { 709min-height: 159px; 710color: $on-surface; 711} 712#notification-scrollview { 713max-height: 10em; 714> { 715.top-shadow { 716height: 1em; 717} 718.bottom-shadow { 719height: 1em; 720} 721} 722&:ltr > StScrollBar { 723padding-left: 6px; 724} 725&:rtl > StScrollBar { 726padding-right: 6px; 727} 728} 729#notification-body { 730spacing: 4px; 731} 732#notification-actions { 733spacing: 8px; 734} 735.notification-button { 736@extend %button-shared; 737} 738.notification-icon-button { 739@extend %icon-button-shared; 740 741> StIcon { 742icon-size: 1.5em; 743} 744} 745// non 3D alt-tab options 746#altTabPopup { 747padding: 8px; 748spacing: 16px; 749} 750.switcher-list { 751@extend %osd-panel-shared; 752 753transition-duration: $duration; 754.item-box { 755padding: 8px; 756border-radius: $corner-radius; 757&:selected { 758background-color: divider($on-surface); 759} 760} 761.thumbnail-box { 762padding: 2px; 763spacing: 4px; 764} 765.thumbnail { 766width: 256px 767} 768.separator { 769width: 1px; 770background: divider($on-surface); 771} 772} 773.switcher-list-item-container { 774spacing: 8px; 775} 776.thumbnail-scroll-gradient-left { 777background-gradient-direction: horizontal; 778background-gradient-start: rgba(51, 51, 51, 1.0); 779background-gradient-end: rgba(51, 51, 51, 0); 780border-radius: $corner-radius; 781border-radius-topright: 0; 782border-radius-bottomright: 0; 783width: 60px; 784} 785.thumbnail-scroll-gradient-right { 786background-gradient-direction: horizontal; 787background-gradient-start: rgba(51, 51, 51, 0); 788background-gradient-end: rgba(51, 51, 51, 1.0); 789border-radius: $corner-radius; 790border-radius-topleft: 0; 791border-radius-bottomleft: 0; 792width: 60px; 793} 794.switcher-arrow { 795border-color: rgba(0,0,0,0); 796color: hint($on-surface); 797&:highlighted { 798color: $on-surface; 799} 800} 801.switcher-preview-backdrop { 802background-color: $scrim; 803} 804// hot corners animation 805.ripple-box { 806width: 104px; 807height: 104px; 808background-image: url(assets/corner-ripple.png); 809background-color: $primary; 810border-radius: 52px; 811} 812// on screen messages and input boxes 813.modal-dialog { 814@extend %osd-panel-shared; 815 816padding: 16px 20px; 817} 818.modal-dialog-button-box { 819spacing: 16px; 820} 821.modal-dialog-button { 822@extend %button-shared; 823} 824.info-osd { 825@extend %osd-info-workspace-shared; 826} 827// run dialog (ALT-F2) 828.run-dialog-label { 829color: hint($on-surface); 830padding-bottom: .4em; 831} 832.run-dialog-error-label { 833color: $error; 834} 835.run-dialog-error-box { 836padding-top: 16px; 837spacing: 6px; 838} 839.run-dialog-completion-box { 840padding-left: 15px; 841} 842.run-dialog-entry { 843@extend %dialog-entry-shared; 844} 845.run-dialog { 846border-radius: $corner-radius; 847padding: 16px 20px; 848} 849// this is an full screen overlay that is displayed with any cinnamon OSD or modal dialog which needs to always be semi transparent 850.lightbox { 851background-color: $scrim-alt; 852} 853// removable media dialogs 854.cinnamon-mount-operation-icon { 855icon-size: 4.8em; 856} 857.mount-password-reask { 858color: $warning; 859} 860.show-processes-dialog { 861spacing: 24px; 862} 863.mount-question-dialog { 864spacing: 24px; 865} 866.show-processes-dialog-subject { 867@extend %dialogs-subject-shared; 868 869&:rtl { 870@extend %dialogs-subject-rtl-shared; 871} 872} 873.mount-question-dialog-subject { 874@extend %dialogs-subject-shared; 875 876&:rtl { 877@extend %dialogs-subject-rtl-shared; 878} 879} 880.show-processes-dialog-description { 881@extend %dialogs-description-shared; 882 883&:rtl { 884padding-right: 17px; 885} 886} 887.mount-question-dialog-description { 888@extend %dialogs-description-shared; 889 890&:rtl { 891padding-right: 17px; 892} 893} 894.show-processes-dialog-app-list { 895max-height: 200px; 896padding-top: 24px; 897padding-left: 49px; 898padding-right: 32px; 899&:rtl { 900padding-right: 49px; 901padding-left: 32px; 902} 903} 904.show-processes-dialog-app-list-item { 905color: $on-surface; 906&:hover { 907color: $on-surface; 908} 909&:ltr { 910padding-right: 1em; 911} 912&:rtl { 913padding-left: 1em; 914} 915} 916.show-processes-dialog-app-list-item-icon { 917&:ltr { 918padding-right: 17px; 919} 920&:rtl { 921padding-left: 17px; 922} 923} 924.show-processes-dialog-app-list-item-name { 925} 926// desktop zoom feature 927.magnifier-zoom-region { 928border: 3px solid divider($on-surface); 929&.full-screen { 930border-width: 0; 931} 932} 933// on screen keyboard 934#keyboard { 935background-color: $scrim; 936} 937.keyboard-key { 938@extend %icon-button-shared; 939@include type(button); 940} 941.keyboard-layout { 942spacing: 8px; 943padding: 8px; 944} 945.keyboard-row { 946spacing: 16px; 947} 948.keyboard-subkeys { //long press on a key popup 949color: inherit; 950padding: 5px; 951-arrow-border-radius: 0; 952-arrow-background-color: transparent; 953-arrow-border-width: 0; 954-arrow-border-color: transparent; 955-arrow-base: 0; 956-arrow-rise: 0; 957-boxpointer-gap: 5px; 958background-color: $surface-z8; 959border-radius: $corner-radius; 960box-shadow: $shadow-2; 961} 962// main menu applet 963.menu-favorites-box { 964padding: 8px; 965} 966.menu-favorites-button { 967padding: 0.4em 4px; 968&:hover { 969background-color: divider($on-surface); 970border-radius: $corner-radius; 971color: $on-surface; 972} 973} 974.menu-categories-box { 975padding: 8px; 976} 977.menu-applications-inner-box { 978padding: 8px; 979} 980.menu-applications-outer-box { 981padding: 8px; 982border-radius: $corner-radius; 983} 984.menu-application-button { 985padding: 0.4em 4px; 986&:highlighted { 987font-weight: bold; 988} 989} 990.menu-application-button-selected { 991padding: 0.4em 4px; 992background-color: divider($on-surface); 993border-radius: $corner-radius; 994color: $on-surface; 995&:highlighted { 996font-weight: bold; 997} 998} 999.menu-application-button-label { 1000@extend %menu-button-label-shared; 1001} 1002.menu-category-button { 1003padding: 0.4em 4px; 1004} 1005.menu-category-button-greyed { 1006padding: 0.4em 4px; 1007color: hint($on-surface); 1008font-style: italic; 1009} 1010.menu-category-button-selected { 1011padding: 0.4em 4px; 1012background-color: divider($on-surface); 1013border-radius: $corner-radius; 1014color: $on-surface; 1015&:hover { 1016} 1017} 1018.menu-category-button-label { 1019@extend %menu-button-label-shared; 1020} 1021// in the stock menu app descriptions are shown at the base of the menu 1022.menu-selected-app-box { 1023padding: 8px; 1024margin-bottom: 4px; 1025text-align: right; 1026&:rtl { 1027text-align: left; 1028} 1029} 1030.menu-selected-app-title { 1031@include type(caption); 1032} 1033.menu-selected-app-description { 1034@include type(caption); 1035 1036max-width: 150px; 1037} 1038// the menus search box 1039.menu-search-box { 1040&:ltr { 1041padding-left: 30px; 1042padding-bottom: 5px; 1043padding-top: 5px; 1044} 1045&:rtl { 1046padding-right: 30px; 1047padding-bottom: 5px; 1048padding-top: 5px; 1049} 1050} 1051#menu-search-entry { 1052@extend %dialog-entry-shared; 1053} 1054.menu-search-entry-icon { 1055icon-size: 1em; 1056padding: 0 0; 1057color: disabled($on-surface); 1058} 1059// the window list applet. Some third party applets inherit some of this theming. 1060.window-list-box { 1061@include type(caption); 1062 1063spacing: 4px; 1064padding: 0 3px; 1065&.vertical { 1066spacing: 4px; 1067padding: 3px 0; 1068} 1069#appMenuIcon { 1070} 1071&:highlight { 1072background: stroke($on-titlebar); 1073color: $on-titlebar; 1074} 1075} 1076.window-list-item-label { 1077} 1078// progress was added with cinnamon 3.6 and allows compatible applications to use the window list as a progress bar 1079.window-list-item-box { 1080background-color: rgba(0, 0, 0, 0.01); 1081transition-duration: $duration; 1082&:hover { 1083color: $on-titlebar; 1084} 1085&:active, &:checked, &:focus { 1086background-color: stroke($on-titlebar); 1087color: $on-titlebar; 1088&:hover { 1089color: $on-titlebar; 1090} 1091} 1092.progress { 1093background-color: $success; 1094} 1095} 1096.window-list-item-box.top StLabel, .window-list-item-box.bottom StLabel { 1097padding-left: 3px; 1098} 1099.window-list-item-demands-attention { 1100background-color: $titlebar; 1101color: hint($on-titlebar); 1102} 1103// cinnamon 3.8 will support an improved window-list-thumbnail preview which now has it's own selector 1104.window-list-preview { 1105background-color: $surface-z8; 1106border-radius: $corner-radius; 1107padding: 10px 15px; 1108spacing: 1em; 1109color: $on-surface; 1110box-shadow: $shadow-4; 1111} 1112// Cinnamon 4.0 has a new grouped window list applet with it's own selectors. 1113// Initial theme support is defined here. Some theming is defined in the panel orientation specific section above. 1114.grouped-window-list { 1115&-thumbnail-label { 1116padding-left: 3px; 1117padding-bottom: 6px; 1118} 1119&-number-label { 1120@include type(caption); 1121 1122z-index: 99; 1123} 1124&-list-button-label { 1125padding-left: 3px; 1126} 1127&-badge { 1128border-radius: $circular-radius; 1129background-color: $panel-solid; 1130} 1131&-thumbnail-alert { 1132background: $warning; 1133} 1134&-item-box { 1135background-color: rgba(0, 0, 0, 0.01); 1136transition-duration: $duration; 1137&:hover { 1138color: $on-titlebar; 1139} 1140&:active, &:checked { 1141background-color: divider($on-titlebar); 1142&:hover { 1143color: $on-titlebar; 1144} 1145} 1146&:focus { 1147background-color: stroke($on-titlebar); 1148color: $on-titlebar; 1149&:hover { 1150color: $on-titlebar; 1151} 1152} 1153.progress { 1154background-color: $success; 1155} 1156} 1157&-item-demands-attention { 1158background-color: $titlebar; 1159color: hint($on-titlebar); 1160} 1161&-thumbnail-menu { 1162padding: 20px; 1163border: none; 1164border-radius: $corner-radius; 1165color: hint($on-titlebar); 1166background: none; 1167.item-box { 1168padding: 8px; 1169spacing: 2px; 1170border-radius: $corner-radius; 1171&:outlined { 1172border: 2px solid divider($on-surface); 1173color: $on-titlebar; 1174} 1175&:selected { 1176background: divider($on-titlebar); 1177color: $on-titlebar; 1178} 1179> StBoxLayout { // icon and title 1180&:ltr { margin: 1px 0 0 6px; } 1181&:rtl { margin: 1px 6px 0 0; } 1182 1183StLabel { padding-bottom: 2px; } 1184} 1185 1186> StButton { // close button 1187&:ltr { margin: 1px 6px 0 0; } 1188&:rtl { margin: 1px 0 0 6px; } 1189} 1190} 1191.thumbnail-box { 1192padding: 2px; 1193} 1194.thumbnail { 1195width: 256px; 1196} 1197.separator { 1198width: 1px; 1199background: divider($on-surface); 1200} 1201} 1202} 1203// the sound player applet 1204.sound-player { 1205StButton { 1206@extend %icon-button-shared; 1207 1208&:small { 1209min-width: $small-size; 1210min-height: $small-size; 1211padding: 4px; 1212StIcon { 1213icon-size: 1em; 1214} 1215} 1216StIcon { 1217icon-size: 1.5em; 1218} 1219} 1220.slider { 1221@extend %slider-shared; 1222 1223height: 5px; 1224} 1225StBoxLayout { 1226spacing: 0.5em; 1227} 1228> StBoxLayout { 1229padding: 5px; 1230} 1231} 1232.sound-player-generic-coverart { 1233background: rgba(0,0,0,0.2); 1234} 1235.sound-player-overlay { 1236background-color: $surface-z8; 1237min-width: 300px; 1238padding: 12px 16px; 1239spacing: 0.5em; 1240color: hint($on-surface); 1241} 1242// workspace switcher applet simple button view 1243.workspace-button { 1244background-color: $panel-solid; 1245width: 2em; 1246height: 1em; 1247color: hint($on-titlebar); 1248margin: 2px; 1249&:outlined { 1250background-color: stroke($on-titlebar); 1251color: $on-titlebar; 1252} 1253} 1254// workspace switcher applet graph view 1255.workspace-graph { 1256background-color: $scrim; 1257.workspace { 1258background-color: $panel-solid; 1259border: 1px solid divider($on-surface); 1260&:active { 1261background-color: stroke($on-titlebar); 1262 1263border: 1px solid divider($on-surface); 1264.windows { 1265-active-window-background: rgba(255, 255, 255, 0.8); 1266-active-window-border: rgba(0, 0, 0, 0.9); 1267-inactive-window-background: rgba(140, 140, 140, 0.8); 1268-inactive-window-border: rgba(0, 0, 0, 0.7); 1269} 1270} 1271.windows { 1272-active-window-background: rgba(140, 140, 140, 0.8); 1273-active-window-border: rgba(0, 0, 0, 0.7); 1274-inactive-window-background: rgba(140, 140, 140, 0.8); 1275-inactive-window-border: rgba(0, 0, 0, 0.7); 1276} 1277} 1278} 1279// most panel launcher themeing is orientation specific 1280.panel-launchers { 1281padding: 0 4px; 1282spacing: 4px; 1283transition-duration: $duration; 1284.launcher { 1285background-color:rgba(0, 0, 0, 0.01); 1286} 1287&.vertical { 1288padding: 4px 0; 1289spacing: 4px; 1290.launcher .icon-box { 1291padding-top: 0; 1292} 1293} 1294} 1295// applets in general 1296.applet-separator-line, .applet-separator-line-vertical { 1297width: 2px; 1298background: divider($on-titlebar); 1299} 1300.applet-spacer:highlight { 1301background: highlight($surface-z8); 1302} 1303.applet-box { 1304background-color: rgba(0, 0, 0, 0.01); 1305color: hint($on-titlebar); 1306transition-duration: $duration; 1307&:checked { 1308color: $on-titlebar; 1309.applet-label { 1310color: $on-titlebar; 1311} 1312} 1313&:hover { 1314color: $on-titlebar; 1315.applet-label { 1316color: $on-titlebar; 1317} 1318} 1319&:highlight { 1320background: stroke($on-titlebar); 1321color: $on-titlebar; 1322.applet-label { 1323color: $on-titlebar; 1324} 1325} 1326} 1327.applet-label { 1328@include type(subtitle2); 1329 1330color: hint($on-titlebar); 1331} 1332// icon-size set to 22 to match hard-coded menu icon size - applet-icon style is used for search provider results in menu 1333.applet-icon { 1334color: hint($on-titlebar); 1335padding: 0; 1336spacing: 0; 1337icon-size: 22px; 1338} 1339// desklets - the base .desklet selector is for 'undecorated' desklets however some subtle background themeing is desirable 1340// to maintain visibility irrespctive of wallpaper and to allow for the highlighting scheme to work 1341.desklet { 1342@include type(caption); 1343 1344color: $on-titlebar; 1345border: none; 1346box-shadow: $shadow-4; 1347padding: 12px; 1348background-color: $scrim-alt; 1349border-radius: $corner-radius 1350} 1351// these do not inherit from .desklet 1352.desklet-with-borders { 1353@extend %desklet-shared; 1354@include type(caption); 1355 1356background-color: $surface-z8; 1357border-radius: $corner-radius; 1358&:highlight { 1359background-color: highlight($surface-z8); 1360} 1361} 1362.desklet-with-borders-and-header { 1363@extend %desklet-shared; 1364@include type(caption); 1365 1366background-color: $surface-z8; 1367border-radius-bottomleft: 2px; 1368border-radius-bottomright: 2px; 1369&:highlight { 1370background-color: highlight($surface-z8); 1371} 1372} 1373.desklet-header { 1374@include type(headline6); 1375@extend %desklet-shared; 1376 1377background-color: $surface-z8; 1378border-radius-topleft: 2px; 1379border-radius-topright: 2px; 1380&:highlight { 1381background-color: highlight($surface-z8); 1382} 1383} 1384.photoframe-box { 1385@extend %desklet-shared; 1386 1387background-color: $surface-z8; 1388border-radius: $corner-radius; 1389&:highlight { 1390background-color: highlight($surface-z8); 1391} 1392} 1393.desklet-drag-placeholder { 1394border: 2px solid $primary; 1395background-color: $scrim-alt; 1396border-radius: $corner-radius; 1397} 1398.launcher { 1399padding: 1px; 1400.icon-box { 1401padding-top: 2px; 1402} 1403} 1404// applet 'about' OSDs - inherits from modal dialogs 1405.about-content { 1406min-width: 250px; 1407min-height: 150px; 1408spacing: 8px; 1409padding-bottom: 16px; 1410} 1411.about-title { 1412@include type(headline6); 1413} 1414.about-uuid { 1415@include type(caption); 1416} 1417.about-icon { 1418padding-right: 20px; 1419} 1420.about-scrollBox { 1421border: 1px solid divider($on-surface); 1422border-radius: $corner-radius; 1423} 1424.about-scrollBox-innerBox { 1425padding: 1.2em; 1426spacing: 1.2em; 1427} 1428.about-description { 1429padding-top: 4px; 1430} 1431.about-version { 1432padding-left: 7px; 1433} 1434.workspace-osd { 1435@extend %osd-info-workspace-shared; 1436} 1437.expo-workspaces-name-entry { 1438@include type(body1); 1439 1440background-color: entry-fill($on-dark); 1441color: $on-dark; 1442padding: 0 8px; 1443selection-background-color: stroke($on-dark); 1444selected-color: $on-dark; 1445caret-color: $on-dark; 1446text-align: center; 1447height: $medium-size; 1448border-radius: $corner-radius $corner-radius 0 0; 1449-cinnamon-caption-spacing: 12px; 1450&#selected { 1451color: $on-dark; 1452background-color: stroke($on-dark); 1453} 1454&:focus { 1455color: $on-dark; 1456box-shadow: inset 0 -2px $on-dark; 1457} 1458&:hover { 1459background-color: divider($on-dark); 1460} 1461} 1462.notification-applet-padding { 1463padding: .5em 1em; 1464} 1465.notification-applet-container { 1466max-height: 100px; 1467} 1468.check-box { 1469CinnamonGenericContainer { 1470spacing: 8px; 1471} 1472StBin { 1473@extend %check-box-shared; 1474} 1475&:focus { 1476StBin { 1477@extend %check-box-shared; 1478} 1479&:checked StBin { 1480background-image: url(assets/checkbox.svg); 1481} 1482} 1483StLabel { 1484} 1485&:checked StBin { 1486background-image: url(assets/checkbox.svg); 1487} 1488} 1489.radiobutton { 1490CinnamonGenericContainer { 1491spacing: 8px; 1492} 1493StBin { 1494@extend %radiobutton-shared; 1495} 1496&:focus { 1497StBin { 1498@extend %radiobutton-shared; 1499} 1500&:checked StBin { 1501background-image: url(assets/radiobutton.svg); 1502} 1503} 1504StLabel { 1505} 1506&:checked StBin { 1507background-image: url(assets/radiobutton.svg); 1508} 1509} 1510.flashspot { 1511background-color: $primary; 1512} 1513// displayed when media keys are pressed. 1514.osd-window { 1515@extend %osd-panel-shared; 1516 1517spacing: 1em; 1518padding: 16px; 1519.level { 1520height: 0.7em; 1521border-radius: 0.3em; 1522background-color: stroke($on-surface); 1523} 1524.level-bar { 1525border-radius: 0.3em; 1526background-color: $primary; 1527} 1528} 1529// on screen preview of windows tiling placement 1530.tile-preview { 1531@extend %tile-shared; 1532 1533&.snap { 1534@extend %tile-shared-snap; 1535} 1536} 1537.tile-hud { 1538@extend %tile-shared; 1539 1540&.snap { 1541@extend %tile-shared-snap; 1542} 1543&:top { 1544border-top-width: 0; 1545 1546border-radius: 0 0 10px 10px; 1547} 1548&:bottom { 1549border-bottom-width: 0; 1550 1551border-radius: $corner-radius $corner-radius 0 0; 1552} 1553&:left { 1554border-left-width: 0; 1555 1556border-radius: 0 10px 10px 0; 1557} 1558&:right { 1559border-right-width: 0; 1560 1561border-radius: 10px 0 0 10px; 1562} 1563&:top-left { 1564border-top-width: 0; 1565border-left-width: 0; 1566 1567border-radius: 0 0 10px 0; 1568} 1569&:top-right { 1570border-top-width: 0; 1571border-right-width: 0; 1572 1573border-radius: 0 0 0 10px; 1574} 1575&:bottom-left { 1576border-bottom-width: 0; 1577border-left-width: 0; 1578 1579border-radius: 0 10px 0 0; 1580} 1581&:bottom-right { 1582border-bottom-width: 0; 1583border-right-width: 0; 1584 1585border-radius: 10px 0 0 0; 1586} 1587} 1588.systray { 1589spacing: 4px; 1590} 1591// user-applet specific themeing - overrides applet stylesheet 1592.user-box { 1593padding: 0.4em 1.3em; 1594spacing: 10px; 1595} 1596.user-icon { 1597padding: 4px; 1598border: none; 1599} 1600.user-label { 1601@include type(subtitle2); 1602 1603color: $on-surface; 1604} 1605