main.rc
Unicode text, UTF-8 text
1# vim:set ft=gtkrc ts=2 sw=2 sts=2 ai et: 2 3style "default" { 4 5xthickness = 1 6ythickness = 1 7 8#################### 9# Style Properties # 10#################### 11 12GtkWidget::focus-padding = 0 13GtkWidget::focus-line-width = 2 14GtkWidget::focus-line-pattern = "\2\1" 15 16GtkToolbar::space-size = 5 # 1 + 2*2 (separator + margins) 17GtkToolbar::internal-padding = 2 18GtkToolButton::icon-spacing = 4 19 20GtkWidget::tooltip-radius = 2 21GtkWidget::tooltip-alpha = 230 22GtkWidget::new-tooltip-style = 1 #for compatibility 23 24GtkWidget::link-color = @link_color 25GtkWidget::visited-link-color = @link_visited_color 26GnomeHRef::link_color = @link_color 27GtkHTML::link-color = @link_color 28GtkHTML::vlink-color = @link_visited_color 29GtkIMHtml::hyperlink-color = @link_color 30GtkIMHtml::hyperlink-visited-color = @link_visited_color 31 32GtkSeparatorMenuItem::horizontal-padding = 0 33GtkSeparatorMenuItem::wide-separators = 1 34GtkSeparatorMenuItem::separator-height = 3 35 36GtkButton::child-displacement-y = 0 37 38GtkButton::default-border = {0, 0, 0, 0} 39GtkButton::default-outside-border = {0, 0, 0, 0} 40GtkButton::inner-border = {4, 4, 4, 4} 41 42GtkEntry::state-hint = 1 43GtkEntry::inner-border = {6, 6, 6, 7} 44 45GtkPaned::handle-size = 8 46GtkHPaned::handle-size = 8 47GtkVPaned::handle-size = 8 48 49GtkScrollbar::trough-border = 0 50GtkRange::trough-border = 0 51GtkRange::slider-width = 17 52GtkRange::stepper-size = 0 53GtkRange::activate-slider = 1 54 55GtkScrollbar::activate-slider = 1 56GtkScrollbar::stepper-size = 0 57GtkScrollbar::has-backward-stepper = 0 58GtkScrollbar::has-forward-stepper = 0 59GtkScrollbar::min-slider-length = 32 # 24 + 2*4 (margins) 60GtkScrolledWindow::scrollbar-spacing = 0 61GtkScrolledWindow::scrollbars-within-bevel = 1 62 63GtkScale::slider_length = 24 64GtkScale::slider_width = 24 65GtkScale::trough-side-details = 1 66 67GtkProgressBar::min-horizontal-bar-height = 4 68GtkProgressBar::min-vertical-bar-width = 4 69GtkProgressBar::xspacing = 4 70GtkProgressBar::yspacing = 4 71 72GtkStatusbar::shadow_type = GTK_SHADOW_NONE 73GtkSpinButton::shadow_type = GTK_SHADOW_NONE 74GtkMenuBar::shadow-type = GTK_SHADOW_NONE 75GtkToolbar::shadow-type = GTK_SHADOW_NONE 76# TODO: find out what this comment means: 77# ( every window is misaligned for the sake of menus ): 78GtkMenuBar::internal-padding = 0 79GtkMenu::horizontal-padding = 0 80GtkMenu::vertical-padding = 4 81GtkMenu::double-arrows = 0 82GtkMenuItem::arrow-scaling = 1 83GtkMenuItem::toggle-spacing = 12 84 85GtkCheckButton::indicator-size = 24 86GtkCheckButton::indicator_spacing = 2 87GtkOptionMenu::indicator_spacing = {13, 13, 5, 7} 88 89GtkTreeView::expander-size = 16 90GtkTreeView::vertical-separator = 0 91GtkTreeView::horizontal-separator = 4 92GtkTreeView::allow-rules = 0 93# Set this because some apps read it 94GtkTreeView::odd-row-color = @base_color 95GtkTreeView::even-row-color = @base_color 96 97GtkExpander::expander-size = 16 98 99GtkNotebook::tab-overlap = 0 100 101########## 102# Colors # 103########## 104 105bg[NORMAL] = @bg_color 106bg[PRELIGHT] = @bg_color 107bg[SELECTED] = @selected_bg_color 108bg[INSENSITIVE] = @bg_color 109bg[ACTIVE] = @bg_color 110 111fg[NORMAL] = @fg_color 112fg[PRELIGHT] = @fg_color 113fg[SELECTED] = @selected_fg_color 114fg[INSENSITIVE] = mix (0.4, @fg_color, @bg_color) 115fg[ACTIVE] = @fg_color 116 117text[NORMAL] = @text_color 118text[PRELIGHT] = @text_color 119text[SELECTED] = @selected_fg_color 120text[INSENSITIVE] = mix (0.4, @text_color, @base_color) 121text[ACTIVE] = @selected_fg_color 122 123base[NORMAL] = @base_color 124base[PRELIGHT] = mix (0.05, @text_color, @base_color) 125base[SELECTED] = @selected_bg_color 126base[INSENSITIVE] = mix (0.5, @base_color, @bg_color) 127base[ACTIVE] = @selected_bg_color 128 129# For succinctness, all reasonable pixmap options remain here 130 131# Draw frame around menu in a non-compositied environment 132# This needs to go before pixmap because we need to override some stuff 133engine "adwaita" {} 134 135engine "pixmap" { 136 137################# 138# Check Buttons # 139################# 140 141image { 142function = CHECK 143state = NORMAL 144shadow = OUT 145overlay_file = "assets/checkbox-unchecked.png" 146overlay_stretch = FALSE 147} 148 149image { 150function = CHECK 151state = PRELIGHT 152shadow = OUT 153overlay_file = "assets/checkbox-unchecked-hover.png" 154overlay_stretch = FALSE 155} 156 157image { 158function = CHECK 159state = ACTIVE 160shadow = OUT 161overlay_file = "assets/checkbox-unchecked-active.png" 162overlay_stretch = FALSE 163} 164 165image { 166function = CHECK 167state = SELECTED 168shadow = OUT 169overlay_file = "assets/checkbox-unchecked.png" 170overlay_stretch = FALSE 171} 172 173image { 174function = CHECK 175state = INSENSITIVE 176shadow = OUT 177overlay_file = "assets/checkbox-unchecked-insensitive.png" 178overlay_stretch = FALSE 179} 180 181image { 182function = CHECK 183state = NORMAL 184shadow = IN 185overlay_file = "assets/checkbox-checked.png" 186overlay_stretch = FALSE 187} 188 189image { 190function = CHECK 191state = PRELIGHT 192shadow = IN 193overlay_file = "assets/checkbox-checked-hover.png" 194overlay_stretch = FALSE 195} 196 197image { 198function = CHECK 199state = ACTIVE 200shadow = IN 201overlay_file = "assets/checkbox-checked-active.png" 202overlay_stretch = FALSE 203} 204 205image { 206function = CHECK 207state = SELECTED 208shadow = IN 209overlay_file = "assets/checkbox-checked.png" 210overlay_stretch = FALSE 211} 212 213image { 214function = CHECK 215state = INSENSITIVE 216shadow = IN 217overlay_file = "assets/checkbox-checked-insensitive.png" 218overlay_stretch = FALSE 219} 220 221image { 222function = CHECK 223state = NORMAL 224shadow = ETCHED_IN 225overlay_file = "assets/checkbox-mixed.png" 226overlay_stretch = FALSE 227} 228 229image { 230function = CHECK 231state = PRELIGHT 232shadow = ETCHED_IN 233overlay_file = "assets/checkbox-mixed-hover.png" 234overlay_stretch = FALSE 235} 236 237image { 238function = CHECK 239state = ACTIVE 240shadow = ETCHED_IN 241overlay_file = "assets/checkbox-mixed-active.png" 242overlay_stretch = FALSE 243} 244 245image { 246function = CHECK 247state = SELECTED 248shadow = ETCHED_IN 249overlay_file = "assets/checkbox-mixed.png" 250overlay_stretch = FALSE 251} 252 253image { 254function = CHECK 255state = INSENSITIVE 256shadow = ETCHED_IN 257overlay_file = "assets/checkbox-mixed-insensitive.png" 258overlay_stretch = FALSE 259} 260 261################# 262# Radio Buttons # 263################# 264 265image { 266function = OPTION 267state = NORMAL 268shadow = OUT 269overlay_file = "assets/radio-unchecked.png" 270overlay_stretch = FALSE 271} 272 273image { 274function = OPTION 275state = PRELIGHT 276shadow = OUT 277overlay_file = "assets/radio-unchecked-hover.png" 278overlay_stretch = FALSE 279} 280 281image { 282function = OPTION 283state = ACTIVE 284shadow = OUT 285overlay_file = "assets/radio-unchecked-active.png" 286overlay_stretch = FALSE 287} 288 289image { 290function = OPTION 291state = SELECTED 292shadow = OUT 293overlay_file = "assets/radio-unchecked.png" 294overlay_stretch = FALSE 295} 296 297image { 298function = OPTION 299state = INSENSITIVE 300shadow = OUT 301overlay_file = "assets/radio-unchecked-insensitive.png" 302overlay_stretch = FALSE 303} 304 305image { 306function = OPTION 307state = NORMAL 308shadow = IN 309overlay_file = "assets/radio-checked.png" 310overlay_stretch = FALSE 311} 312 313image { 314function = OPTION 315state = PRELIGHT 316shadow = IN 317overlay_file = "assets/radio-checked-hover.png" 318overlay_stretch = FALSE 319} 320 321image { 322function = OPTION 323state = ACTIVE 324shadow = IN 325overlay_file = "assets/radio-checked-active.png" 326overlay_stretch = FALSE 327} 328 329image { 330function = OPTION 331state = SELECTED 332shadow = IN 333overlay_file = "assets/radio-checked.png" 334overlay_stretch = FALSE 335} 336 337image { 338function = OPTION 339state = INSENSITIVE 340shadow = IN 341overlay_file = "assets/radio-checked-insensitive.png" 342overlay_stretch = FALSE 343} 344 345image { 346function = OPTION 347state = NORMAL 348shadow = ETCHED_IN 349overlay_file = "assets/radio-mixed.png" 350overlay_stretch = FALSE 351} 352 353image { 354function = OPTION 355state = PRELIGHT 356shadow = ETCHED_IN 357overlay_file = "assets/radio-mixed-hover.png" 358overlay_stretch = FALSE 359} 360 361image { 362function = OPTION 363state = ACTIVE 364shadow = ETCHED_IN 365overlay_file = "assets/radio-mixed-active.png" 366overlay_stretch = FALSE 367} 368 369image { 370function = OPTION 371state = SELECTED 372shadow = ETCHED_IN 373overlay_file = "assets/radio-mixed.png" 374overlay_stretch = FALSE 375} 376 377image { 378function = OPTION 379state = INSENSITIVE 380shadow = ETCHED_IN 381overlay_file = "assets/radio-mixed-insensitive.png" 382overlay_stretch = FALSE 383} 384 385########## 386# Arrows # 387########## 388 389# Overrides 390 391# Disable arrows in spinbuttons 392image { 393function = ARROW 394detail = "spinbutton" 395} 396 397# Disable arrows for qt in scrollbars 398image { 399function = ARROW 400detail = "vscrollbar" 401} 402image { 403function = ARROW 404detail = "hscrollbar" 405} 406 407# Menu arrows 408 409image { 410function = ARROW 411state = NORMAL 412detail = "menuitem" 413overlay_file = "assets/pan-left.png" 414overlay_stretch = FALSE 415arrow_direction = LEFT 416} 417 418image { 419function = ARROW 420state = PRELIGHT 421detail = "menuitem" 422overlay_file = "assets/pan-left.png" 423overlay_stretch = FALSE 424arrow_direction = LEFT 425} 426 427image { 428function = ARROW 429state = INSENSITIVE 430detail = "menuitem" 431overlay_file = "assets/pan-left-insensitive.png" 432overlay_stretch = FALSE 433arrow_direction = LEFT 434} 435 436image { 437function = ARROW 438state = NORMAL 439detail = "menuitem" 440overlay_file = "assets/pan-right.png" 441overlay_stretch = FALSE 442arrow_direction = RIGHT 443} 444 445image { 446function = ARROW 447state = PRELIGHT 448detail = "menuitem" 449overlay_file = "assets/pan-right.png" 450overlay_stretch = FALSE 451arrow_direction = RIGHT 452} 453 454image { 455function = ARROW 456state = INSENSITIVE 457detail = "menuitem" 458overlay_file = "assets/pan-right-insensitive.png" 459overlay_stretch = FALSE 460arrow_direction = RIGHT 461} 462 463image { 464function = ARROW 465state = INSENSITIVE 466detail = "menu_scroll_arrow_up" 467overlay_file = "assets/pan-up-insensitive.png" 468overlay_stretch = FALSE 469} 470 471image { 472function = ARROW 473detail = "menu_scroll_arrow_up" 474overlay_file = "assets/pan-up.png" 475overlay_stretch = FALSE 476} 477 478image { 479function = ARROW 480state = INSENSITIVE 481detail = "menu_scroll_arrow_down" 482overlay_file = "assets/pan-down-insensitive.png" 483overlay_stretch = FALSE 484} 485 486image { 487function = ARROW 488detail = "menu_scroll_arrow_down" 489overlay_file = "assets/pan-down.png" 490overlay_stretch = FALSE 491} 492 493# Regular arrows 494 495image { 496function = ARROW 497state = NORMAL 498overlay_file = "assets/pan-up-alt.png" 499overlay_stretch = FALSE 500arrow_direction = UP 501} 502 503image { 504function = ARROW 505state = PRELIGHT 506overlay_file = "assets/pan-up.png" 507overlay_stretch = FALSE 508arrow_direction = UP 509} 510 511image { 512function = ARROW 513state = ACTIVE 514overlay_file = "assets/pan-up.png" 515overlay_stretch = FALSE 516arrow_direction = UP 517} 518 519image { 520function = ARROW 521state = INSENSITIVE 522overlay_file = "assets/pan-up-alt-insensitive.png" 523overlay_stretch = FALSE 524arrow_direction = UP 525} 526 527image { 528function = ARROW 529state = NORMAL 530overlay_file = "assets/pan-down-alt.png" 531overlay_stretch = FALSE 532arrow_direction = DOWN 533} 534 535image { 536function = ARROW 537state = PRELIGHT 538overlay_file = "assets/pan-down.png" 539overlay_stretch = FALSE 540arrow_direction = DOWN 541} 542 543image { 544function = ARROW 545state = ACTIVE 546overlay_file = "assets/pan-down.png" 547overlay_stretch = FALSE 548arrow_direction = DOWN 549} 550 551image { 552function = ARROW 553state = INSENSITIVE 554overlay_file = "assets/pan-down-alt-insensitive.png" 555overlay_stretch = FALSE 556arrow_direction = DOWN 557} 558 559image { 560function = ARROW 561state = NORMAL 562overlay_file = "assets/pan-left-alt.png" 563overlay_stretch = FALSE 564arrow_direction = LEFT 565} 566 567image { 568function = ARROW 569state = PRELIGHT 570overlay_file = "assets/pan-left.png" 571overlay_stretch = FALSE 572arrow_direction = LEFT 573} 574 575image { 576function = ARROW 577state = ACTIVE 578overlay_file = "assets/pan-left.png" 579overlay_stretch = FALSE 580arrow_direction = LEFT 581} 582 583image { 584function = ARROW 585state = INSENSITIVE 586overlay_file = "assets/pan-left-alt-insensitive.png" 587overlay_stretch = FALSE 588arrow_direction = LEFT 589} 590 591image { 592function = ARROW 593state = NORMAL 594overlay_file = "assets/pan-right-alt.png" 595overlay_stretch = FALSE 596arrow_direction = RIGHT 597} 598 599image { 600function = ARROW 601state = PRELIGHT 602overlay_file = "assets/pan-right.png" 603overlay_stretch = FALSE 604arrow_direction = RIGHT 605} 606 607image { 608function = ARROW 609state = ACTIVE 610overlay_file = "assets/pan-right.png" 611overlay_stretch = FALSE 612arrow_direction = RIGHT 613} 614 615image { 616function = ARROW 617state = INSENSITIVE 618overlay_file = "assets/pan-right-alt-insensitive.png" 619overlay_stretch = FALSE 620arrow_direction = RIGHT 621} 622 623###################### 624# Option Menu Arrows # 625###################### 626 627image { 628function = TAB 629state = NORMAL 630overlay_file = "assets/pan-down-alt.png" 631overlay_stretch = FALSE 632} 633 634image { 635function = TAB 636state = PRELIGHT 637overlay_file = "assets/pan-down.png" 638overlay_stretch = FALSE 639} 640 641image { 642function = TAB 643state = ACTIVE 644overlay_file = "assets/pan-down.png" 645overlay_stretch = FALSE 646} 647 648image { 649function = TAB 650state = INSENSITIVE 651overlay_file = "assets/pan-down-alt-insensitive.png" 652overlay_stretch = FALSE 653} 654 655######### 656# Lines # 657######### 658 659image { 660function = VLINE 661file = "assets/border.png" 662border = {1, 0, 0, 0} 663} 664 665image { 666function = HLINE 667file = "assets/border.png" 668border = {0, 0, 1, 0} 669} 670 671######### 672# Focus # 673######### 674 675image { 676function = FOCUS 677file = "assets/focus.png" 678border = {2, 2, 2, 2} 679stretch = TRUE 680} 681 682########### 683# Handles # 684########### 685 686image { 687function = HANDLE 688detail = "handlebox" 689overlay_file = "assets/handle-vert.png" 690overlay_stretch = FALSE 691} 692 693image { 694function = HANDLE 695state = NORMAL 696overlay_file = "assets/handle-horz.png" 697overlay_stretch = FALSE 698orientation = HORIZONTAL 699} 700 701image { 702function = HANDLE 703state = PRELIGHT 704overlay_file = "assets/handle-horz-hover.png" 705overlay_stretch = FALSE 706orientation = HORIZONTAL 707} 708 709image { 710function = HANDLE 711state = ACTIVE 712overlay_file = "assets/handle-horz-active.png" 713overlay_stretch = FALSE 714orientation = HORIZONTAL 715} 716 717image { 718function = HANDLE 719state = NORMAL 720overlay_file = "assets/handle-vert.png" 721overlay_stretch = FALSE 722orientation = VERTICAL 723} 724 725image { 726function = HANDLE 727state = PRELIGHT 728overlay_file = "assets/handle-vert-hover.png" 729overlay_stretch = FALSE 730orientation = VERTICAL 731} 732 733image { 734function = HANDLE 735state = ACTIVE 736overlay_file = "assets/handle-vert-active.png" 737overlay_stretch = FALSE 738orientation = VERTICAL 739} 740 741image { 742function = RESIZE_GRIP 743} 744 745############# 746# Expanders # 747############# 748 749image { 750function = EXPANDER 751expander_style = EXPANDED 752state = NORMAL 753file = "assets/pan-down-alt.png" 754} 755 756image { 757function = EXPANDER 758expander_style = EXPANDED 759state = PRELIGHT 760file = "assets/pan-down.png" 761} 762 763image { 764function = EXPANDER 765expander_style = EXPANDED 766state = ACTIVE 767file = "assets/pan-down.png" 768} 769 770image { 771function = EXPANDER 772expander_style = EXPANDED 773state = INSENSITIVE 774file = "assets/pan-down-alt-insensitive.png" 775} 776 777# LTR 778 779image { 780function = EXPANDER 781expander_style = COLLAPSED 782state = NORMAL 783file = "assets/pan-right-alt.png" 784direction = LTR 785} 786 787image { 788function = EXPANDER 789expander_style = COLLAPSED 790state = PRELIGHT 791file = "assets/pan-right.png" 792direction = LTR 793} 794 795image { 796function = EXPANDER 797expander_style = COLLAPSED 798state = ACTIVE 799file = "assets/pan-right.png" 800direction = LTR 801} 802 803image { 804function = EXPANDER 805expander_style = COLLAPSED 806state = INSENSITIVE 807file = "assets/pan-right-alt-insensitive.png" 808direction = LTR 809} 810 811image { 812function = EXPANDER 813expander_style = SEMI_COLLAPSED 814file = "assets/pan-right-semi.png" 815direction = LTR 816} 817 818image { 819function = EXPANDER 820expander_style = SEMI_EXPANDED 821file = "assets/pan-right-semi.png" 822direction = LTR 823} 824 825# RTL 826 827image { 828function = EXPANDER 829expander_style = COLLAPSED 830state = NORMAL 831file = "assets/pan-left-alt.png" 832direction = RTL 833} 834 835image { 836function = EXPANDER 837expander_style = COLLAPSED 838state = PRELIGHT 839file = "assets/pan-left.png" 840direction = RTL 841} 842 843image { 844function = EXPANDER 845expander_style = COLLAPSED 846state = ACTIVE 847file = "assets/pan-left.png" 848direction = RTL 849} 850 851image { 852function = EXPANDER 853expander_style = COLLAPSED 854state = INSENSITIVE 855file = "assets/pan-left-alt-insensitive.png" 856direction = RTL 857} 858 859image { 860function = EXPANDER 861expander_style = SEMI_COLLAPSED 862file = "assets/pan-left-semi.png" 863direction = RTL 864} 865 866image { 867function = EXPANDER 868expander_style = SEMI_EXPANDED 869file = "assets/pan-left-semi.png" 870direction = RTL 871} 872 873############# 874# Notebooks # 875############# 876 877# Left 878 879image { 880function = EXTENSION 881state = NORMAL 882file = "assets/tab.png" 883border = {0, 1, 0, 0} 884stretch = TRUE 885gap_side = RIGHT 886} 887 888image { 889function = EXTENSION 890gap_side = RIGHT 891} 892 893# Right 894 895image { 896function = EXTENSION 897state = NORMAL 898file = "assets/tab.png" 899border = {1, 0, 0, 0} 900stretch = TRUE 901gap_side = LEFT 902} 903 904image { 905function = EXTENSION 906gap_side = LEFT 907} 908 909# Up 910 911image { 912function = EXTENSION 913state = NORMAL 914file = "assets/tab.png" 915border = {0, 0, 0, 1} 916stretch = TRUE 917gap_side = BOTTOM 918} 919 920image { 921function = EXTENSION 922gap_side = BOTTOM 923} 924 925# Down 926 927image { 928function = EXTENSION 929state = NORMAL 930file = "assets/tab.png" 931border = {0, 0, 1, 0} 932stretch = TRUE 933gap_side = TOP 934} 935 936image { 937function = EXTENSION 938gap_side = TOP 939} 940 941# Inner frame 942 943image { 944function = BOX_GAP 945detail = "notebook" 946file = "assets/frame-notebook.png" 947border = {1, 1, 1, 1} 948stretch = TRUE 949gap_file = "assets/tab.png" 950gap_border = {1, 0, 0, 0} 951gap_side = LEFT 952} 953 954image { 955function = BOX_GAP 956detail = "notebook" 957file = "assets/frame-notebook.png" 958border = {1, 1, 1, 1} 959stretch = TRUE 960gap_file = "assets/tab.png" 961gap_border = {0, 1, 0, 0} 962gap_side = RIGHT 963} 964 965image { 966function = BOX_GAP 967detail = "notebook" 968file = "assets/frame-notebook.png" 969border = {1, 1, 1, 1} 970stretch = TRUE 971gap_file = "assets/tab.png" 972gap_border = {0, 0, 1, 0} 973gap_side = TOP 974} 975 976image { 977function = BOX_GAP 978detail = "notebook" 979file = "assets/frame-notebook.png" 980border = {1, 1, 1, 1} 981stretch = TRUE 982gap_file = "assets/tab.png" 983gap_border = {0, 0, 0, 1} 984gap_side = BOTTOM 985} 986 987# Standalone frame 988image { 989function = BOX 990detail = "notebook" 991file = "assets/frame-notebook.png" 992border = {1, 1, 1, 1} 993stretch = TRUE 994} 995 996############## 997# Scrollbars # 998############## 999 1000image { 1001function = BOX 1002detail = "trough" 1003file = "assets/scrollbar-horz-trough.png" 1004border = {0, 0, 1, 0} 1005orientation = HORIZONTAL 1006} 1007 1008image { 1009function = BOX 1010detail = "trough" 1011file = "assets/scrollbar-vert-trough.png" 1012border = {1, 0, 0, 0} 1013orientation = VERTICAL 1014direction = LTR 1015} 1016 1017image { 1018function = BOX 1019detail = "trough" 1020file = "assets/scrollbar-vert-trough-rtl.png" 1021border = {0, 1, 0, 0} 1022orientation = VERTICAL 1023direction = RTL 1024} 1025 1026 1027# Horizontal sliders 1028 1029image { 1030function = SLIDER 1031state = NORMAL 1032detail = "slider" 1033file = "assets/scrollbar-horz-slider.png" 1034border = {8, 8, 9, 8 } 1035stretch = TRUE 1036orientation = HORIZONTAL 1037} 1038 1039image { 1040function = SLIDER 1041state = PRELIGHT 1042detail = "slider" 1043file = "assets/scrollbar-horz-slider-hover.png" 1044border = {8, 8, 9, 8 } 1045stretch = TRUE 1046orientation = HORIZONTAL 1047} 1048 1049image { 1050function = SLIDER 1051state = ACTIVE 1052detail = "slider" 1053file = "assets/scrollbar-horz-slider-active.png" 1054border = {8, 8, 9, 8 } 1055stretch = TRUE 1056orientation = HORIZONTAL 1057} 1058 1059image { 1060function = SLIDER 1061state = INSENSITIVE 1062detail = "slider" 1063file = "assets/scrollbar-horz-slider-insensitive.png" 1064border = {8, 8, 9, 8 } 1065stretch = TRUE 1066orientation = HORIZONTAL 1067} 1068 1069# Vertical sliders 1070 1071image { 1072function = SLIDER 1073state = NORMAL 1074detail = "slider" 1075file = "assets/scrollbar-vert-slider.png" 1076border = {9, 8, 8, 8} 1077stretch = TRUE 1078orientation = VERTICAL 1079direction = LTR 1080} 1081 1082image { 1083function = SLIDER 1084state = PRELIGHT 1085detail = "slider" 1086file = "assets/scrollbar-vert-slider-hover.png" 1087border = {9, 8, 8, 8} 1088stretch = TRUE 1089orientation = VERTICAL 1090direction = LTR 1091} 1092 1093image { 1094function = SLIDER 1095state = ACTIVE 1096detail = "slider" 1097file = "assets/scrollbar-vert-slider-active.png" 1098border = {9, 8, 8, 8} 1099stretch = TRUE 1100orientation = VERTICAL 1101direction = LTR 1102} 1103 1104image { 1105function = SLIDER 1106state = INSENSITIVE 1107detail = "slider" 1108file = "assets/scrollbar-vert-slider-insensitive.png" 1109border = {9, 8, 8, 8} 1110stretch = TRUE 1111orientation = VERTICAL 1112direction = LTR 1113} 1114 1115# RTL 1116 1117image { 1118function = SLIDER 1119state = NORMAL 1120detail = "slider" 1121file = "assets/scrollbar-vert-slider-rtl.png" 1122border = {8, 9, 8, 8} 1123stretch = TRUE 1124orientation = VERTICAL 1125direction = RTL 1126} 1127 1128image { 1129function = SLIDER 1130state = PRELIGHT 1131detail = "slider" 1132file = "assets/scrollbar-vert-slider-hover-rtl.png" 1133border = {8, 9, 8, 8} 1134stretch = TRUE 1135orientation = VERTICAL 1136direction = RTL 1137} 1138 1139image { 1140function = SLIDER 1141state = ACTIVE 1142detail = "slider" 1143file = "assets/scrollbar-vert-slider-active-rtl.png" 1144border = {8, 9, 8, 8} 1145stretch = TRUE 1146orientation = VERTICAL 1147direction = RTL 1148} 1149 1150image { 1151function = SLIDER 1152state = INSENSITIVE 1153detail = "slider" 1154file = "assets/scrollbar-vert-slider-insensitive-rtl.png" 1155border = {8, 9, 8, 8} 1156stretch = TRUE 1157orientation = VERTICAL 1158direction = RTL 1159} 1160 1161########## 1162# Scales # 1163########## 1164 1165# Troughs 1166# They are overrided later on 1167# We set them here too because some widgets don't specify their orientation 1168 1169image { 1170function = BOX 1171detail = "trough-upper" 1172file = "assets/scale-horz-trough.png" 1173border = {4, 4, 0, 0} 1174stretch = TRUE 1175orientation = HORIZONTAL 1176} 1177 1178image { 1179function = BOX 1180state = INSENSITIVE 1181detail = "trough-upper" 1182file = "assets/scale-horz-trough-insensitive.png" 1183border = {4, 4, 0, 0} 1184stretch = TRUE 1185orientation = HORIZONTAL 1186} 1187 1188image { 1189function = BOX 1190detail = "trough-lower" 1191file = "assets/scale-horz-trough-active.png" 1192border = {4, 4, 0, 0} 1193stretch = TRUE 1194orientation = HORIZONTAL 1195} 1196 1197image { 1198function = BOX 1199state = INSENSITIVE 1200detail = "trough-lower" 1201file = "assets/scale-horz-trough-insensitive.png" 1202border = {4, 4, 0, 0} 1203stretch = TRUE 1204orientation = HORIZONTAL 1205} 1206 1207image { 1208function = BOX 1209detail = "trough-upper" 1210file = "assets/scale-vert-trough.png" 1211border = {0, 0, 4, 4} 1212stretch = TRUE 1213orientation = VERTICAL 1214} 1215 1216image { 1217function = BOX 1218state = INSENSITIVE 1219detail = "trough-upper" 1220file = "assets/scale-vert-trough-insensitive.png" 1221border = {0, 0, 4, 4} 1222stretch = TRUE 1223orientation = VERTICAL 1224} 1225 1226image { 1227function = BOX 1228detail = "trough-lower" 1229file = "assets/scale-vert-trough-active.png" 1230border = {0, 0, 4, 4} 1231stretch = TRUE 1232orientation = VERTICAL 1233} 1234 1235image { 1236function = BOX 1237state = INSENSITIVE 1238detail = "trough-lower" 1239file = "assets/scale-vert-trough-insensitive.png" 1240border = {0, 0, 4, 4} 1241stretch = TRUE 1242orientation = VERTICAL 1243} 1244 1245# Sliders 1246 1247image { 1248function = SLIDER 1249state = NORMAL 1250detail = "hscale" 1251file = "assets/scale-slider.png" 1252} 1253 1254image { 1255function = SLIDER 1256state = PRELIGHT 1257detail = "hscale" 1258file = "assets/scale-slider-hover.png" 1259} 1260 1261image { 1262function = SLIDER 1263state = ACTIVE 1264detail = "hscale" 1265file = "assets/scale-slider-active.png" 1266} 1267 1268image { 1269function = SLIDER 1270state = INSENSITIVE 1271detail = "hscale" 1272file = "assets/scale-slider-insensitive.png" 1273} 1274image { 1275function = SLIDER 1276state = NORMAL 1277detail = "vscale" 1278file = "assets/scale-slider.png" 1279} 1280 1281image { 1282function = SLIDER 1283state = PRELIGHT 1284detail = "vscale" 1285file = "assets/scale-slider-hover.png" 1286} 1287 1288image { 1289function = SLIDER 1290state = ACTIVE 1291detail = "vscale" 1292file = "assets/scale-slider-active.png" 1293} 1294 1295image { 1296function = SLIDER 1297state = INSENSITIVE 1298detail = "vscale" 1299file = "assets/scale-slider-insensitive.png" 1300} 1301 1302########### 1303# Menubar # 1304########### 1305 1306# image { 1307# function = BOX 1308# detail = "menubar" 1309# file = "assets/border.png" 1310# border = {0, 0, 0, 1} 1311# } 1312 1313######### 1314# Menus # 1315######### 1316 1317image { 1318function = BOX 1319state = PRELIGHT 1320detail = "menu_scroll_arrow_up" 1321file = "assets/border.png" 1322} 1323 1324image { 1325function = BOX 1326detail = "menu_scroll_arrow_up" 1327file = "assets/border.png" 1328border = {0, 0, 0, 1} 1329} 1330 1331image { 1332function = BOX 1333state = PRELIGHT 1334detail = "menu_scroll_arrow_down" 1335file = "assets/border.png" 1336} 1337 1338image { 1339function = BOX 1340detail = "menu_scroll_arrow_down" 1341file = "assets/border.png" 1342border = {0, 0, 1, 0} 1343} 1344 1345########### 1346# Entries # 1347########### 1348 1349 1350image { 1351function = SHADOW 1352state = ACTIVE 1353detail = "entry" 1354file = "assets/entry-active.png" 1355border = {6, 6, 6, 6} 1356stretch = TRUE 1357} 1358 1359image { 1360function = SHADOW 1361state = INSENSITIVE 1362detail = "entry" 1363file = "assets/entry-insensitive.png" 1364border = {6, 6, 6, 6} 1365stretch = TRUE 1366} 1367 1368image { 1369function = SHADOW 1370detail = "entry" 1371file = "assets/entry.png" 1372border = {6, 6, 6, 6} 1373stretch = TRUE 1374} 1375 1376image { 1377function = FLAT_BOX 1378state = ACTIVE 1379detail = "entry_bg" 1380file = "assets/entry-background.png" 1381} 1382 1383image { 1384function = FLAT_BOX 1385state = INSENSITIVE 1386detail = "entry_bg" 1387file = "assets/entry-background-insensitive.png" 1388} 1389 1390image { 1391function = FLAT_BOX 1392detail = "entry_bg" 1393file = "assets/entry-background.png" 1394} 1395######### 1396# Spins # 1397######### 1398 1399# Spin-Up LTR 1400 1401image { 1402function = BOX 1403state = NORMAL 1404detail = "spinbutton_up" 1405file = "assets/spin-ltr-up.png" 1406border = {0, 8, 8, 0} 1407stretch = TRUE 1408overlay_file = "assets/pan-up-alt.png" 1409overlay_stretch = FALSE 1410direction = LTR 1411} 1412 1413image { 1414function = BOX 1415state = PRELIGHT 1416detail = "spinbutton_up" 1417file = "assets/spin-ltr-up-hover.png" 1418border = {0, 8, 8, 0} 1419stretch = TRUE 1420overlay_file = "assets/pan-up.png" 1421overlay_stretch = FALSE 1422direction = LTR 1423} 1424 1425image { 1426function = BOX 1427state = ACTIVE 1428detail = "spinbutton_up" 1429file = "assets/spin-ltr-up-active.png" 1430border = {0, 8, 8, 0} 1431stretch = TRUE 1432overlay_file = "assets/pan-up.png" 1433overlay_stretch = FALSE 1434direction = LTR 1435} 1436 1437image { 1438function = BOX 1439state = INSENSITIVE 1440detail = "spinbutton_up" 1441file = "assets/spin-ltr-up-insensitive.png" 1442border = {0, 8, 8, 0} 1443stretch = TRUE 1444overlay_file = "assets/pan-up-alt-insensitive.png" 1445overlay_stretch = FALSE 1446direction = LTR 1447} 1448 1449# Spin-Up RTL 1450 1451image { 1452function = BOX 1453state = NORMAL 1454detail = "spinbutton_up" 1455file = "assets/spin-rtl-up.png" 1456border = {8, 0, 8, 0} 1457stretch = TRUE 1458overlay_file = "assets/pan-up-alt.png" 1459overlay_stretch = FALSE 1460direction = RTL 1461} 1462 1463image { 1464function = BOX 1465state = PRELIGHT 1466detail = "spinbutton_up" 1467file = "assets/spin-rtl-up-hover.png" 1468border = {8, 0, 8, 0} 1469stretch = TRUE 1470overlay_file = "assets/pan-up.png" 1471overlay_stretch = FALSE 1472direction = RTL 1473} 1474 1475image { 1476function = BOX 1477state = ACTIVE 1478detail = "spinbutton_up" 1479file = "assets/spin-rtl-up-hover.png" 1480border = {8, 0, 8, 0} 1481stretch = TRUE 1482overlay_file = "assets/pan-up.png" 1483overlay_stretch = FALSE 1484direction = RTL 1485} 1486 1487image { 1488function = BOX 1489state = INSENSITIVE 1490detail = "spinbutton_up" 1491file = "assets/spin-rtl-up-insensitive.png" 1492border = {8, 0, 8, 0} 1493stretch = TRUE 1494overlay_file = "assets/pan-up-alt-insensitive.png" 1495overlay_stretch = FALSE 1496direction = RTL 1497} 1498 1499# Spin-Down LTR 1500 1501image { 1502function = BOX 1503state = NORMAL 1504detail = "spinbutton_down" 1505file = "assets/spin-ltr-down.png" 1506border = {0, 8, 0, 8} 1507stretch = TRUE 1508overlay_file = "assets/pan-down-alt.png" 1509overlay_stretch = FALSE 1510direction = LTR 1511} 1512 1513image { 1514function = BOX 1515state = PRELIGHT 1516detail = "spinbutton_down" 1517file = "assets/spin-ltr-down-hover.png" 1518border = {0, 8, 0, 8} 1519stretch = TRUE 1520overlay_file = "assets/pan-down.png" 1521overlay_stretch = FALSE 1522direction = LTR 1523} 1524 1525image { 1526function = BOX 1527state = ACTIVE 1528detail = "spinbutton_down" 1529file = "assets/spin-ltr-down-active.png" 1530border = {0, 8, 0, 8} 1531stretch = TRUE 1532overlay_file = "assets/pan-down.png" 1533overlay_stretch = FALSE 1534direction = LTR 1535} 1536 1537image { 1538function = BOX 1539state = INSENSITIVE 1540detail = "spinbutton_down" 1541file = "assets/spin-ltr-down-insensitive.png" 1542border = {0, 8, 0, 8} 1543stretch = TRUE 1544overlay_file = "assets/pan-down-alt-insensitive.png" 1545overlay_stretch = FALSE 1546direction = LTR 1547} 1548 1549# Spin-Down RTL 1550 1551image { 1552function = BOX 1553state = NORMAL 1554detail = "spinbutton_down" 1555file = "assets/spin-rtl-down.png" 1556border = {8, 0, 0, 8} 1557stretch = TRUE 1558overlay_file = "assets/pan-down-alt.png" 1559overlay_stretch = FALSE 1560direction = RTL 1561} 1562 1563image { 1564function = BOX 1565state = PRELIGHT 1566detail = "spinbutton_down" 1567file = "assets/spin-rtl-down-hover.png" 1568border = {8, 0, 0, 8} 1569stretch = TRUE 1570overlay_file = "assets/pan-down.png" 1571overlay_stretch = FALSE 1572direction = RTL 1573} 1574 1575image { 1576function = BOX 1577state = ACTIVE 1578detail = "spinbutton_down" 1579file = "assets/spin-rtl-down-active.png" 1580border = {8, 0, 0, 8} 1581stretch = TRUE 1582overlay_file = "assets/pan-down.png" 1583overlay_stretch = FALSE 1584direction = RTL 1585} 1586 1587image { 1588function = BOX 1589state = INSENSITIVE 1590detail = "spinbutton_down" 1591file = "assets/spin-rtl-down-insensitive.png" 1592border = {8, 0, 0, 8} 1593stretch = TRUE 1594overlay_file = "assets/pan-down-alt-insensitive.png" 1595overlay_stretch = FALSE 1596direction = RTL 1597} 1598 1599############## 1600# Scrollbars # 1601############## 1602 1603image { 1604function = BOX 1605detail = "bar" 1606file = "assets/progressbar.png" 1607stretch = TRUE 1608border = {0, 0, 0, 0} 1609orientation = HORIZONTAL 1610} 1611 1612image { 1613function = BOX 1614detail = "bar" 1615file = "assets/progressbar.png" 1616stretch = TRUE 1617border = {0, 0, 0, 0} 1618orientation = VERTICAL 1619} 1620 1621############# 1622# Treeviews # 1623############# 1624 1625# Disable active the column highlight 1626# We need to match specific cells or we break stuff 1627# Looking at you deadbeef 1628 1629image { 1630function = FLAT_BOX 1631detail = "cell_even_sorted" 1632state = NORMAL 1633} 1634 1635image { 1636function = FLAT_BOX 1637detail = "cell_odd_sorted" 1638state = NORMAL 1639} 1640 1641# Disable all the other shadows 1642# This prevents the Raleigh effect 1643image { 1644function = SHADOW 1645} 1646 1647} 1648 1649} 1650 1651style "menubar" { 1652 1653fg[NORMAL] = mix(0.75, @selected_fg_color, @headerbar_color) 1654bg[NORMAL] = @headerbar_color 1655fg[PRELIGHT] = @selected_fg_color 1656# Needed to fix Firefox's menubar text 1657bg[SELECTED] = mix(0.15, @selected_fg_color, @headerbar_color) 1658fg[SELECTED] = @selected_fg_color 1659 1660} 1661 1662style "menubar_item" { 1663 1664xthickness = 3 1665ythickness = 4 1666 1667fg[NORMAL] = mix(0.75, @selected_fg_color, @headerbar_color) 1668bg[PRELIGHT] = mix(0.15, @selected_fg_color, @headerbar_color) 1669fg[PRELIGHT] = @selected_fg_color 1670 1671} 1672 1673style "menu" { 1674 1675xthickness = 0 1676ythickness = 0 1677 1678bg[NORMAL] = @base_color 1679bg[INSENSITIVE] = @base_color 1680bg[PRELIGHT] = @base_color 1681bg[SELECTED] = mix(0.15, @fg_color, @base_color) 1682 1683} 1684 1685style "menu_item" { 1686 1687xthickness = 4 1688ythickness = 4 1689 1690bg[PRELIGHT] = mix(0.15, @fg_color, @base_color) 1691fg[PRELIGHT] = @fg_color 1692# Chromium uses this setting 1693bg[SELECTED] = mix(0.15, @fg_color, @base_color) 1694text[SELECTED] = @fg_color 1695 1696# Some widgets use text, we need to handle that 1697text[NORMAL] = @fg_color 1698text[PRELIGHT] = @fg_color 1699 1700# Unfortunately we can't tell regular and menu checks/radios apart 1701# Without the heirarchy 1702engine "pixmap" { 1703 1704################# 1705# Check Buttons # 1706################# 1707 1708image { 1709function = CHECK 1710state = NORMAL 1711shadow = OUT 1712overlay_file = "assets/menu-checkbox.png" 1713overlay_stretch = FALSE 1714} 1715 1716image { 1717function = CHECK 1718state = PRELIGHT 1719shadow = OUT 1720overlay_file = "assets/menu-checkbox.png" 1721overlay_stretch = FALSE 1722} 1723 1724image { 1725function = CHECK 1726state = ACTIVE 1727shadow = OUT 1728overlay_file = "assets/menu-checkbox.png" 1729overlay_stretch = FALSE 1730} 1731 1732image { 1733function = CHECK 1734state = INSENSITIVE 1735shadow = OUT 1736overlay_file = "assets/menu-checkbox-insensitive.png" 1737overlay_stretch = FALSE 1738} 1739 1740image { 1741function = CHECK 1742state = NORMAL 1743shadow = IN 1744overlay_file = "assets/menu-checkbox-checked.png" 1745overlay_stretch = FALSE 1746} 1747 1748image { 1749function = CHECK 1750state = PRELIGHT 1751shadow = IN 1752overlay_file = "assets/menu-checkbox-checked.png" 1753overlay_stretch = FALSE 1754} 1755 1756image { 1757function = CHECK 1758state = ACTIVE 1759shadow = IN 1760overlay_file = "assets/menu-checkbox-checked.png" 1761overlay_stretch = FALSE 1762} 1763 1764image { 1765function = CHECK 1766state = INSENSITIVE 1767shadow = IN 1768overlay_file = "assets/menu-checkbox-checked-insensitive.png" 1769overlay_stretch = FALSE 1770} 1771 1772image { 1773function = CHECK 1774state = NORMAL 1775shadow = ETCHED_IN 1776overlay_file = "assets/menu-checkbox-mixed.png" 1777overlay_stretch = FALSE 1778} 1779 1780image { 1781function = CHECK 1782state = PRELIGHT 1783shadow = ETCHED_IN 1784overlay_file = "assets/menu-checkbox-mixed.png" 1785overlay_stretch = FALSE 1786} 1787 1788image { 1789function = CHECK 1790state = ACTIVE 1791shadow = ETCHED_IN 1792overlay_file = "assets/menu-checkbox-mixed.png" 1793overlay_stretch = FALSE 1794} 1795 1796image { 1797function = CHECK 1798state = INSENSITIVE 1799shadow = ETCHED_IN 1800overlay_file = "assets/menu-checkbox-mixed-insensitive.png" 1801overlay_stretch = FALSE 1802} 1803 1804################# 1805# Radio Buttons # 1806################# 1807 1808image { 1809function = OPTION 1810state = NORMAL 1811shadow = OUT 1812overlay_file = "assets/menu-radio.png" 1813overlay_stretch = FALSE 1814} 1815 1816image { 1817function = OPTION 1818state = PRELIGHT 1819shadow = OUT 1820overlay_file = "assets/menu-radio.png" 1821overlay_stretch = FALSE 1822} 1823 1824image { 1825function = OPTION 1826state = ACTIVE 1827shadow = OUT 1828overlay_file = "assets/menu-radio.png" 1829overlay_stretch = FALSE 1830} 1831 1832image { 1833function = OPTION 1834state = INSENSITIVE 1835shadow = OUT 1836overlay_file = "assets/menu-radio-insensitive.png" 1837overlay_stretch = FALSE 1838} 1839 1840image { 1841function = OPTION 1842state = NORMAL 1843shadow = IN 1844overlay_file = "assets/menu-radio-checked.png" 1845overlay_stretch = FALSE 1846} 1847 1848image { 1849function = OPTION 1850state = PRELIGHT 1851shadow = IN 1852overlay_file = "assets/menu-radio-checked.png" 1853overlay_stretch = FALSE 1854} 1855 1856image { 1857function = OPTION 1858state = ACTIVE 1859shadow = IN 1860overlay_file = "assets/menu-radio-checked.png" 1861overlay_stretch = FALSE 1862} 1863 1864image { 1865function = OPTION 1866state = INSENSITIVE 1867shadow = IN 1868overlay_file = "assets/menu-radio-checked-insensitive.png" 1869overlay_stretch = FALSE 1870} 1871 1872image { 1873function = OPTION 1874state = NORMAL 1875shadow = ETCHED_IN 1876overlay_file = "assets/menu-radio-mixed.png" 1877overlay_stretch = FALSE 1878} 1879 1880image { 1881function = OPTION 1882state = PRELIGHT 1883shadow = ETCHED_IN 1884overlay_file = "assets/menu-radio-mixed.png" 1885overlay_stretch = FALSE 1886} 1887 1888image { 1889function = OPTION 1890state = ACTIVE 1891shadow = ETCHED_IN 1892overlay_file = "assets/menu-radio-mixed.png" 1893overlay_stretch = FALSE 1894} 1895 1896image { 1897function = OPTION 1898state = INSENSITIVE 1899shadow = ETCHED_IN 1900overlay_file = "assets/menu-radio-mixed-insensitive.png" 1901overlay_stretch = FALSE 1902} 1903 1904 1905 1906} 1907 1908} 1909 1910style "separator_menu_item" { 1911 1912xthickness = 0 1913ythickness = 2 1914 1915engine "pixmap" { 1916image { 1917function = BOX 1918file = "assets/border.png" 1919border = {0, 0, 0, 1} 1920} 1921} 1922 1923} 1924 1925style "button_label" { 1926fg[NORMAL] = mix(0.75, @fg_color, @bg_color) 1927# fg[INSENSITIVE] = mix(0.3, @fg_color, @bg_color) 1928 1929font_name = "Medium" 1930} 1931 1932style "checkbutton_label" { 1933fg[NORMAL] = @fg_color 1934# fg[INSENSITIVE] = mix(0.4, @fg_color, @bg_color) 1935 1936font_name = "Regular" 1937} 1938 1939style "button" { 1940 1941xthickness = 4 1942ythickness = 4 1943 1944# For the sake of sanity style buttons this way 1945engine "pixmap" { 1946 1947########### 1948# Buttons # 1949########### 1950 1951image { 1952function = BOX 1953state = NORMAL 1954file = "assets/button.png" 1955border = {8, 8, 8, 8} 1956stretch = TRUE 1957} 1958 1959image { 1960function = BOX 1961state = PRELIGHT 1962shadow = OUT 1963file = "assets/button-hover.png" 1964border = {8, 8, 8, 8} 1965stretch = TRUE 1966} 1967 1968# Don't add hover effect on pressed buttons 1969image { 1970function = BOX 1971state = PRELIGHT 1972shadow = IN 1973file = "assets/button-active.png" 1974border = {8, 8, 8, 8} 1975stretch = TRUE 1976} 1977 1978image { 1979function = BOX 1980state = ACTIVE 1981file = "assets/button-active.png" 1982border = {8, 8, 8, 8} 1983stretch = TRUE 1984} 1985 1986image { 1987function = BOX 1988state = INSENSITIVE 1989file = "assets/button-insensitive.png" 1990border = {8, 8, 8, 8} 1991stretch = TRUE 1992} 1993} 1994} 1995 1996style "link_button" { 1997 1998# Disable the button effect, leave just the link 1999engine "pixmap" { 2000image { 2001function = BOX 2002} 2003} 2004 2005} 2006 2007style "entry" { 2008 2009# We set this same as the border of the border of the entry 2010# This way there's no overlap 2011xthickness = 4 2012ythickness = 4 2013 2014} 2015 2016style "spinbutton" { 2017 2018xthickness = 6 2019ythickness = 4 2020 2021} 2022 2023style "combobox" { 2024 2025xthickness = 6 2026ythickness = 6 2027 2028# This affects only the button beside an entry 2029GtkButton::inner-border = {0, 0, 0, 0} 2030 2031} 2032 2033style "combobox_cellview" { 2034text[NORMAL] = mix(0.75, @fg_color, @bg_color) 2035# text[INSENSITIVE] = mix(0.3, @fg_color, @bg_color) 2036 2037font_name = "Medium" 2038} 2039 2040style "combobox_entry" { 2041 2042# Since one side of the button is missing, we need to shift the arrow a little to the right 2043GtkButton::inner-border = {0, 3, 0, 0} 2044 2045engine "pixmap" { 2046 2047############# 2048# LTR entry # 2049############# 2050 2051image { 2052function = SHADOW 2053state = NORMAL 2054detail = "entry" 2055file = "assets/combo-entry-ltr-entry.png" 2056border = {8, 0, 8, 8} 2057stretch = TRUE 2058direction = LTR 2059} 2060 2061image { 2062function = SHADOW 2063state = ACTIVE 2064detail = "entry" 2065file = "assets/combo-entry-ltr-entry-active.png" 2066border = {8, 0, 8, 8} 2067stretch = TRUE 2068direction = LTR 2069} 2070 2071image { 2072function = SHADOW 2073state = INSENSITIVE 2074detail = "entry" 2075file = "assets/combo-entry-ltr-entry-insensitive.png" 2076border = {8, 0, 8, 8} 2077stretch = TRUE 2078direction = LTR 2079} 2080 2081############# 2082# RTL entry # 2083############# 2084 2085image { 2086function = SHADOW 2087state = NORMAL 2088detail = "entry" 2089file = "assets/combo-entry-rtl-entry.png" 2090border = {0, 8, 8, 8} 2091stretch = TRUE 2092direction = RTL 2093} 2094 2095image { 2096function = SHADOW 2097state = ACTIVE 2098detail = "entry" 2099file = "assets/combo-entry-rtl-entry-active.png" 2100border = {0, 8, 8, 8} 2101stretch = TRUE 2102direction = RTL 2103} 2104 2105image { 2106function = SHADOW 2107state = INSENSITIVE 2108detail = "entry" 2109file = "assets/combo-entry-rtl-entry-insensitive.png" 2110border = {0, 8, 8, 8} 2111stretch = TRUE 2112direction = RTL 2113} 2114 2115############## 2116# LTR button # 2117############## 2118 2119image { 2120function = BOX 2121state = NORMAL 2122detail = "button" 2123file = "assets/combo-entry-ltr-button.png" 2124border = {0, 8, 8, 8} 2125stretch = TRUE 2126direction = LTR 2127} 2128 2129image { 2130function = BOX 2131state = PRELIGHT 2132detail = "button" 2133file = "assets/combo-entry-ltr-button-hover.png" 2134border = {0, 8, 8, 8} 2135stretch = TRUE 2136direction = LTR 2137} 2138 2139image { 2140function = BOX 2141state = ACTIVE 2142detail = "button" 2143file = "assets/combo-entry-ltr-button-active.png" 2144border = {0, 8, 8, 8} 2145stretch = TRUE 2146direction = LTR 2147} 2148 2149image { 2150function = BOX 2151state = INSENSITIVE 2152detail = "button" 2153file = "assets/combo-entry-ltr-button-insensitive.png" 2154border = {0, 8, 8, 8} 2155stretch = TRUE 2156direction = LTR 2157} 2158 2159############## 2160# RTL button # 2161############## 2162 2163image { 2164function = BOX 2165state = NORMAL 2166detail = "button" 2167file = "assets/combo-entry-rtl-button.png" 2168border = {8, 0, 8, 8} 2169stretch = TRUE 2170direction = RTL 2171} 2172 2173image { 2174function = BOX 2175state = PRELIGHT 2176detail = "button" 2177file = "assets/combo-entry-rtl-button-hover.png" 2178border = {8, 0, 8, 8} 2179stretch = TRUE 2180direction = RTL 2181} 2182 2183image { 2184function = BOX 2185state = ACTIVE 2186detail = "button" 2187file = "assets/combo-entry-rtl-button-active.png" 2188border = {8, 0, 8, 8} 2189stretch = TRUE 2190direction = RTL 2191} 2192 2193image { 2194function = BOX 2195state = INSENSITIVE 2196detail = "button" 2197file = "assets/combo-entry-rtl-button-insensitive.png" 2198border = {8, 0, 8, 8} 2199stretch = TRUE 2200direction = RTL 2201} 2202 2203} 2204 2205} 2206 2207style "combo_button_padding" { 2208 2209# Since one side of the button is missing, we need to shift the arrow a little to the right 2210# This is the same thing we've done above but the combo, unlike the combobox, 2211# uses padding the same way as a button 2212GtkButton::inner-border = {4, 7, 4, 4} 2213 2214} 2215 2216style "notebook" { 2217 2218xthickness = 3 2219ythickness = 3 2220 2221} 2222 2223style "notebook_tab_label" { 2224fg[ACTIVE] = mix(0.75, @fg_color, @bg_color) 2225 2226font_name = "Medium" 2227} 2228 2229style "notebook_viewport" { 2230bg[NORMAL] = @base_color 2231} 2232 2233style "notebook_bg" { 2234bg[NORMAL] = @base_color 2235bg[PRELIGHT] = @base_color 2236bg[INSENSITIVE] = @base_color 2237} 2238 2239style "notebook_entry" { 2240 2241engine "pixmap" { 2242 2243image { 2244function = SHADOW 2245state = ACTIVE 2246detail = "entry" 2247file = "assets/notebook-entry-active.png" 2248border = {6, 6, 6, 6} 2249stretch = TRUE 2250} 2251 2252image { 2253function = SHADOW 2254state = INSENSITIVE 2255detail = "entry" 2256file = "assets/notebook-entry-insensitive.png" 2257border = {6, 6, 6, 6} 2258stretch = TRUE 2259} 2260 2261image { 2262function = SHADOW 2263detail = "entry" 2264file = "assets/notebook-entry.png" 2265border = {6, 6, 6, 6} 2266stretch = TRUE 2267} 2268} 2269} 2270 2271style "normal_bg" { 2272bg[NORMAL] = @bg_color 2273bg[PRELIGHT] = @bg_color 2274bg[INSENSITIVE] = @bg_color 2275} 2276 2277style "normal_entry" { 2278 2279engine "pixmap" { 2280 2281image { 2282function = SHADOW 2283state = ACTIVE 2284detail = "entry" 2285file = "assets/entry-active.png" 2286border = {6, 6, 6, 6} 2287stretch = TRUE 2288} 2289 2290image { 2291function = SHADOW 2292state = INSENSITIVE 2293detail = "entry" 2294file = "assets/entry-insensitive.png" 2295border = {6, 6, 6, 6} 2296stretch = TRUE 2297} 2298 2299image { 2300function = SHADOW 2301detail = "entry" 2302file = "assets/entry.png" 2303border = {6, 6, 6, 6} 2304stretch = TRUE 2305} 2306} 2307} 2308 2309style "notebook_combo" { 2310 2311engine "pixmap" { 2312 2313############# 2314# LTR entry # 2315############# 2316 2317image { 2318function = SHADOW 2319state = NORMAL 2320detail = "entry" 2321file = "assets/notebook-combo-entry-ltr-entry.png" 2322border = {8, 8, 8, 8} 2323stretch = TRUE 2324direction = LTR 2325} 2326 2327image { 2328function = SHADOW 2329state = ACTIVE 2330detail = "entry" 2331file = "assets/notebook-combo-entry-ltr-entry-active.png" 2332border = {8, 8, 8, 8} 2333stretch = TRUE 2334direction = LTR 2335} 2336 2337image { 2338function = SHADOW 2339state = INSENSITIVE 2340detail = "entry" 2341file = "assets/notebook-combo-entry-ltr-entry-insensitive.png" 2342border = {8, 8, 8, 8} 2343stretch = TRUE 2344direction = LTR 2345} 2346 2347############# 2348# RTL entry # 2349############# 2350 2351image { 2352function = SHADOW 2353state = NORMAL 2354detail = "entry" 2355file = "assets/notebook-combo-entry-rtl-entry.png" 2356border = {8, 8, 8, 8} 2357stretch = TRUE 2358direction = RTL 2359} 2360 2361image { 2362function = SHADOW 2363state = ACTIVE 2364detail = "entry" 2365file = "assets/notebook-combo-entry-rtl-entry-active.png" 2366border = {8, 8, 8, 8} 2367stretch = TRUE 2368direction = RTL 2369} 2370 2371image { 2372function = SHADOW 2373state = INSENSITIVE 2374detail = "entry" 2375file = "assets/notebook-combo-entry-rtl-entry-insensitive.png" 2376border = {8, 8, 8, 8} 2377stretch = TRUE 2378direction = RTL 2379} 2380 2381} 2382 2383} 2384 2385style "textview" { 2386bg[NORMAL] = @base_color 2387} 2388 2389style "scale_horz" { 2390 2391engine "pixmap" { 2392 2393image { 2394function = BOX 2395detail = "trough-upper" 2396file = "assets/scale-horz-trough.png" 2397border = {4, 4, 0, 0} 2398stretch = TRUE 2399} 2400 2401image { 2402function = BOX 2403detail = "trough-lower" 2404file = "assets/scale-horz-trough-active.png" 2405border = {4, 4, 0, 0} 2406stretch = TRUE 2407} 2408 2409} 2410 2411} 2412 2413style "scale_vert" { 2414 2415engine "pixmap" { 2416 2417image { 2418function = BOX 2419detail = "trough-upper" 2420file = "assets/scale-vert-trough.png" 2421border = {0, 0, 4, 4} 2422stretch = TRUE 2423} 2424 2425image { 2426function = BOX 2427detail = "trough-lower" 2428file = "assets/scale-vert-trough-active.png" 2429border = {0, 0, 4, 4} 2430stretch = TRUE 2431} 2432 2433} 2434 2435} 2436 2437style "progressbar" { 2438 2439xthickness = 0 2440ythickness = 0 2441 2442fg[PRELIGHT] = @selected_fg_color 2443 2444engine "pixmap" { 2445 2446image { 2447function = BOX 2448detail = "trough" 2449file = "assets/progressbar-trough.png" 2450border = {0, 0, 0, 0} 2451stretch = TRUE 2452orientation = HORIZONTAL 2453} 2454 2455image { 2456function = BOX 2457detail = "trough" 2458file = "assets/progressbar-trough.png" 2459border = {0, 0, 0, 0} 2460stretch = TRUE 2461orientation = VERTICAL 2462} 2463 2464} 2465 2466} 2467 2468style "treeview_header" { 2469 2470xthickness = 2 2471ythickness = 2 2472 2473fg[NORMAL] = mix(0.75, @fg_color, @base_color) 2474fg[PRELIGHT] = @fg_color 2475 2476font_name = "Medium" 2477 2478GtkButton::inner-border = {4, 4, 0, 2} 2479 2480engine "pixmap" { 2481 2482image { 2483function = BOX 2484state = NORMAL 2485file = "assets/treeview-separator-ltr.png" 2486border = {0, 1, 0, 1} 2487stretch = TRUE 2488direction = LTR 2489} 2490 2491image { 2492function = BOX 2493state = PRELIGHT 2494file = "assets/treeview-separator-hover-ltr.png" 2495border = {0, 1, 0, 1} 2496stretch = TRUE 2497direction = LTR 2498} 2499 2500image { 2501function = BOX 2502state = ACTIVE 2503file = "assets/treeview-separator-active-ltr.png" 2504border = {0, 1, 0, 1} 2505stretch = TRUE 2506direction = LTR 2507} 2508 2509image { 2510function = BOX 2511state = NORMAL 2512file = "assets/treeview-separator-rtl.png" 2513border = {1, 0, 0, 1} 2514stretch = TRUE 2515direction = RTL 2516} 2517 2518image { 2519function = BOX 2520state = PRELIGHT 2521file = "assets/treeview-separator-hover-rtl.png" 2522border = {1, 0, 0, 1} 2523stretch = TRUE 2524direction = RTL 2525} 2526 2527image { 2528function = BOX 2529state = ACTIVE 2530file = "assets/treeview-separator-active-rtl.png" 2531border = {1, 0, 0, 1} 2532stretch = TRUE 2533direction = RTL 2534} 2535 2536image { 2537function = ARROW 2538state = NORMAL 2539overlay_file = "assets/pan-up-alt.png" 2540overlay_stretch = FALSE 2541arrow_direction = UP 2542} 2543 2544image { 2545function = ARROW 2546state = PRELIGHT 2547overlay_file = "assets/pan-up.png" 2548overlay_stretch = FALSE 2549arrow_direction = UP 2550} 2551 2552image { 2553function = ARROW 2554state = ACTIVE 2555overlay_file = "assets/pan-up.png" 2556overlay_stretch = FALSE 2557arrow_direction = UP 2558} 2559 2560image { 2561function = ARROW 2562state = NORMAL 2563overlay_file = "assets/pan-down-alt.png" 2564overlay_stretch = FALSE 2565arrow_direction = DOWN 2566} 2567 2568image { 2569function = ARROW 2570state = PRELIGHT 2571overlay_file = "assets/pan-down.png" 2572overlay_stretch = FALSE 2573arrow_direction = DOWN 2574} 2575 2576image { 2577function = ARROW 2578state = ACTIVE 2579overlay_file = "assets/pan-down.png" 2580overlay_stretch = FALSE 2581arrow_direction = DOWN 2582} 2583 2584} 2585 2586} 2587 2588style "scrolled_window" { 2589 2590engine "pixmap" { 2591image { 2592function = SHADOW 2593file = "assets/frame.png" 2594border = {1, 1, 1, 1} 2595stretch = TRUE 2596} 2597} 2598 2599} 2600 2601style "frame" { 2602 2603engine "pixmap" { 2604 2605image { 2606function = SHADOW 2607file = "assets/frame.png" 2608border = {1, 1, 1, 1} 2609stretch = TRUE 2610} 2611 2612image { 2613function = SHADOW_GAP 2614file = "assets/frame.png" 2615border = {1, 1, 1, 1} 2616stretch = TRUE 2617gap_start_file = "assets/border.png" 2618gap_end_file = "assets/border.png" 2619} 2620 2621} 2622 2623} 2624 2625style "tool_button" { 2626 2627GtkButton::inner-border = {2, 2, 2, 2} 2628 2629# For the sake of sanity style buttons this way 2630engine "pixmap" { 2631 2632image { 2633function = BOX 2634state = NORMAL 2635file = "assets/button-flat.png" 2636border = {8, 8, 8, 8} 2637stretch = TRUE 2638} 2639 2640image { 2641function = BOX 2642state = PRELIGHT 2643shadow = OUT 2644file = "assets/button-flat-hover.png" 2645border = {8, 8, 8, 8} 2646stretch = TRUE 2647} 2648 2649# Don't add hover effect on pressed buttons 2650image { 2651function = BOX 2652state = PRELIGHT 2653shadow = IN 2654file = "assets/button-flat-active.png" 2655border = {8, 8, 8, 8} 2656stretch = TRUE 2657} 2658 2659image { 2660function = BOX 2661state = ACTIVE 2662file = "assets/button-flat-active.png" 2663border = {8, 8, 8, 8} 2664stretch = TRUE 2665} 2666 2667image { 2668function = BOX 2669state = INSENSITIVE 2670shadow = OUT 2671file = "assets/button-flat-insensitive.png" 2672border = {8, 8, 8, 8} 2673stretch = TRUE 2674} 2675 2676image { 2677function = BOX 2678state = INSENSITIVE 2679shadow = IN 2680file = "assets/button-insensitive.png" 2681border = {8, 8, 8, 8} 2682stretch = TRUE 2683} 2684} 2685} 2686 2687style "toolbar_separator" { 2688 2689GtkWidget::wide-separators = 1 2690GtkWidget::separator-width = 1 2691GtkWidget::separator-height = 1 2692 2693engine "pixmap" { 2694image { 2695function = BOX 2696file = "assets/border.png" 2697} 2698} 2699 2700} 2701 2702style "inline_toolbar" { 2703 2704# GtkToolbar::button-relief = GTK_RELIEF_NORMAL 2705 2706engine "pixmap" { 2707image { 2708function = BOX 2709file = "assets/frame-inline.png" 2710border = {1, 1, 0, 1} 2711stretch = TRUE 2712} 2713} 2714 2715} 2716 2717style "tooltip" { 2718 2719xthickness = 8 2720ythickness = 8 2721 2722bg[NORMAL] = @tooltip_bg_color 2723fg[NORMAL] = @tooltip_fg_color 2724bg[SELECTED] = @tooltip_bg_color 2725 2726} 2727 2728 2729style "disable_text_shadow" { 2730 2731engine "murrine" { 2732textstyle = 0 2733} 2734 2735} 2736 2737style "disable_shadow" { 2738 2739engine "pixmap" { 2740image { 2741function = SHADOW 2742} 2743} 2744 2745} 2746 2747style "disable_separator" { 2748 2749xthickness = 0 2750ythickness = 0 2751 2752GtkWidget::wide-separators = 1 2753 2754} 2755 2756# Default style, containing most of the stuff 2757class "GtkWidget" style "default" 2758 2759# Override padding, style and colour 2760class "GtkButton" style "button" 2761class "GtkLinkButton" style "link_button" 2762class "GtkEntry" style "entry" 2763class "GtkOldEditable" style "entry" 2764class "GtkSpinButton" style "spinbutton" 2765class "GtkNotebook" style "notebook" 2766class "GtkHScale" style "scale_horz" 2767class "GtkVScale" style "scale_vert" 2768class "GtkProgressBar" style "progressbar" 2769class "GtkScrolledWindow" style "scrolled_window" 2770class "GtkFrame" style "frame" 2771class "GtkSeparatorToolItem" style "toolbar_separator" 2772class "GtkMenuBar" style "menubar" 2773class "GtkMenu" style "menu" 2774class "GtkTextView" style "textview" 2775 2776# Menu and menubar items 2777widget_class "*<GtkMenuItem>*" style "menu_item" 2778widget_class "*<GtkMenuBar>.<GtkMenuItem>*" style "menubar_item" 2779widget_class "*<GtkSeparatorMenuItem>*" style "separator_menu_item" 2780 2781# Frames in statusbars look ugly, let's disable them 2782widget_class "*<GtkStatusbar>*<GtkFrame>" style "disable_shadow" 2783# Disable the frame around poor Wilbert too 2784widget_class "*<GimpToolbox>*<GtkFrame>" style "disable_shadow" 2785 2786# Treeview buttons 2787widget_class "*<GtkTreeView>*<GtkButton>*" style "treeview_header" 2788 2789# Give the file chooser toolbar a border 2790widget_class "*<GtkFileChooserDefault>*<GtkToolbar>" style "inline_toolbar" 2791 2792# Fix padding on regular comboboxes 2793widget_class "*<GtkComboBox>.<GtkButton>" style "combobox" 2794# And disable separators on them 2795widget_class "*<GtkComboBox>.<GtkButton>*<GtkSeparator>" style "disable_separator" 2796widget_class "*<GtkFontButton>*<GtkSeparator>" style "disable_separator" 2797widget_class "*<GtkFileChooserButton>*<GtkSeparator>" style "disable_separator" 2798 2799# Join together the ComboBoxEntry entry and button 2800widget_class "*<GtkComboBoxEntry>*" style "combobox_entry" 2801 2802# Join the Combo entry and button 2803widget_class "*<GtkCombo>*" style "combobox_entry" 2804# Tweak the padding on the button a little bit because it uses it a bit differently 2805widget_class "*<GtkCombo>.<GtkButton>" style "combo_button_padding" 2806 2807# Alas we cannot do the same for ComboBoxText because there isn't a way to apply the style to only 2808# the comboboxes that have an entry inside 2809 2810# Tool buttons have different styles 2811widget_class "*<GtkToolButton>*<GtkButton>" style "tool_button" 2812widget_class "*<GtkVBox>*<GtkEventBox>.<GtkToolbar>*<GtkButton>" style "tool_button" 2813 2814# Notebooks 2815widget_class "*<GtkNotebook>.<GtkLabel>" style "notebook_tab_label" 2816widget_class "*<GtkNotebook>.<GtkHBox>.<GtkLabel>" style "notebook_tab_label" 2817 2818# Notebooks are white, act accordingly 2819widget_class "*<GtkNotebook>*<GtkEntry>" style "notebook_entry" 2820widget_class "*<GtkNotebook>*<GtkProgressBar>" style "notebook_bg" 2821widget_class "*<GtkNotebook>*<GtkSpinButton>" style "notebook_bg" 2822widget_class "*<GtkNotebook>*<GtkScrolledWindow>*<GtkViewport>" style "notebook_bg" 2823widget_class "*<GtkNotebook>*<GimpRuler>" style "notebook_bg" 2824widget_class "*<GtkNotebook>.<GimpDisplayShell>*<GtkEventBox>" style "notebook_bg" 2825widget_class "*<GtkNotebook>*<GtkComboBoxEntry>*" style "notebook_combo" 2826widget_class "*<GtkNotebook>*<GtkCombo>*" style "notebook_combo" 2827 2828# However, stuff inside eventboxes inside notebooks is grey again, react 2829widget_class "*<GtkNotebook>*<GtkEventBox>*<GtkEntry>" style "normal_entry" 2830widget_class "*<GtkNotebook>*<GtkEventBox>*<GtkProgressBar>" style "normal_bg" 2831widget_class "*<GtkNotebook>*<GtkEventBox>*<GtkSpinButton>" style "normal_bg" 2832widget_class "*<GtkNotebook>*<GtkEventBox>*<GtkComboBoxEntry>*" style "combobox_entry" 2833widget_class "*<GtkNotebook>*<GtkEventBox>*<GtkCombo>*" style "combobox_entry" 2834widget_class "*<GtkNotebook>*<GtkEventBox>*<GtkCombo>.<GtkButton>" style "combo_button_padding" 2835 2836# Button labels 2837widget_class "*<GtkButton>*<GtkLabel>" style "button_label" 2838 2839# Checkbutton labels 2840widget_class "*<GtkCheckButton>.<GtkLabel>" style "checkbutton_label" 2841 2842# ComboBoxes tend to draw the button label with text[] instead of fg[], we need to fix that 2843widget_class "*<GtkComboBox>*<GtkCellView>" style "combobox_cellview" 2844 2845# Disable white text shadows 2846widget_class "*<GtkLabel>" style "disable_text_shadow" 2847widget_class "*<GtkCellView>" style "disable_text_shadow" 2848 2849# GTK tooltips 2850widget "gtk-tooltip*" style "tooltip" 2851