GtkTheme.kt 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106
  1. package eu.mjdev.desktop.theme.gtk
  2. import eu.mjdev.desktop.data.DesktopFile
  3. import eu.mjdev.desktop.provider.DesktopProvider
  4. import java.io.File
  5. @Suppress("CanBeParameter", "unused")
  6. class GtkTheme(
  7. val themeName: String = "mjdev",
  8. val api: DesktopProvider,
  9. val themesDir: File = File(api.homeDir, ".themes"),
  10. val themeDir: File = File(themesDir, themeName),
  11. val themeDesktopFile: File = File(themeDir, "index.theme"),
  12. val themeCssFile: File = File(themeDir, "gtk.css")
  13. ) {
  14. val desktopFile: DesktopFile = DesktopFile.create(themeDesktopFile) // todo
  15. /*
  16. [Desktop Entry]
  17. Type=X-GNOME-Metatheme
  18. Name=Ambiance
  19. Comment=Ubuntu Ambiance theme
  20. Encoding=UTF-8
  21. [X-GNOME-Metatheme]
  22. GtkTheme=Ambiance
  23. MetacityTheme=Ambiance
  24. IconTheme=ubuntu-mono-dark
  25. CursorTheme=DMZ-White
  26. ButtonLayout=close,minimize,maximize:
  27. X-Ubuntu-UseOverlayScrollbars=true
  28. */
  29. val cssFile = themeCssFile
  30. /*
  31. /*default color scheme */
  32. @define-color bg_color #f2f1f0;
  33. @define-color fg_color #4c4c4c;
  34. @define-color base_color #ffffff;
  35. @define-color text_color #3C3C3C;
  36. @define-color selected_bg_color #f07746;
  37. @define-color selected_fg_color #ffffff;
  38. @define-color tooltip_bg_color #000000;
  39. @define-color tooltip_fg_color #ffffff;
  40. /* misc colors used by gtk+
  41. *
  42. * Gtk doesn't currently expand color variables for style properties. Thus,
  43. * gtk-widgets.css uses literal color names, but includes a comment containing
  44. * the name of the variable. Please remember to change values there as well
  45. * when changing one of the variables below.
  46. */
  47. @define-color info_fg_color rgb (181, 171, 156);
  48. @define-color info_bg_color rgb (252, 252, 189);
  49. @define-color warning_fg_color rgb (173, 120, 41);
  50. @define-color warning_bg_color rgb (250, 173, 61);
  51. @define-color question_fg_color rgb (97, 122, 214);
  52. @define-color question_bg_color rgb (138, 173, 212);
  53. @define-color error_fg_color rgb (235, 235, 235);
  54. @define-color error_bg_color rgb (223, 56, 44);
  55. @define-color link_color @selected_bg_color;
  56. @define-color success_color #4e9a06;
  57. @define-color error_color #df382c;
  58. /* theme common colors */
  59. @define-color button_bg_color shade (@bg_color, 1.02); /*shade (#cdcdcd, 1.08);*/
  60. @define-color notebook_button_bg_color shade (@bg_color, 1.02);
  61. @define-color button_insensitive_bg_color mix (@button_bg_color, @bg_color, 0.6);
  62. @define-color dark_bg_color #3c3b37;
  63. @define-color dark_fg_color #dfdbd2;
  64. @define-color backdrop_fg_color mix (@bg_color, @fg_color, 0.8);
  65. @define-color backdrop_text_color mix (@base_color, @text_color, 0.8);
  66. @define-color backdrop_dark_fg_color mix (@dark_bg_color, @dark_fg_color, 0.75);
  67. /*@define-color backdrop_dark_bg_color mix (@dark_bg_color, @dark_fg_color, 0.75);*/
  68. @define-color backdrop_selected_bg_color shade (@bg_color, 0.92);
  69. @define-color backdrop_selected_fg_color @fg_color;
  70. @define-color focus_color alpha (@selected_bg_color, 0.5);
  71. @define-color focus_bg_color alpha (@selected_bg_color, 0.1);
  72. @define-color shadow_color alpha(black, 0.5);
  73. @define-color osd_fg_color #eeeeec;
  74. @define-color osd_bg_color alpha(#202526, 0.7);
  75. @define-color osd_border_color alpha(black, 0.7);
  76. @import url("gtk-widgets-borders.css");
  77. @import url("gtk-widgets-assets.css");
  78. @import url("gtk-widgets.css");
  79. @import url("apps/geary.css");
  80. @import url("apps/unity.css");
  81. @import url("apps/baobab.css");
  82. @import url("apps/gedit.css");
  83. @import url("apps/nautilus.css");
  84. @import url("apps/gnome-panel.css");
  85. @import url("apps/gnome-terminal.css");
  86. @import url("apps/gnome-system-log.css");
  87. @import url("apps/unity-greeter.css");
  88. @import url("apps/glade.css");
  89. @import url("apps/california.css");
  90. @import url("apps/software-center.css");
  91. @import url("public-colors.css");
  92. */
  93. }