_apps.scss
ASCII text
1/************ 2* Nautilus * 3************/ 4// based css: 5// https://git.gnome.org/browse/nautilus/tree/src/resources/css/Adwaita.css 6// hard-coded css: 7// https://git.gnome.org/browse/nautilus/tree/src/resources/css/nautilus.css 8 9.nautilus-window, 10.nautilus-window notebook, 11.nautilus-window notebook > stack { 12background: $base_color; 13} 14 15.nautilus-canvas-item { 16// border-radius: $md_radius; 17} 18 19.nautilus-canvas-item.dim-label, 20.nautilus-list-dim-label { 21// @extend .dim-label; 22} 23 24.nautilus-desktop.nautilus-canvas-item { 25// background-color: scale-alpha(#000000, $lower_opacity); 26color: $inversed_fg_color; 27text-shadow: $z-depth-1; 28} 29 30.nautilus-desktop.nautilus-canvas-item:selected { 31// color: $inversed_fg_color; 32text-shadow: none; 33} 34 35// Toolbar 36@keyframes needs_attention_keyframes { 37from { background-color: transparent; } 38to { background-color: $track_color; } 39} 40 41.nautilus-operations-button-needs-attention { 42color: $accent_color; 43animation: needs_attention_keyframes $longer_duration $standard_curve 2 alternate; 44} 45 46.nautilus-operations-button-needs-attention-multiple { 47color: $accent_color; 48animation: needs_attention_keyframes $longer_duration $standard_curve 4 alternate; 49} 50 51// Floating status bar 52.nautilus-window .floating-bar { 53@extend %osd; 54 55// @extend .toolbar.osd; 56 57min-height: 32px; 58padding: 0; 59border-style: solid solid none; 60border-width: 1px; 61border-color: $borders_color; 62border-radius: (2px + 1px) (2px + 1px) 0 0; 63background-color: $base_color; 64background-clip: $extra_background_clip; 65transition: $longer_transition, border-width 0; 66 67&.bottom.left { // axes left border and border radius 68margin-right: 8px - 1px; 69border-left-style: none; 70border-top-left-radius: 0; 71} 72 73&.bottom.right { // axes right border and border radius 74margin-left: 8px - 1px; 75border-right-style: none; 76border-top-right-radius: 0; 77} 78 79button { 80margin: (32px - $small_size) / 2; 81 82@extend %small_button; 83} 84} 85 86.disk-space-display { 87// border-style: solid; 88// border-width: 2px; 89} 90 91.disk-space-display.unknown { 92background-color: $warning_color; 93} 94 95.disk-space-display.used { 96background-color: $primary_color; 97} 98 99.disk-space-display.free { 100background-color: $track_color; 101color: $disabled_fg_color; 102} 103 104// View 105.nautilus-list-view .view { 106// border-bottom: 1px solid $borders_color; 107} 108 109// Hide superfluous treeview drop target indication 110.nautilus-list-view .view.dnd { 111// border-style: none; 112} 113 114// Libgd tag entries in the search. Sadly it requires this copy pasted css style. 115// https://git.gnome.org/browse/libgd/tree/libgd/gd-tagged-entry-default.css 116.documents-entry-tag { 117// min-height: 24px; 118margin: 3px -2px 3px 8px; 119padding: 0 8px; 120border-radius: $circular_radius; 121box-shadow: none; 122background-color: $primary_color; 123color: $inversed_fg_color; 124 125&:hover { box-shadow: $z-depth-1; } 126} 127 128.documents-entry-tag.button { 129// @extend %simple_flat_button; 130 131// min-height: 24px; 132// min-width: 24px; 133margin: 0 -2px; 134padding: 4px; 135border-radius: $circular_radius; 136box-shadow: none; 137color: $secondary_inversed_fg_color; 138 139&:hover, &:active { color: $inversed_fg_color; } 140} 141 142// Workaround for the double border of the searchbar since we use a revealer which 143// always allocates at least 1 pixel 144.nautilus-window searchbar { border-top: 1px solid $borders_color; } 145 146.nautilus-window .searchbar-container { margin-top: -1px; } 147 148.nautilus-window headerbar > revealer > button { @extend %circular_button; } 149 150.conflict-row:not(:selected) { background-color: mix($warning_color, $base_color, percentage($lower_opacity)); } 151 152dialog.background > box.dialog-vbox.vertical > grid.horizontal { 153> scrolledwindow.frame { border-style: none; } 154 155> box.horizontal:last-child { 156margin: -6px 0 0 -6px; 157border-top: 1px solid $borders_color; 158 159> label { margin: 0 8px; } 160 161> box > button { border-radius: 0; } 162} 163} 164 165.nautilus-menu-sort-heading { 166// min-height: 26px; 167// padding-left: 5px; 168// padding-right: 5px; 169margin: 1px 3px; 170font-weight: 500; 171 172&:disabled { color: $tertiary_fg_color; } 173} 174 175.nautilus-window > popover.menu { 176padding: 3px; 177 178> stack > box > box > box { 179margin-top: -6px; 180 181> box { 182margin-bottom: -6px; 183 184&.linked { margin-top: 1px; } 185} 186} 187 188separator { margin-bottom: -2px; } 189} 190 191 192/********* 193* gedit * 194*********/ 195// based css: 196// https://git.gnome.org/browse/gedit/tree/gedit/resources/css/gedit.adwaita.css 197// hard-coded css: 198// https://git.gnome.org/browse/gedit/tree/gedit/resources/css/gedit-style.css 199 200// Only normal state is handle 201.open-document-selector-name-label { 202font-weight: bold; 203} 204 205// Only normal state is handle 206.open-document-selector-path-label { 207color: gtkalpha(currentColor, $hint_opacity); 208font-size: smaller; 209 210// @extend .dim-label; 211} 212 213.gedit-document-panel { 214background-color: $lighter_bg_color; 215} 216 217.gedit-document-panel-group-row { 218border-top: 1px solid $borders_color; 219} 220 221.gedit-document-panel-group-row:first-child { 222border-top: none; 223} 224 225// Try to look as the notebook tab close button 226.gedit-document-panel row button.flat { 227margin-top: 8px; 228margin-bottom: 8px; 229 230@extend %small_button; 231} 232 233.gedit-side-panel-paned statusbar { 234border-top: 1px solid $borders_color; 235} 236 237.gedit-search-slider { 238margin: 4px 4px 8px; 239 240entry { 241&:dir(ltr), 242&:dir(rtl) { // specificity bump 243border-radius: 2px; 244 245.gedit-search-entry-occurrences-tag { 246all: unset; 247color: gtkalpha(currentColor, $hint_opacity); 248} 249} 250 251$buttons_width: $small_size * 2 + $container_padding * 3; 252 253&:dir(ltr) { 254margin-right: -$buttons_width; 255padding-right: $buttons_width; 256 257.gedit-search-entry-occurrences-tag { margin-left: $container_padding; } 258 259image.right { margin-right: 0; } 260} 261 262&:dir(rtl) { 263margin-left: -$buttons_width; 264padding-left: $buttons_width; 265 266.gedit-search-entry-occurrences-tag { margin-right: $container_padding; } 267 268image.left { margin-left: 0; } 269} 270 271&.error ~ button { 272color: $secondary_inversed_fg_color; 273 274&:hover, &:active { color: $inversed_fg_color; } 275 276&:disabled { color: $disabled_secondary_inversed_fg_color; } 277} 278} 279 280button { 281border: solid $container_padding transparent; 282 283@extend %simple_flat_button; 284 285&:dir(ltr), 286&:dir(rtl) { @extend %small_button; } // specificity bump 287 288&:last-child:dir(ltr), 289&:not(:first-child):dir(rtl) { margin-left: -$container_padding / 2; } 290 291&:first-child:dir(rtl), 292&:not(:last-child):dir(ltr) { margin-right: -$container_padding / 2; } 293} 294} 295 296frame.gedit-map-frame > border { 297&:dir(ltr) { border-style: none none none solid; } 298&:dir(rtl) { border-style: none solid none none; } 299} 300 301 302/************** 303* Tweak Tool * 304**************/ 305// hard-coded css: 306// https://git.gnome.org/browse/gnome-tweak-tool/tree/data/shell.css 307 308// the sidebar 309.tweak-categories { 310// padding: 4px 0; 311// background-color: shade(@theme_bg_color, 0.99); 312background-image: image($lighter_bg_color); 313 314// hide separators 315separator { 316min-width: 0; 317min-height: 0; 318background: transparent; 319} 320} 321 322.tweak { 323padding: 3px; 324// padding-top: 3px; 325 326&.title:hover { box-shadow: none; } 327} 328 329.tweak-group-white, 330.tweak-white, 331.tweak-white:hover { 332// background-color: white; 333background-image: image($base_color); 334} 335 336.tweak-startup, 337.tweak-startup:hover { 338// background-color: lighter(shade(@theme_bg_color, 0.9)); 339background-image: image($base_color); 340} 341 342.tweak-group-startup { 343// background-color: @view_separators; 344background-image: image($base_color); 345border: 1px solid $borders_color; 346} 347 348 349/*********** 350* Builder * 351***********/ 352// based css: 353// https://git.gnome.org/browse/gnome-builder/tree/data/theme 354// hard-coded css: 355// https://git.gnome.org/browse/gnome-builder/tree/data/theme/shared.css 356 357// Titlebar adjustments for workbench 358// 359// This is needed due to our placement of headerbar inside of a 360// stack. We were seeing black edges around the header bar, and 361// improper radius on the headerbar. 362// 363workbench stack.titlebar { 364padding: 0; 365// box-shadow: none; 366} 367 368workbench:not(.tiled):not(.maximized):not(.fullscreen) stack.titlebar headerbar { 369border-radius: 2px 2px 0 0; 370// box-shadow: none; 371} 372 373perspectiveswitcher { 374background-color: $bg_color; 375} 376 377perspectiveswitcher button:checked { 378color: $primary_color; 379} 380 381// Layout tab and tab bar tweaks 382// The following makes the layout stack header look similar to a tab bar. 383layouttabbar { 384border-bottom: 1px solid $borders_color; 385background-color: $bg_color; 386} 387 388layouttabbar button { @extend %flat_button; } 389 390layouttabbar > box > button { 391margin: (40px - $medium_size) / 2 0; 392// border-radius: 0; 393} 394 395layouttab { 396margin: 0 8px; // not working 397border-style: none solid; 398border-width: 1px; 399border-color: $borders_color; 400box-shadow: inset 0 -2px $primary_color; 401background-color: $base_color; 402} 403 404layouttab separator.vertical { 405margin: 8px 4px; 406} 407 408layouttab button { 409&.text-button, &.image-button, & { 410margin-top: 8px; 411margin-bottom: 8px; 412padding: 0 4px; 413} 414} 415 416// Close button styling for layouttab. 417layouttab > box > button.close { 418border-radius: $circular_radius; 419} 420 421layout { 422border: 1px solid $borders_color; 423-PnlDockBin-handle-size: 1; 424} 425 426entry.search-missing { 427background-color: $error_color; 428color: $inversed_fg_color; 429} 430 431// tweak icons for treeviews 432workbench treeview.image { color: gtkalpha(currentColor, $hint_opacity); } 433workbench treeview.image:selected { color: $tertiary_inversed_fg_color; } 434 435dockbin { 436border: 1px solid $borders_color; 437-PnlDockBin-handle-size: 1; 438} 439 440dockpaned { 441border: 1px solid $borders_color; 442} 443 444eggsearchbar box.search-bar { 445padding: 0 8px; 446border-bottom: 1px solid $borders_color; 447background-color: $bg_color; 448} 449 450docktabstrip { 451padding: 0 8px; 452border-bottom: 1px solid $borders_color; 453background-color: $bg_color; 454} 455 456docktab { 457transition: $longer_transition; 458min-height: $small_size; 459min-width: $small_size; 460margin-bottom: -1px; 461padding: $container_padding 6px; 462 463outline-offset: -6px; 464 465border-width: 1px; // for reorderable tabs 466border-color: transparent; // 467 468color: $secondary_fg_color; 469font-weight: 500; 470 471&:hover { 472box-shadow: inset 0 -2px $track_color; 473color: $fg_color; 474} 475 476&:checked { 477animation: tab_ripple_effect $longer_duration * 3 $deceleration_curve; 478box-shadow: inset 0 -2px $primary_color; 479color: $fg_color; 480} 481} 482 483dockoverlayedge { 484background-color: $bg_color; 485} 486 487dockoverlayedge docktabstrip { 488padding: 0; 489border: none; 490} 491 492dockoverlayedge.left-edge docktab { 493&:hover { box-shadow: inset -2px 0 $track_color; } 494&:checked { box-shadow: inset -2px 0 $primary_color; } 495} 496 497dockoverlayedge.right-edge docktab { 498&:hover { box-shadow: inset 2px 0 $track_color; } 499&:checked { box-shadow: inset 2px 0 $primary_color; } 500} 501 502pillbox { 503background-color: $bg_color; 504border-radius: 2px; 505} 506 507buildperspective row { 508padding: 10px; 509} 510 511layoutpane entry.search { 512@extend %entry.flat; 513 514box-shadow: inset 0 -1px $borders_color; 515background-color: $base_color; 516} 517 518editortweak entry.search { 519@extend %entry.flat; 520 521margin-bottom: -1px; 522box-shadow: none; 523} 524 525// 526// let's tweak hard-coded elements 527// 528 529// styling for editor search 530frame.gb-search-frame { 531// border-bottom-left-radius: 5px; 532border-bottom-right-radius: 5px; 533} 534 535.gb-search-entry-occurrences-tag { 536box-shadow: none; 537background-color: transparent; 538} 539 540// Keep search bar and layouttab height in sync. 541docktabstrip { 542min-height: 39px; 543} 544 545layouttabbar > box { 546// min-height: 39px; 547} 548 549eggsearchbar > revealer > box { 550// min-height: 39px; 551} 552 553eggsearchbar entry { 554// min-height: 24px; 555} 556 557workbench preferences preferencesgroup list entry { 558// background: none; 559// min-height: 0px; 560padding-top: 8px; 561padding-bottom: 8px; 562} 563 564 565/********** 566* Photos * 567**********/ 568// based css: 569// https://git.gnome.org/browse/gnome-photos/tree/data/Adwaita.css 570 571GdMainIconView.content-view { 572-GdMainIconView-icon-size: 48; 573} 574 575// Make spinner visible on both dark and bright backgrounds w/o making 576// it look ugly/weird. 577GdMainIconView.content-view.cell:active { 578// color: $tertiary_fg_color; 579} 580 581.documents-counter { 582margin: 8px; 583border-radius: $circular_radius; 584box-shadow: $z-depth-2; 585background-color: $accent_color; 586color: $inversed_fg_color; 587font-weight: bold; 588} 589 590.photos-entry-tag { 591@extend .documents-entry-tag; 592} 593 594.documents-scrolledwin.frame { 595border-style: none; 596} 597 598.photos-icon-bg { 599} 600 601.photos-fade-in { 602opacity: 1; 603transition: opacity $shorter_duration $deceleration_curve; 604} 605 606.photos-fade-out { 607opacity: 0; 608transition: opacity $shorter_duration $deceleration_curve; 609} 610 611.photos-collection-icon { 612} 613 614overlay grid.horizontal > revealer > scrolledwindow.frame { 615&:dir(ltr) { border-style: none none none solid; } 616&:dir(rtl) { border-style: none solid none none; } 617} 618 619 620/********* 621* Music * 622*********/ 623// hard-coded css: 624// https://git.gnome.org/browse/gnome-music/tree/data/application.css 625 626.side-panel:dir(ltr) { 627// border-width: 0 1px 0 0; 628border-style: solid; 629border-color: $borders_color; 630} 631 632.side-panel:dir(rtl) { 633// border-width: 0 0 0 1px; 634border-style: solid; 635border-color: $borders_color; 636} 637 638.side-panel .view { 639// background-color: mix(@theme_fg_color, @theme_bg_color, 0.9); 640background-image: image($lighter_bg_color); 641 642&:hover { background-image: image(mix($fg_color, $lighter_bg_color, percentage(0.05))); } 643} 644 645.side-panel .view:selected { 646// background-color: mix(@theme_fg_color, @theme_bg_color, 0.5); 647background-image: image($primary_color); 648 649&:hover { background-image: image(mix($inversed_fg_color, $primary_color, percentage(0.05))); } 650} 651 652.playlists-list { 653// box-shadow: inset 0 -1px @view_separators; 654} 655 656.songs-list { 657// box-shadow: inset 0 1px shade(@borders, 1.30); 658// background-color: @theme_bg_color; 659 660&:hover { background-image: image($row_track_color); } 661} 662 663frame.documents-dropdown { 664@extend toolbar.osd; 665 666margin: 8px; 667 668> border { border: none; } 669} 670 671box.vertical:not(.titlebar) > revealer > toolbar.search-bar { 672border-bottom: 1px solid $borders_color; 673 674button > widget { 675-gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); 676// -GtkArrow-arrow-scaling: 1; 677} 678} 679 680 681/********* 682* To Do * 683*********/ 684task-row { 685transition: $shorter_transition; 686margin: 0 -4px; 687 688&:hover { transition: none; } 689 690label { margin: 0 8px; } 691 692image { margin: 0 4px; } 693} 694 695task-list-view > box > revealer > box > button { 696min-height: $medium_size; 697margin: -4px; 698padding: 0 12px; 699 700label { margin: 0 8px; } 701 702image { margin: 0 4px; } 703} 704 705 706/******* 707* eog * 708*******/ 709#eog-thumb-nav { 710scrolledwindow { border-top: none; } 711 712button { -gtk-outline-radius: 2px; } 713} 714 715 716/************* 717* Evolution * 718*************/ 719frame.taskbar > border { border-style: solid none none; } 720 721box.vertical > paned.horizontal notebook widget .frame { border-style: none; } 722 723 724/******** 725* gitg * 726********/ 727frame.commit-frame > border { border-style: solid none none; } 728 729 730/************** 731* Characters * 732**************/ 733box.dialog-vbox scrolledwindow.related { border: 1px solid $borders_color; } 734 735list.categories { background-image: image($lighter_bg_color); } 736 737 738/************** 739* Calculator * 740**************/ 741button.title label { min-height: $medium_size; } 742 743 744/************ 745* Terminix * 746************/ 747.terminix-background box.vertical > widget > box.horizontal { 748padding: 3px 0 2px; 749// border-bottom: 1px solid $borders_color; 750 751button { 752padding: 4px 8px; 753 754&.image-button { padding: 4px; } 755} 756} 757 758.terminix-background revealer > frame > border { 759// border-style: none none solid; 760border-style: none; 761} 762 763button.image-button.session-new-button { min-width: $medium_size - 4px; } 764 765overlay > revealer.left > scrolledwindow.frame, 766overlay > revealer.right > scrolledwindow.frame { 767border-style: none; 768box-shadow: $z-depth-4; 769} 770 771overlay > revealer.left > scrolledwindow.frame { 772margin-right: 32px; 773// border-style: none solid none none; 774} 775 776overlay > revealer.right > scrolledwindow.frame { 777margin-left: 32px; 778// border-style: none none none solid; 779} 780 781.terminix-session-sidebar { background-image: image($lighter_bg_color); } 782 783 784/*********** 785* Eclipse * 786***********/ 787window.background > box.vertical > scrolledwindow > widget toolbar { 788padding: 2px; 789 790separator, 791button { margin: 2px; } 792 793button { border-radius: 2px; } 794} 795 796 797/*********** 798* Firefox * 799***********/ 800window.background > widget > menubar { 801color: $secondary_inversed_fg_color; 802 803&:hover { color: $inversed_fg_color; } 804 805&:disabled { color: $disabled_secondary_inversed_fg_color; } 806} 807 808window.background > menu > menuitem > label:disabled { color: $disabled_fg_color; } 809 810window.background > window.background > menu > separator { color: $borders_color; } 811 812window.background > widget > frame { color: rgba(0, 0, 0, 0.2); } 813 814window.background > widget > checkbutton > check, 815window.background > widget > radiobutton > radio { 816margin: 0; 817padding: 0; 818} 819 820window.background > widget > radiobutton > radio:checked { 821-gtk-icon-source: image(-gtk-recolor(url("assets/radio-checked-symbolic.svg")), 822-gtk-recolor(url("assets/radio-checked-symbolic.png"))); 823border-image: none; 824} 825 826 827/*********** 828* Synapse * 829***********/ 830window.background > box.vertical > widget > widget:selected { background-color: $primary_color; } 831 832 833/********* 834* Unity * 835*********/ 836// based css: 837// http://bazaar.launchpad.net/~ubuntu-art-pkg/ubuntu-themes/trunk/view/head:/Ambiance/gtk-3.20/apps/unity.css 838 839// Decorations 840UnityDecoration { 841-UnityDecoration-extents: 28px 0 0 0; 842-UnityDecoration-input-extents: 8px; 843 844-UnityDecoration-shadow-offset-x: 0; 845-UnityDecoration-shadow-offset-y: 3px; 846-UnityDecoration-active-shadow-color: rgba(0, 0, 0, 0.48); 847-UnityDecoration-active-shadow-radius: 18px; 848-UnityDecoration-inactive-shadow-color: rgba(0, 0, 0, 0.32); 849-UnityDecoration-inactive-shadow-radius: 6px; 850 851-UnityDecoration-glow-size: 8px; 852-UnityDecoration-glow-color: $primary_color; 853 854-UnityDecoration-title-indent: 4px; 855-UnityDecoration-title-fade: 32px; 856-UnityDecoration-title-alignment: 0.0; 857} 858 859UnityDecoration.top { 860padding: 0 2px; 861border-style: none; 862border-radius: 2px 2px 0 0; 863// box-shadow: inset 0 1px $secondary_highlight_color; 864box-shadow: inset 0 1px scale-alpha(#FFFFFF, 0.1); 865background-color: $secondary_titlebar_color; 866color: $inversed_fg_color; 867} 868 869UnityDecoration.top:backdrop { 870color: $secondary_inversed_fg_color; 871} 872 873UnityDecoration.left, 874UnityDecoration.right { 875} 876 877UnityDecoration.bottom { 878} 879 880UnityDecoration.menuitem, 881UnityDecoration .menuitem { 882color: gtkalpha(currentColor, $enabled_opacity); 883} 884 885UnityDecoration.menubar.menuitem:hover, 886UnityDecoration.menubar .menuitem *:hover { 887box-shadow: inset 0 -2px currentColor; 888background-color: transparent; 889color: currentColor; 890} 891 892.background:not(.csd) headerbar:not(.titlebar) { 893border-radius: 0; 894box-shadow: none; 895 896&.inline-toolbar { border-style: none; } 897} 898 899SheetStyleDialog.unity-force-quit { 900// background-color: $bg_color; 901} 902 903// Panel Style 904UnityPanelWidget, 905.unity-panel { 906background-color: $topbar_color; 907background-image: image($topbar_color); 908color: $inversed_fg_color; 909} 910 911UnityPanelWidget:backdrop, 912.unity-panel:backdrop { 913color: $secondary_inversed_fg_color; 914} 915 916.unity-panel.menubar, 917.unity-panel .menubar { 918} 919 920.unity-panel.menuitem, 921.unity-panel .menuitem { 922color: gtkalpha(currentColor, $enabled_opacity); 923} 924 925.unity-panel.menubar.menuitem:hover, 926.unity-panel.menubar .menuitem *:hover { 927box-shadow: inset 0 -2px currentColor; 928background-color: transparent; 929color: currentColor; 930} 931 932@keyframes playbackmenuitem_spinner { 933to { -gtk-icon-transform: rotate(1turn); } 934} 935 936.menu IdoPlaybackMenuItem.menuitem:active { 937-gtk-icon-source: -gtk-icontheme("process-working-symbolic"); 938animation: playbackmenuitem_spinner 1s infinite linear; 939color: $primary_color; 940} 941 942