diff --git a/rtdata/themes/RawTherapee - Legacy-GTK3-20_.css b/rtdata/themes/RawTherapee - Legacy.css
similarity index 99%
rename from rtdata/themes/RawTherapee - Legacy-GTK3-20_.css
rename to rtdata/themes/RawTherapee - Legacy.css
index ba62fd366..2a8ae4adc 100644
--- a/rtdata/themes/RawTherapee - Legacy-GTK3-20_.css
+++ b/rtdata/themes/RawTherapee - Legacy.css
@@ -20,7 +20,7 @@
*/
/***************************/
-/**/ @import "size - Legacy.css"; /**/
+/**/ @import url("./common/size - Legacy.css"); /**/
/***************************/
/* text-shadow causes a serious performance degradation in rendering the UI,
diff --git a/rtdata/themes/RawTherapee-GTK3-_19.css b/rtdata/themes/RawTherapee-GTK3-_19.css
deleted file mode 100644
index f4bec23b1..000000000
--- a/rtdata/themes/RawTherapee-GTK3-_19.css
+++ /dev/null
@@ -1,525 +0,0 @@
-/*
- This file is part of RawTherapee.
-
- Copyright (c) 2015-2017 DrSlony
- Copyright (c) 2016-2017 Hombre
-
- RawTherapee is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- RawTherapee is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with RawTherapee. If not, see .
-*/
-
-* {
- color: #AAAAAA;
-}
-
-.view:selected {
- color: #262626;
- background-color: #AAAAAA
-}
-
-/* The Places and Dir browser panels */
-.view {
- background-color: #262626;
-}
-/* The headers of these panels */
-.view .button {
- background-color: #363636;
- padding: 2px;
-}
-
-.plainback {
- background-color: #404040;
-}
-
-GtkBox {
- border-width: 0;
- border-style: none;
- border-radius: 0;
- margin: 0;
- padding: 0;
-}
-
-GtkGrid {
- margin: 2px;
- padding: 0;
- border-width: 0;
- border-style: none;
- border-radius: 0;
-}
-
-/* Affects all frames except in the toolbox */
-GtkFrame {
- border-width: 0;
- border-color: #303030;
- border-radius: 0;
- border-style: solid;
- /*border-style: none none none solid;*/
- padding: 4px;
-}
-
-GtkFrame > GtkLabel {
- color: #D8D8D8;
-}
-
-#FileBrowser {
- padding: 10px;
- margin: 10px;
-}
-
-/* Frames in Preferences */
-#PrefNotebook GtkFrame {
- background-color: #3B3B3B;
- border: 1px solid #505050;
- border-radius: 4px;
-}
-
-/* Frames in the toolbox. Not MyExpander frames. */
-GtkEventBox .frame {
- border-color: #565656;
-}
-
-/*.EditorTopPanel .button, .ToolBarPanelFileBrowser .button, .EditorZoomPanel .button {*/
-.button {
- padding: 1px;
- margin: 1px;
-}
-
-/* Adjusters */
-.text-button {
- padding: 0;
-}
-
-/* Any text-button which is a real button, unlike Slider label */
-.text-button.button {
- padding: 4px;
-}
-
-.separator {
- color: #363636;
-}
-
-GtkProgressBar {
- -GtkProgressBar-min-vertical-bar-width: 10;
- -GtkProgressBar-min-horizontal-bar-height: 10;
-}
-
-GtkDrawingArea {
- border-radius: 0;
- background-color: #363636;
- border: 1px solid #252525;
-}
-
-GtkDrawingArea:selected {
- background-color: #565656;
- border-radius: 10px;
-}
-
-GtkImage {
- padding: 1px;
-}
-
-
-
-
-
-GtkScale.slider {
- margin: 1px;
-}
-GtkScale.slider:hover {
- background-image: linear-gradient(#444444, #3E3E3E, #393939);
-}
-GtkScale.slider:insensitive {
- background-image: none;
- background-color: #444;
- border-color: #282828;
-}
-GtkScale.trough {
- background-color: #2A2A2A;
-}
-GtkScale.trough:insensitive {
- background-color: #444;
- border-color: #282828;
-}
-
-
-
-GtkLabel {
- margin: 0 1px;
-}
-
-
-GtkButton {
- padding: 0;
- margin: 1px;
-}
-GtkButton, GtkButton.flat:hover {
- background-image: linear-gradient(#343434, #2E2E2E, #292929);
-}
-
-GtkButton.flat, GtkCheckButton {
- background-image: none;
-}
-
-/* Vertical group of buttons in 1 column */
-GtkButton.Top {
- border-radius: 10px 4px 0 0;
- border-style: solid solid none solid;
- margin-bottom: 0;
-}
-GtkButton.MiddleV {
- border-radius: 0;
- border-style: none solid none solid;
- margin-top: 0;
- margin-bottom: 0;
-}
-GtkButton.Bottom {
- border-radius: 0 0 4px 4px;
- border-style: none solid solid solid;
- margin-top: 0;
-}
-/* end */
-
-/* Horizontal group of buttons in 1 row */
-GtkButton.Left {
- border-radius: 4px 0 0 4px;
- border-style: solid none solid solid;
- margin-right: 0;
-}
-GtkButton.MiddleH {
- border-radius: 0;
- border-style: solid none solid none;
- margin-left: 0;
- margin-right: 0;
-}
-GtkButton.Right {
- border-radius: 0 4px 4px 0;
- border-style: solid solid solid none;
- margin-left: 0;
-}
-/* end */
-
-/* [1.23[-][+]] */
-GtkEntry, GtkSpinButton {
- background-color: #262626;
-}
-
-GtkEntry:insensitive, GtkSpinButton:insensitive {
- background-color: #363636;
-}
-
-GtkEntry:hover, GtkSpinButton:hover {
- background-color: #565656;
-}
-
-GtkEntry:selected {
- color: #262626;
- background-color: #AAAAAA;
-}
-
-/* Context menus */
-GtkMenu {
- background-color: #262626;
- color: #909090;
-}
-
-/* Context menu item */
-.menuitem {
- padding: 2px;
-}
-
-#MyExpander {
- margin: 10px;
- padding: 5px;
-}
-
-/* Tool background */
-#ExpanderBox {
- background-color: #363636;
- border-width: 1px;
- border-style: solid;
- border-radius: 4px;
- border-color: #252525;
- margin: 9px;
- padding: 4px;
-}
-
-#ExpanderBox GtkDrawingArea {
- background-color: #363636;
-}
-
-#ExpanderBox GtkFrame {
- background-color: #3B3B3B;
- border-style: solid;
- border-width: 1px;
- border-radius: 4px;
- border-color: #313131;
- margin: 3px;
- padding: 2px;
-}
-
-#ExpanderBox GtkFrame GtkDrawingArea {
- background-color: #3B3B3B;
-}
-
-#ExpanderBox GtkFrame GtkFrame {
- background-color: #414141;
- border: 1px solid #373737;
- border-radius: 4px;
- margin: 3px;
- padding: 2px;
-}
-
-#ExpanderBox GtkFrame GtkFrame GtkDrawingArea {
- background-color: #414141;
-}
-
-/* Sub-tool (MyExpander) background */
-#ExpanderBox2 {
- background-color: #3B3B3B;
- border: 1px solid #2A2A2A;
- border-radius: 4px;
- margin: 9px;
- padding: 4px;
-}
-
-#ExpanderBox2 GtkDrawingArea {
- background-color: #3B3B3B;
-}
-
-#ExpanderBox2 GtkFrame {
- background-color: #414141;
- border: 1px solid #373737;
- border-radius: 4px;
- margin: 3px;
- padding: 2px;
-}
-
-#ExpanderBox2 GtkFrame GtkDrawingArea {
- background-color: #414141;
-}
-
-#ExpanderBox2 GtkFrame GtkFrame {
- background-color: #474747;
- border: 1px solid #3D3D3D;
- border-radius: 4px;
- margin: 3px;
- padding: 2px;
-}
-
-#ExpanderBox2 GtkFrame GtkFrame GtkDrawingArea {
- background-color: #474747;
-}
-
-#MyExpanderTitle {
- margin: 5px;
- padding: 3px 1px 3px 1px;
- font-size: 120%;
-}
-#MyExpanderTitle GtkLabel {
- color: #CCCCCC;
-}
-#MyExpanderTitle:hover {
- background-color: #202020;
-}
-#MyExpanderTitle GtkEventBox:hover GtkImage {
- background-color: #202020;
- border-radius: 3px;
-}
-#MyExpanderTitle:hover GtkLabel {
- color: #D8D8D8;
-}
-
-#ExpanderBox2 GtkSeparator, #ExpanderBox3 GtkSeparator {
- color: #292929;
-}
-
-/* Editor tab button */
-#MainNotebook > GtkGrid GtkLabel, #MainNotebook > GtkGrid GtkImage {
- /* OK */
- padding: 1px;
-}
-
-/* File Browser right side tabs - Toolbox, Inspector, Fast Export, Filter */
-GtkNotebook tab {
- background-color: #383838;
- border-width: 1px;
- border-style: none;
- border-color: #262626;
- border-radius: 0;
- padding: 3px;
-}
-
-GtkNotebook tab:hover {
- background-color: #505050;
-}
-
-GtkNotebook tab:active {
- border-width: 5px;
- border-color: #989898;
-}
-
-/* Get rid of shitty notebook header shadow */
-GtkNotebook.top tab {
- border-bottom-style: solid;
- padding-bottom: 8px;
-}
-GtkNotebook.right tab {
- border-left-style: solid;
- padding-left: 8px;
-}
-GtkNotebook.bottom tab {
- border-top-style: solid;
- padding-top: 8px;
-}
-GtkNotebook.left tab {
- border-right-style: solid;
- padding-right: 8px;
-}
-
-/* Get rid of notebook frame border - too many borders */
-GtkNotebook.top.header, GtkNotebook.right.header, GtkNotebook.bottom.header, GtkNotebook.left.header {
- box-shadow: none;
- border-width: 1px;
- border-color: #262626;
- border-style: none;
- border-radius: 0;
- background-color: #383838;
- padding: 0;
-}
-/* Get rid of notebook header border - too many borders */
-GtkNotebook.top.header {
- /* OK */
- border-bottom-style: solid;
-}
-GtkNotebook.right.header {
- /* OK */
- border-left-style: solid;
-}
-GtkNotebook.bottom.header {
- /* OK */
- border-top-style: solid;
-}
-GtkNotebook.left.header {
- /* OK */
- border-right-style: solid;
-}
-GtkNotebook.frame {
- /* OK */
- border-radius: 0;
- border-style: none;
-}
-
-/* Pad notebooks, makes the other borders look nicer */
-GtkNotebook {
- /* OK */
- background-color: #484848;
- padding: 0;
-}
-
-
-#MainNotebook.header {
- /* OK */
- background-color: #2A2A2A;
-}
-#MainNotebook > tab {
- /* OK */
- background-color: #2A2A2A;
-}
-#MainNotebook > tab:hover {
- /* OK */
- background-color: #505050;
-}
-#MainNotebook > tab:active {
- /* OK */
- border-color: #989898;
-}
-
-#RightNotebook.header {
- /* OK */
- background-color: #2A2A2A;
-}
-#RightNotebook > tab {
- /* OK */
- background-color: #2A2A2A;
-}
-#RightNotebook > tab:hover {
- /* OK */
- background-color: #505050;
-}
-#RightNotebook > tab:active {
- /* OK */
- border-color: #989898;
-}
-
-
-/* All tool panels have a frame except for Meta which unlike the rest is a notebook itself.
- * So we use CSS to make it look like a frame. */
-#MetaPanelNotebook.frame {
- border: 1px solid #262626;
- border-bottom-left-radius: 4px;
- border-bottom-right-radius: 4px;
- border-top-left-radius: 0;
- border-top-right-radius: 0;
- border-top-width: 0;
-}
-
-#MetaPanelNotebook.header {
- border: 1px solid #262626;
- border-bottom-left-radius: 0;
- border-bottom-right-radius: 0;
- border-top-left-radius: 4px;
- border-top-right-radius: 4px;
- border-bottom-width: 0;
- padding: 5px;
- margin: 5px;
-}
-
-.tooltip {
- padding: 0;
-}
-
-
-/* make the "partial profile" dialog a little bit more readable */
-#PartialPasteHeader {
- margin: 1.5em 0 0 0;
- padding: 0;
- font-weight: bold;
- color: #363636;
-}
-
-#PartialPasteHeaderSep {
- color: #D8D8D8;
-}
-
-
-#MyFileChooserButton {
- padding-left: 3px;
- padding-right: 3px;
-}
-
-/* Better on/off state separation for text toggle buttons, e.g. auto-levels or histogram matching. */
-GtkToggleButton.button.text-button {
- background-image: linear-gradient(to bottom, rgba(100,100,100,.3), rgba(30,30,30,.3));
-}
-
-GtkToggleButton.button.text-button:hover {
- background-image: linear-gradient(to bottom, rgba(128,128,128,.3), rgba(64,64,64,.3));
-}
-
-GtkToggleButton.button.text-button:checked {
- background-image: linear-gradient(to bottom, rgba(30,30,30,.3), rgba(0,0,0,.4));
-}
-
-GtkToggleButton.button.text-button:hover:checked {
- background-image: linear-gradient(to bottom, rgba(48,48,48,.3), rgba(0,0,0,.3));
-}
diff --git a/rtdata/themes/RawTherapee-GTK3-20_.css b/rtdata/themes/RawTherapee.css
similarity index 99%
rename from rtdata/themes/RawTherapee-GTK3-20_.css
rename to rtdata/themes/RawTherapee.css
index e909eb33f..3a3162c4e 100644
--- a/rtdata/themes/RawTherapee-GTK3-20_.css
+++ b/rtdata/themes/RawTherapee.css
@@ -19,7 +19,7 @@
*/
/***************************/
-/**/ @import "size.css"; /**/ /* TODO: Remove this weird dependency */
+/**/ @import url("./common/size.css"); /**/ /* TODO: Remove this weird dependency */
/***************************/
/** Set style defaults **/
@@ -1068,7 +1068,7 @@ dialog frame > label:not(.dummy) {
}
#ToolPanelNotebook viewport {
- padding: 0;
+ padding: 0;
}
#ToolPanelNotebook .PanelEnding {
@@ -1226,7 +1226,7 @@ dialog frame > label:not(.dummy) {
border-top-width: 0.083333333333333333em;
}
-#Navigator box label {
+#Navigator box label {
margin: 0;
padding: 0;
}
diff --git a/rtdata/themes/TooWaBlue - Bright-GTK3-20_.css b/rtdata/themes/TooWaBlue - Bright.css
similarity index 98%
rename from rtdata/themes/TooWaBlue - Bright-GTK3-20_.css
rename to rtdata/themes/TooWaBlue - Bright.css
index 19e2eb049..6b12db47c 100644
--- a/rtdata/themes/TooWaBlue - Bright-GTK3-20_.css
+++ b/rtdata/themes/TooWaBlue - Bright.css
@@ -20,7 +20,7 @@
/*****************************************/
-/**/ @import "TooWaBlue-GTK3-20_.css"; /**/
+/**/ @import "TooWaBlue.css"; /**/
/*****************************************/
/*** Change me *** rgb(red,green,blue) *** allowed values from 0 to 255 for each color ***/
diff --git a/rtdata/themes/TooWaBlue - Dark-GTK3-20_.css b/rtdata/themes/TooWaBlue - Dark.css
similarity index 98%
rename from rtdata/themes/TooWaBlue - Dark-GTK3-20_.css
rename to rtdata/themes/TooWaBlue - Dark.css
index 5875e2132..d9ca22dff 100644
--- a/rtdata/themes/TooWaBlue - Dark-GTK3-20_.css
+++ b/rtdata/themes/TooWaBlue - Dark.css
@@ -20,7 +20,7 @@
/*****************************************/
-/**/ @import "TooWaBlue-GTK3-20_.css"; /**/
+/**/ @import "TooWaBlue.css"; /**/
/*****************************************/
/*** Change me *** rgb(red,green,blue) *** allowed values from 0 to 255 for each color ***/
diff --git a/rtdata/themes/TooWaBlue-GTK3-_19.css b/rtdata/themes/TooWaBlue-GTK3-_19.css
deleted file mode 100644
index 31676ca8d..000000000
--- a/rtdata/themes/TooWaBlue-GTK3-_19.css
+++ /dev/null
@@ -1,881 +0,0 @@
-/*
- This file is part of RawTherapee.
-
- Copyright (c) 2016 TooWaBoo (v1.19.5)
- Many thanks to the RawTherapee Developer Team for this great piece of software
-
- RawTherapee is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- RawTherapee is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with RawTherapee. If not, see .
-*/
-
-/*** Change me *** rgb(red,green,blue) *** allowed values from 0 to 255 for each color ***/
-
-@define-color accent-color rgb(35,99,166); /*** Highlight/selected color for Tab indicator, List, Dropdown menu, Borders ... ***/
-@define-color text-hl-color rgb(210,210,210); /*** Highlight/selected text color ***/
-
-@define-color accent-color2 rgb(35,99,166); /*** Slider, Progressbar, Scrollbar ***/
-@define-color accent-color4 rgb(35,99,166); /*** Slider knob ***/
-
-@define-color accent-color3 rgb(35,99,166); /*** Selected thumbnail background color ***/
-@define-color text-hl-color3 rgb(210,210,210); /*** Selected thumbnail text color ***/
-
-/*** Change me end ************************************************************************/
-
-@define-color text-color rgb(180,180,180);
-@define-color text-hl-color2 rgb(192,192,192);
-@define-color text-tbEntry rgb(192,192,192);
-@define-color bg-dark-grey rgb(36,36,36);
-@define-color bg-grey rgb(70,70,70);
-@define-color bg-light-grey rgb(88,88,88);
-@define-color border-color rgba(255,255,255,.25);
-@define-color bg-list-hover rgba(255,255,255,.065);
-@define-color bg-scale-entry rgba(0,0,0,.14);
-@define-color bg-button-border rgba(0,0,0,.48);
-@define-color bg-button-border-hover rgba(0,0,0,.58);
-@define-color bg-entry-border rgba(0,0,0,.40);
-@define-color bg-button-hover rgba(0,0,0,.22);
-@define-color bg-spin-button-hover rgba(0,0,0,.25);
-@define-color bg-entry-IPTC @bg-dark-grey;
-@define-color view-grid-border rgb(64,64,64);
-
-* {
- color: @text-color;
- transition: none;
- text-shadow: none;
- icon-shadow: none;
- box-shadow: none;
- outline-style: none; /* removes the ugly dotted focus line */
- border-image: none;
- -GtkCheckButton-indicator-size: 16;
- -GtkCheckMenuItem-indicator-size: 16;
- -GtkCheckButton-indicator-spacing: 2;
-}
-
-.undershoot {
- background-image: none; /* removes the dotted scrollbar line */
-}
-GtkWindow {
- background-color: @bg-light-grey;
-}
-GtkDialog {
- background-color: @bg-grey;
- -GtkDialog-content-area-spacing: 7;
- -GtkDialog-action-area-border: 0;
- -GtkDialog-content-area-border: 8;
-}
-
-GtkFontChooser,
-GtkColorChooser {
- -GtkDialog-action-area-border: 4;
- -GtkDialog-content-area-border: 0;
-}
-
-.frame {
- border: none;
-}
-#PrefNotebook > .frame {
- border: 1px solid rgba(0,0,0,.50);
- border-top: none;
-}
-#BatchQueueButtonsMainContainer GtkFrame {
- padding: 4px 4px 4px 10px;
-}
-
-/*** Add space between buttons and image area***/
-#BeforeAfterContainer GtkFrame {
- padding: 2px 0 4px;
-}
-/*** Add space between before/after image ***/
-#BeforeAfterContainer GtkContainer:nth-child(1) > GtkContainer:nth-child(2) GtkFrame {
- padding-right: 14px;
-}
-
-/*** Menu bubble box ***/
-GtkPopover {
- background-color: @bg-grey;
- border: 1px solid @accent-color;
- border-radius: 0;
-}
-
-.menu {
- background-color: @bg-dark-grey;
- border: 1px solid @accent-color;
-}
-.menu > .menuitem {
- padding: 2px 4px;
-}
-.menu > .menuitem:hover {
- background-color: @accent-color;
-}
-.menu > .menuitem:hover > * > *,
-.menu > .menuitem:hover > * {
- color: @text-hl-color;
-}
-
-GtkNotebook {
- padding: 4px;
- background-color: @bg-light-grey;
-}
-GtkDialog GtkNotebook {
- padding: 2px 0 0;
-}
-#PrefNotebook {
- padding: 4px 8px;
-}
-#RightNotebook {
- padding: 0 0 0 4px;
-}
-
-GtkPaned {
- -GtkPaned-handle-size: 4px;
- background-color: transparent;
-}
-.pane-separator {
- background-color: @bg-light-grey;
-}
-GtkDialog .pane-separator {
- background-color: @bg-grey;
-}
-
-/*** Separator ***/
-.separator {
- color: @bg-light-grey;
-}
-GtkDialog .separator {
- color: @border-color;
-}
-#RightNotebook .separator {
- color: @bg-dark-grey;
-}
- /*** Navigator ***/
-#Navigator .separator {
- color: @view-grid-border;
-}
-/*** end ***/
-
-/*** Background color image area***/
-GtkDrawingArea {
- background-color: @bg-grey;
- border: 1px solid rgba(0,0,0,.32);
-}
-/*** Histogram ***/
-#HistogramPanel,
-#HistogramArea {
- background-color: @bg-dark-grey;
- border: none;
-}
-/*** Histogram RGB-Bar***/
-#HistogramRGBArea {
- background-color: rgb(128,128,128);
- border: none;
-}
-/*** Navigator ***/
-#Navigator GtkDrawingArea {
- background-color: @bg-dark-grey;
- border: 1px solid @bg-dark-grey;
-}
-#Navigator {
- background-color: @bg-dark-grey;
- border-top: 156px solid @bg-light-grey;
-}
-
-#RightNotebook GtkDrawingArea {
- background-color: @bg-dark-grey;
-}
-
-/*** Label ***/
- .label {
- padding: 0 4px;
-}
- /*** Increase space between labels in navigater ***/
-#Navigator .label {
- padding: 6px 0 3px;
-}
-#Navigator GtkTable .label {
- padding: 0 0 4px;
-}
- /***/
-GtkDialog .label,
-#ToolPanelNotebook .label,
-.notebook tab .label {
- padding: 0 1px;
-}
-.button .label {
- padding: 0;
-}
-
- /*** Add left and right space between frame and labels ***/
-.frame > .label,
-#ToolPanelNotebook .frame > .label {
- padding: 4px;
-}
-#BatchQueueButtonsMainContainer GtkFrame:nth-child(3) > .label{
- padding: 2px 0px 4px;
-}
-
-#MyExpanderTitle .label {
- padding: 2px 3px;
-}
-/*** end ***/
-
-.tooltip {
- border-radius: 0;
- padding: 0;
-}
-.tooltip.background {
- background-color: @bg-dark-grey;
- border: 1px solid @accent-color;
-}
-
-/*** PartialPaste ***/
-#PartialPaste:nth-child(2) {
- background-color: @bg-light-grey;
- border: 1px solid rgba(0,0,0,.50);
-}
-#PartialPaste > .frame {
- padding: 8px 10px;
-}
-#PartialPasteHeaderSep {
- color: rgb(192,192,192);
-}
-#PartialPasteHeader .label {
- color: rgb(213,213,213);
-}
-/*** end ***/
-
-/*** Scrollbar ***/
-.scrollbar.trough {
- background-color: rgba(0,0,0,.38);
- background-image: none;
- border: none;
-}
-.scrollbar.slider:active {
- background-color: shade(@accent-color2,1.12);
-}
-
-/*** end ***/
-
-/*** Scale & Progressbar ***/
-.scale {
- box-shadow: inset 0 1px rgba(255, 255, 255, 0.1), 0 1px rgba(242, 242, 242, 0.1);
- -GtkRange-trough-border: 6;
- -GtkScale-slider-length: 15;
- -GtkRange-slider-width: 15;
-}
-.scale.trough,
-#ToolPanelNotebook .scale.trough {
- background-color: @bg-scale-entry;
- border-color: @bg-dark-grey;
- box-shadow: inset 0 1px rgba(255, 255, 255, 0.1), 0 1px rgba(242, 242, 242, 0.1);
-}
-.scale.trough.highlight,
-#ToolPanelNotebook .scale.trough.highlight {
- box-shadow: inset 0 1px rgba(255, 255, 255, 0.1), 0 1px rgba(242, 242, 242, 0.1);
- background-image: none;
- background-color: @accent-color2;
- border: 1px solid @bg-dark-grey;
- color: @text-hl-color2;
-}
-.scale.slider,
-#ToolPanelNotebook .scale.slider {
- background-image: linear-gradient(to bottom, shade (@accent-color4,1.15), shade (@accent-color4,.85));
- border: 1px solid shade(@bg-dark-grey, 1.25);
- box-shadow: none;
-}
-.scale.fine-tune {
- -GtkRange-trough-border: 5;
-}
-.scale.scale-has-marks-below {
- -GtkRange-trough-border: 6;
- -GtkScale-slider-length: 6;
- -GtkRange-slider-width: 19;
-}
-.scale.slider.scale-has-marks-below {
- border-radius: 0 0 20px 20px;
- border: 1px solid @bg-dark-grey;
-}
-.scale.fine-tune.scale-has-marks-below {
- -GtkRange-trough-border: 5;
-}
-.scale.slider:hover,
-#ToolPanelNotebook .scale.slider:hover {
- background-image: linear-gradient(to bottom, shade (@accent-color4,1.25), shade (@accent-color4,.95));
-}
-
-.scale.slider:active,
-#ToolPanelNotebook .scale.slider:active {
- background-image: linear-gradient(to bottom, shade (@accent-color4,1.25), shade (@accent-color4,.95));
-}
-
-GtkProgressBar {
- -GtkProgressBar-min-vertical-bar-width: 8;
- -GtkProgressBar-min-horizontal-bar-height: 8;
- -GtkProgressBar-yspacing: 4px;
- border-radius: 10px;
- box-shadow: inset 0 1px rgba(255, 255, 255, 0.1), 0 1px rgba(242, 242, 242, 0.1);
-}
-.progressbar {
- background-image: none;
- background-color: @accent-color2;
- border-color: @bg-dark-grey;
-}
-GtkProgressBar.trough {
- background-image: none;
- background-color: @bg-scale-entry;
-}
-#MainNotebook > GtkGrid GtkProgressBar {
- box-shadow: none;
-}
-#MainNotebook > GtkGrid GtkProgressBar.trough {
- background-image: none;
- background-color: @bg-dark-grey;
- border-color: @bg-dark-grey;
-}
-/*** end ***/
-
-/*** Load/Save ***/
-GtkFileChooserWidget {
- background-color: @bg-grey;
-}
-GtkFileChooserWidget > GtkBox {
- border-bottom-color: @bg-dark-grey;
-}
-GtkFileChooserWidget GtkBox {
- background-color: transparent;
-}
-GtkFileChooserWidget GtkListBox * {
- padding-top: 1px;
- padding-bottom: 1px;
-}
-GtkFileChooserWidget GtkListBox {
- background-color: @bg-dark-grey;
-}
-GtkFileChooserWidget .list-row * {
- padding: 1px 4px;
-}
-GtkFileChooserWidget .list-row:hover {
- background-color: @bg-list-hover;
-}
-GtkFileChooserWidget .list-row:hover * {
- color: @text-hl-color2;
-}
-GtkFileChooserWidget .list-row:selected {
- background-color: @accent-color;
-}
-GtkFileChooserWidget .list-row:selected * {
- color: @text-hl-color;
-}
-/*** end ***/
-
-/*** Tab Bars ***/
-.notebook tab, .notebook.header {
- background-color: @bg-dark-grey;
- border-color: @bg-dark-grey;
-}
-#MainNotebook tab {
- padding: 5px;
-}
-.notebook tab.top {
- border-width: 0 0 5px 0;
-}
-.notebook tab.left {
- border-width: 0 5px 0 0;
-}
-#RightNotebook tab.left,
-#PrefNotebook tab,
-GtkDialog tab {
- padding: 9px;
-}
-#ToolPanelNotebook tab {
- padding: 10px 2px 7px;
-}
-#MetaPanelNotebook tab {
- padding: 8px 4px;
-}
-
-.notebook tab:active {
- border-color: @accent-color;
-}
-
-/*** end ***/
-
-/*** File Browser ***/
-#FileBrowser GtkDrawingArea {
- background-color: @bg-grey;
-}
-#FileBrowser GtkDrawingArea:selected {
- background-color: @accent-color3;
- color: @text-hl-color3;
-}
-/*** end ***/
-
-/*** Image ***/
-GtkImage {
- padding: 0;
-}
-#MainNotebook > GtkGrid GtkImage {
- padding: 1px;
-}
-
-#ToolPanelNotebook GtkImage{
- padding: 0 4px;
-}
-#MyExpanderTitle GtkImage{
- padding: 0;
-}
-
-#ToolPanelNotebook tab GtkImage,
-#ToolPanelNotebook .button GtkImage {
- padding: 1px 0;
-}
-
-GtkDialog .button GtkImage{
- padding: 0;
-}
-GtkFileChooserWidget .button GtkImage{
- padding: 0 4px;
-}
-/*** end ***/
-
-/*** Toolpanel ***/
-#ToolPanelNotebook {
- background-color: @bg-dark-grey;
- padding: 0;
- border-top: 4px solid @bg-dark-grey;
-}
-
-#ToolPanelNotebook GtkScrolledWindow GtkViewport.frame {
- padding: 0 4px;
-}
-#ToolPanelNotebook .separator {
- color: transparent;
-}
-#ToolPanelNotebook GtkFrame,
-#PrefNotebook GtkFrame {
- border: 1px solid @border-color;
- border-radius: 0;
- padding: 5px;
-}
-
-#ToolPanelNotebook GtkDrawingArea {
- background-color: @bg-dark-grey;
- border-color: @bg-light-grey;
- color: @text-color;
-}
-#ToolPanelNotebook GtkDrawingArea {
- border-radius: 1px; /* BUG: if 0, scale mini sliders look funny */
-}
-
-#ExpanderBox #ExpanderBox,
-#ExpanderBox2,
-#ExpanderBox3 {
- border: 1px solid @border-color;
-}
-
-#ExpanderBox,
-#ExpanderBox2,
-#ExpanderBox3 {
- background-color: @bg-grey;
- border-radius: 0;
-}
-
-#MyExpanderTitle .label {
- color: @text-color;
-}
-#MyExpanderTitle:hover .label {
- color: @text-hl-color2;
-}
-/*** end ***/
-
-/*** View ***/
-.view {
- background-color: @bg-dark-grey;
- border-color: @view-grid-border;
-}
-#PrefNotebook .view {
- background-color: @bg-grey;
-}
-#MainNotebook .view.cell:nth-child(2) {
- padding: 1px 0px 1px 4px;
-}
-.view row:hover {
- background-color: @bg-list-hover;
- color: @text-hl-color2;
-}
-#PrefNotebook .view row:hover {
- background-color: @bg-light-grey;
- color: @text-hl-color2;
-}
-.view row:selected {
- color: @text-hl-color;
- background-color: @accent-color;
-}
-#PrefNotebook .view row:selected {
- color: @text-hl-color;
- background-color: @accent-color;
-}
-/*** end ***/
-
-/*** Metadata ***/
-#MetaPanelNotebook {
- padding: 8px 11px 0;
-}
-#MetaPanelNotebook GtkScrolledWindow GtkViewport.frame {
- padding: 8px 10px;
-}
-#MetaPanelNotebook.frame {
- background-color: @bg-grey;
- border-bottom: none;
- border-top: 4px solid @bg-dark-grey;
- border-left: 9px solid @bg-dark-grey;
- border-right: 9px solid @bg-dark-grey;
-}
-#MetaPanelNotebook .separator {
- color: @border-color;
-}
-#MetaPanelNotebook.header {
- background-color: @bg-dark-grey;
-
-}
-#MetaPanelNotebook GtkTreeView {
- padding: 1px;
- background-color: @bg-grey;
-}
-#MetaPanelNotebook .frame GtkTreeView {
- padding: 0px;
- background-color: @bg-entry-IPTC;
-}
-#MetaPanelNotebook GtkTreeView:hover,
-#MetaPanelNotebook .frame GtkTreeView:hover {
- background-color: @bg-list-hover;
- color: @text-hl-color;
-}
-#MetaPanelNotebook GtkTreeView:selected,
-#MetaPanelNotebook .frame GtkTreeView:selected {
- color: @text-hl-color;
- background-color: @accent-color;
-}
-#MetaPanelNotebook GtkTextView {
- color: @text-color;
- background-color: @bg-entry-IPTC;
- padding: 2px 4px;
-}
-/*** end ***/
-
-/*** Entry ***/
-.entry {
- background-image: none;
- background-color: @bg-scale-entry;
- border: 1px solid @bg-entry-border;
- border-radius: 0;
- padding: 2px 4px;
- color: @text-color;
- box-shadow: inset 1px 1px rgba(0, 0, 0, 0.08), 0 1px rgba(242 , 242, 242, 0.1);
-}
-#FileBrowser .entry {
- padding: 3px 4px;
-}
-.entry:focused:selected {
- color: @text-hl-color;
- background-color: @accent-color;
-}
-.entry:not(:focused):not(:insensitive) {/*Workaround*/
- color: @text-color;
- background-color: transparent;
-}
-.entry:not(:selected):not(:insensitive) {
- color: @text-color;
- background-color: @bg-scale-entry;
-}
-#ToolPanelNotebook .entry {
- padding: 0 4px 0 8px;
- border-radius: 20px 0 0 20px;
- background-color: rgba(255,255,255,.12);
- border: 1px solid rgba(0,0,0,.46);
- color: @text-tbEntry;
- box-shadow: inset 1px 1px rgba(0, 0, 0, .12), 0 1px rgba(255 , 255, 255, 0.12);
-}
-#ToolPanelNotebook .entry:focused:selected {
- color: @text-hl-color;
- background-color: @accent-color;
-}
-#ToolPanelNotebook .entry:not(:focused):not(:insensitive) {/*Workaround*/
- color: @text-tbEntry;
- background-color: transparent;
-}
-#ToolPanelNotebook .entry:not(:selected):not(:insensitive) {
- color: @text-tbEntry;
- background-color: rgba(255,255,255,.12);
-}
-
-#MetaPanelNotebook .entry {
- color: @text-color;
- background-color: @bg-entry-IPTC;
- border: none;
- border-radius: 0;
- padding: 2px 4px;
- box-shadow: none;
-}
-#MetaPanelNotebook .entry:focused:selected {
- color: @text-hl-color;
- background-color: @accent-color;
- box-shadow: none;
-}
-#MetaPanelNotebook .entry:not(:focused):not(:insensitive) {/*Workaround*/
- color: @text-color;
- background-color: transparent;
- box-shadow: none;
-}
-#MetaPanelNotebook .entry:not(:selected):not(:insensitive) {
- color: @text-color;
- background-color: @bg-entry-IPTC;
- box-shadow: none;
-}
-/*** end ***/
-
-/*** Buttons ***/
-.button {
- background-color: transparent;
- border: 1px solid @bg-button-border;
- border-radius: 0;
- padding: 3px 4px;
- box-shadow: inset 0 1px rgba(242, 242, 242, 0.1), 0 1px rgba(242, 242, 242, 0.1);
- background-image: linear-gradient(to bottom, rgba(0,0,0,.05), rgba(0,0,0,.14) 40%, rgba(0,0,0,.26));
-}
-.message-dialog .dialog-action-area .button {
- padding: 6px;
- }
-
-.button.Left + .button:not(.image-button).Right {
- border-left: none;
-}
-GtkComboBox .button {
- padding: 4px 3px;
-}
-#ToolPanelNotebook .button,
-GtkDialog .button,
-#BatchQueueButtonsMainContainer .button {
- padding: 0px 3px;
-}
-#BatchQueueButtons .button {
- padding-top: 6px;
- padding-bottom: 6px
-}
-#BeforeAfterContainer .button {
- padding: 2px;
-}
-
- /*** Fix: Space between first Retinex Comboboxes ***/
-GtkLabel + GtkComboBox + GtkComboBox {
- padding-left: 4px;
-}
-
-.text-button {
- padding: 0 2px 0 0;
-}
-#PartialPaste .text-button {
- padding: 0 8px 0 2px;
- -GtkCheckButton-indicator-spacing: 1;
-}
-#ToolPanelNotebook GtkFrame > .text-button {
- padding: 0 3px 0 0;
-}
-
-.button.text-button {
- padding: 5px 12px;
-}
-#ToolPanelNotebook .button.text-button,
-#PrefNotebook .button.text-button,
-GtkFileChooserWidget .button.text-button,
-#RightNotebook .button.text-button {
- padding: 3px 4px;
-}
-GtkPopover .button.text-button {
- padding: 2px 4px;
-}
-
-.spinbutton .button {
- background-image: none;
- background-color: transparent;
- border: none;
- border-radius: 0;
- padding: 2px;
- box-shadow: none;
-}
-#ToolPanelNotebook .spinbutton .button {
- padding: 0;
-}
-
-.button:hover {
- background-color: rgba(0, 0, 0,.18);
-}
-#ToolPanelNotebook .spinbutton .button:hover {
- background-color: @bg-spin-button-hover;
-}
-
-.button:active,
-.button:checked {
- background-image: linear-gradient(to bottom, rgb(41,41,41), rgb(37,37,37) 40%, rgb(25,25,25));
- background-color: transparent;
- border-color: black;
-}
-
-#MainNotebook > GtkGrid .button {
- padding: 2px;
- border: 4px solid @bg-dark-grey;
- background-color: transparent;
- background-image: none;
- box-shadow: none;
-}
-#MainNotebook tab .button {
- padding: 1px;
- border-top: 4px solid @bg-dark-grey;
- border-bottom: 4px solid @bg-dark-grey;
- border-left: none;
- border-right: none;
- background-color: transparent;
- background-image: none;
- box-shadow: none;
-}
-#MainNotebook > GtkGrid .button:hover,
-#MainNotebook tab .button:hover {
- background-color: rgba(255,255,255,.20);
- box-shadow: inset 0 1px rgba(255, 255, 255, 0.12);
- background-image: linear-gradient(to bottom, rgba(0,0,0,.05), rgba(0,0,0,.12) 40%, rgba(0,0,0,.24));
-}
-#MainNotebook > GtkGrid .button:active,
-#MainNotebook tab .button:active {
- background-color: rgba(255,255,255,.27);
- box-shadow: inset 0 1px rgba(255, 255, 255, 0.12);
- background-image: linear-gradient(to bottom, rgba(0,0,0,.05), rgba(0,0,0,.12) 40%, rgba(0,0,0,.24));
-}
-.view .button {
- background-color: rgb(20,20,20);
- padding: 1px 5px 2px;
- background-image: none;
- border-color: black;
- box-shadow: none;
-}
-.menu .button.bottom,
-.menu .button.bottom:insensitive {
- background-color: rgb(20,20,20);
- border-color: @accent-color;
- border-width: 0 1px 1px 1px;
- background-image: none;
- box-shadow: none;
-}
-.menu .button.top,
-.menu .button.top:insensitive {
- background-color: rgb(20,20,20);
- border-color: @accent-color;
- border-width: 1px 1px 0 1px;
- background-image: none;
- box-shadow: none;
-}
-#fullButton,
-#histButton {
- padding: 5px;
- border: none;
- background-color: @bg-dark-grey;
- background-image: none;
- box-shadow: none;
-}
-/*** end ***/
-
-/*** Check & Radio buttons ***/
-.check,
-.check row {
- -gtk-icon-source: url("images/twb/checkbox-unchecked.png");
-}
-.check:checked,
-.check row:checked {
- -gtk-icon-source: url("images/twb/checkbox-checked.png");
-}
-.check:insensitive,
-.check row:insensitive {
- -gtk-icon-source: url("images/twb/checkbox-unchecked-disabled.png");
-}
-.check:checked:insensitive,
-.check row:checked:insensitive {
- -gtk-icon-source: url("images/twb/checkbox-checked-disabled.png");
-}
-.check:inconsistent,
-.check row:inconsistent {
- -gtk-icon-source: url("images/twb/checkbox-inconsistent.png");
-}
-.check:inconsistent:insensitive,
-.check row:inconsistent:insensitive {
- -gtk-icon-source: url("images/twb/checkbox-inconsistent-disabled.png");
-}
-
-.radio,
-.radio row {
- -gtk-icon-source: url("images/twb/radio-unchecked.png");
-}
-.radio:checked,
-.radio row:checked {
- -gtk-icon-source: url("images/twb/radio-checked.png");
-}
-.radio:insensitive,
-.radio row:insensitive {
- -gtk-icon-source: url("images/twb/radio-unchecked-disabled.png");
-}
-.radio:checked:insensitive,
-.radio row:checked:insensitive {
- -gtk-icon-source: url("images/twb/radio-checked-disabled.png");
-}
-.radio:inconsistent,
-.radio row:inconsistent {
- -gtk-icon-source: url("images/twb/radio-inconsistent.png");
-}
-.radio:inconsistent:insensitive,
-.radio row:inconsistent:insensitive {
- -gtk-icon-source: url("images/twb/radio-inconsistent-disabled.png");
-}
-/*** end ***/
-
-/*** Disabled Items ***/
-
-*:insensitive,
-#ToolPanelNotebook *:insensitive {
- color: rgb(128,128,128);
- box-shadow: none;
-}
-#ToolPanelNotebook .entry:insensitive {
- color: rgb(144,144,144);
- background-color: rgba(255,255,255,.06);
- box-shadow: none;
-}
-.button:insensitive {
- background-image: none;
- background-color: rgba(0,0,0,.10);
- border-color: rgba(0,0,0,.30);
- box-shadow: none;
-}
-.spinbutton .button:insensitive {
- background-image: none;
- background-color: transparent;
- border: none;
- box-shadow: none;
-}
-.scale.slider:insensitive,
-.scale.trough.highlight:insensitive,
-.scale.trough:insensitive,
-#ToolPanelNotebook .scale.slider:insensitive,
-#ToolPanelNotebook .scale.trough.highlight:insensitive,
-#ToolPanelNotebook .scale.trough:insensitive {
- background-color: rgb(65,65,65);
- box-shadow: none;
- background-image: none;
-}
-/*** end ***/
diff --git a/rtdata/themes/TooWaBlue-GTK3-20_.css b/rtdata/themes/TooWaBlue.css
similarity index 100%
rename from rtdata/themes/TooWaBlue-GTK3-20_.css
rename to rtdata/themes/TooWaBlue.css
diff --git a/rtdata/themes/TooWaGrey - Average Surround-GTK3-20_.css b/rtdata/themes/TooWaGrey - Average Surround.css
similarity index 98%
rename from rtdata/themes/TooWaGrey - Average Surround-GTK3-20_.css
rename to rtdata/themes/TooWaGrey - Average Surround.css
index 8f045e206..1574edf03 100644
--- a/rtdata/themes/TooWaGrey - Average Surround-GTK3-20_.css
+++ b/rtdata/themes/TooWaGrey - Average Surround.css
@@ -20,7 +20,7 @@
/*****************************************/
-/**/ @import "TooWaBlue-GTK3-20_.css"; /**/
+/**/ @import "TooWaBlue.css"; /**/
/*****************************************/
/*** Change me *** rgb(red,green,blue) *** allowed values from 0 to 255 for each color ***/
diff --git a/rtdata/themes/TooWaGrey - Bright-GTK3-20_.css b/rtdata/themes/TooWaGrey - Bright.css
similarity index 98%
rename from rtdata/themes/TooWaGrey - Bright-GTK3-20_.css
rename to rtdata/themes/TooWaGrey - Bright.css
index 579ca7a00..34120efe7 100644
--- a/rtdata/themes/TooWaGrey - Bright-GTK3-20_.css
+++ b/rtdata/themes/TooWaGrey - Bright.css
@@ -20,7 +20,7 @@
/*****************************************/
-/**/ @import "TooWaBlue-GTK3-20_.css"; /**/
+/**/ @import "TooWaBlue.css"; /**/
/*****************************************/
/*** Change me *** rgb(red,green,blue) *** allowed values from 0 to 255 for each color ***/
diff --git a/rtdata/themes/TooWaGrey - Dark-GTK3-20_.css b/rtdata/themes/TooWaGrey - Dark.css
similarity index 98%
rename from rtdata/themes/TooWaGrey - Dark-GTK3-20_.css
rename to rtdata/themes/TooWaGrey - Dark.css
index 8d6d05152..9ef4dda31 100644
--- a/rtdata/themes/TooWaGrey - Dark-GTK3-20_.css
+++ b/rtdata/themes/TooWaGrey - Dark.css
@@ -20,7 +20,7 @@
/*****************************************/
-/**/ @import "TooWaBlue-GTK3-20_.css"; /**/
+/**/ @import "TooWaBlue.css"; /**/
/*****************************************/
/*** Change me *** rgb(red,green,blue) *** allowed values from 0 to 255 for each color ***/
diff --git a/rtdata/themes/TooWaGrey-GTK3-20_.css b/rtdata/themes/TooWaGrey.css
similarity index 98%
rename from rtdata/themes/TooWaGrey-GTK3-20_.css
rename to rtdata/themes/TooWaGrey.css
index 0b29ed2e7..ba3910d9c 100644
--- a/rtdata/themes/TooWaGrey-GTK3-20_.css
+++ b/rtdata/themes/TooWaGrey.css
@@ -20,7 +20,7 @@
/*****************************************/
-/**/ @import "TooWaBlue-GTK3-20_.css"; /**/
+/**/ @import "TooWaBlue.css"; /**/
/*****************************************/
/*** Change me *** rgb(red,green,blue) *** allowed values from 0 to 255 for each color ***/
diff --git a/rtdata/themes/size - Legacy.css b/rtdata/themes/common/size - Legacy.css
similarity index 100%
rename from rtdata/themes/size - Legacy.css
rename to rtdata/themes/common/size - Legacy.css
diff --git a/rtdata/themes/size.css b/rtdata/themes/common/size.css
similarity index 100%
rename from rtdata/themes/size.css
rename to rtdata/themes/common/size.css
diff --git a/rtdata/themes/images/svg/twb/checkbox-checked-disabled.svg b/rtdata/themes/images/svg/twb/checkbox-checked-disabled.svg
deleted file mode 100644
index 1103ee917..000000000
--- a/rtdata/themes/images/svg/twb/checkbox-checked-disabled.svg
+++ /dev/null
@@ -1,124 +0,0 @@
-
-
-
-
diff --git a/rtdata/themes/images/svg/twb/checkbox-checked.svg b/rtdata/themes/images/svg/twb/checkbox-checked.svg
deleted file mode 100644
index c7d28d45d..000000000
--- a/rtdata/themes/images/svg/twb/checkbox-checked.svg
+++ /dev/null
@@ -1,124 +0,0 @@
-
-
-
-
diff --git a/rtdata/themes/images/svg/twb/checkbox-inconsistent-disabled.svg b/rtdata/themes/images/svg/twb/checkbox-inconsistent-disabled.svg
deleted file mode 100644
index ee55c4f6f..000000000
--- a/rtdata/themes/images/svg/twb/checkbox-inconsistent-disabled.svg
+++ /dev/null
@@ -1,124 +0,0 @@
-
-
-
-
diff --git a/rtdata/themes/images/svg/twb/checkbox-inconsistent.svg b/rtdata/themes/images/svg/twb/checkbox-inconsistent.svg
deleted file mode 100644
index e0f5bd362..000000000
--- a/rtdata/themes/images/svg/twb/checkbox-inconsistent.svg
+++ /dev/null
@@ -1,124 +0,0 @@
-
-
-
-
diff --git a/rtdata/themes/images/svg/twb/checkbox-unchecked-disabled.svg b/rtdata/themes/images/svg/twb/checkbox-unchecked-disabled.svg
deleted file mode 100644
index 635dae59b..000000000
--- a/rtdata/themes/images/svg/twb/checkbox-unchecked-disabled.svg
+++ /dev/null
@@ -1,118 +0,0 @@
-
-
-
-
diff --git a/rtdata/themes/images/svg/twb/checkbox-unchecked.svg b/rtdata/themes/images/svg/twb/checkbox-unchecked.svg
deleted file mode 100644
index 0adfe66cc..000000000
--- a/rtdata/themes/images/svg/twb/checkbox-unchecked.svg
+++ /dev/null
@@ -1,118 +0,0 @@
-
-
-
-
diff --git a/rtdata/themes/images/svg/twb/radio-checked-disabled.svg b/rtdata/themes/images/svg/twb/radio-checked-disabled.svg
deleted file mode 100644
index f415b4be7..000000000
--- a/rtdata/themes/images/svg/twb/radio-checked-disabled.svg
+++ /dev/null
@@ -1,122 +0,0 @@
-
-
-
-
diff --git a/rtdata/themes/images/svg/twb/radio-checked.svg b/rtdata/themes/images/svg/twb/radio-checked.svg
deleted file mode 100644
index c6f9b4ee8..000000000
--- a/rtdata/themes/images/svg/twb/radio-checked.svg
+++ /dev/null
@@ -1,122 +0,0 @@
-
-
-
-
diff --git a/rtdata/themes/images/svg/twb/radio-inconsistent-disabled.svg b/rtdata/themes/images/svg/twb/radio-inconsistent-disabled.svg
deleted file mode 100644
index e41f3ff9c..000000000
--- a/rtdata/themes/images/svg/twb/radio-inconsistent-disabled.svg
+++ /dev/null
@@ -1,122 +0,0 @@
-
-
-
-
diff --git a/rtdata/themes/images/svg/twb/radio-inconsistent.svg b/rtdata/themes/images/svg/twb/radio-inconsistent.svg
deleted file mode 100644
index 65ea2a8e8..000000000
--- a/rtdata/themes/images/svg/twb/radio-inconsistent.svg
+++ /dev/null
@@ -1,122 +0,0 @@
-
-
-
-
diff --git a/rtdata/themes/images/svg/twb/radio-unchecked-disabled.svg b/rtdata/themes/images/svg/twb/radio-unchecked-disabled.svg
deleted file mode 100644
index 60098048f..000000000
--- a/rtdata/themes/images/svg/twb/radio-unchecked-disabled.svg
+++ /dev/null
@@ -1,116 +0,0 @@
-
-
-
-
diff --git a/rtdata/themes/images/svg/twb/radio-unchecked.svg b/rtdata/themes/images/svg/twb/radio-unchecked.svg
deleted file mode 100644
index 8b448f3cf..000000000
--- a/rtdata/themes/images/svg/twb/radio-unchecked.svg
+++ /dev/null
@@ -1,116 +0,0 @@
-
-
-
-
diff --git a/rtdata/themes/images/twb/checkbox-checked-disabled.png b/rtdata/themes/images/twb/checkbox-checked-disabled.png
deleted file mode 100644
index 8458b5987..000000000
Binary files a/rtdata/themes/images/twb/checkbox-checked-disabled.png and /dev/null differ
diff --git a/rtdata/themes/images/twb/checkbox-checked.png b/rtdata/themes/images/twb/checkbox-checked.png
deleted file mode 100644
index 83d3744d3..000000000
Binary files a/rtdata/themes/images/twb/checkbox-checked.png and /dev/null differ
diff --git a/rtdata/themes/images/twb/checkbox-inconsistent-disabled.png b/rtdata/themes/images/twb/checkbox-inconsistent-disabled.png
deleted file mode 100644
index 96c5fbe5f..000000000
Binary files a/rtdata/themes/images/twb/checkbox-inconsistent-disabled.png and /dev/null differ
diff --git a/rtdata/themes/images/twb/checkbox-inconsistent.png b/rtdata/themes/images/twb/checkbox-inconsistent.png
deleted file mode 100644
index 373f218be..000000000
Binary files a/rtdata/themes/images/twb/checkbox-inconsistent.png and /dev/null differ
diff --git a/rtdata/themes/images/twb/checkbox-unchecked-disabled.png b/rtdata/themes/images/twb/checkbox-unchecked-disabled.png
deleted file mode 100644
index 985dd07cc..000000000
Binary files a/rtdata/themes/images/twb/checkbox-unchecked-disabled.png and /dev/null differ
diff --git a/rtdata/themes/images/twb/checkbox-unchecked.png b/rtdata/themes/images/twb/checkbox-unchecked.png
deleted file mode 100644
index 747a9c8c3..000000000
Binary files a/rtdata/themes/images/twb/checkbox-unchecked.png and /dev/null differ
diff --git a/rtdata/themes/images/twb/radio-checked-disabled.png b/rtdata/themes/images/twb/radio-checked-disabled.png
deleted file mode 100644
index 0947a5e06..000000000
Binary files a/rtdata/themes/images/twb/radio-checked-disabled.png and /dev/null differ
diff --git a/rtdata/themes/images/twb/radio-checked.png b/rtdata/themes/images/twb/radio-checked.png
deleted file mode 100644
index 48cfc16ae..000000000
Binary files a/rtdata/themes/images/twb/radio-checked.png and /dev/null differ
diff --git a/rtdata/themes/images/twb/radio-inconsistent-disabled.png b/rtdata/themes/images/twb/radio-inconsistent-disabled.png
deleted file mode 100644
index a59b179e1..000000000
Binary files a/rtdata/themes/images/twb/radio-inconsistent-disabled.png and /dev/null differ
diff --git a/rtdata/themes/images/twb/radio-inconsistent.png b/rtdata/themes/images/twb/radio-inconsistent.png
deleted file mode 100644
index abe1e28ba..000000000
Binary files a/rtdata/themes/images/twb/radio-inconsistent.png and /dev/null differ
diff --git a/rtdata/themes/images/twb/radio-unchecked-disabled.png b/rtdata/themes/images/twb/radio-unchecked-disabled.png
deleted file mode 100644
index 6cbc076f2..000000000
Binary files a/rtdata/themes/images/twb/radio-unchecked-disabled.png and /dev/null differ
diff --git a/rtdata/themes/images/twb/radio-unchecked.png b/rtdata/themes/images/twb/radio-unchecked.png
deleted file mode 100644
index e28db04f9..000000000
Binary files a/rtdata/themes/images/twb/radio-unchecked.png and /dev/null differ
diff --git a/rtgui/options.h b/rtgui/options.h
index 235b1b26f..ccde54256 100644
--- a/rtgui/options.h
+++ b/rtgui/options.h
@@ -37,7 +37,7 @@
#define STARTUPDIR_CUSTOM 2
#define STARTUPDIR_LAST 3
-#define THEMEREGEXSTR "^(.+)-GTK3-(\\d{1,2})?_(\\d{1,2})?\\.css$"
+#define THEMEREGEXSTR "^(.+)\\.css$"
// Default bundled profile name to use for Raw images
#ifdef WIN32
diff --git a/rtgui/preferences.cc b/rtgui/preferences.cc
index 393744a1b..4dd6eae4f 100644
--- a/rtgui/preferences.cc
+++ b/rtgui/preferences.cc
@@ -139,14 +139,11 @@ Preferences::~Preferences()
get_size(options.preferencesWidth, options.preferencesHeight);
}
-int Preferences::getThemeRowNumber (const Glib::ustring& longThemeFName)
+int Preferences::getThemeRowNumber (const Glib::ustring& name)
{
-
- if (regex->match(longThemeFName + ".css", matchInfo)) {
- for (size_t i = 0 ; i < themeFNames.size(); ++i) {
- if (themeFNames.at(i).longFName == longThemeFName) {
- return (int)i;
- }
+ for (size_t i = 0 ; i < themeNames.size(); ++i) {
+ if (themeNames.at(i) == name) {
+ return (int)i;
}
}
@@ -1154,8 +1151,8 @@ Gtk::Widget* Preferences::getGeneralPanel()
themeCBT = Gtk::manage(new Gtk::ComboBoxText());
themeCBT->set_active(0);
parseThemeDir(Glib::build_filename(argv0, "themes"));
- for (size_t i = 0; i < themeFNames.size(); i++) {
- themeCBT->append(themeFNames.at(i).shortFName);
+ for (size_t i = 0; i < themeNames.size(); i++) {
+ themeCBT->append(themeNames.at(i));
}
Gtk::Label* mainFontLbl = Gtk::manage(new Gtk::Label(M("PREFERENCES_APPEARANCE_MAINFONT")));
@@ -1665,7 +1662,7 @@ void Preferences::parseThemeDir(Glib::ustring dirname)
return;
}
- // process directory
+ // Process directory
Glib::Dir* dir = nullptr;
try {
@@ -1675,40 +1672,17 @@ void Preferences::parseThemeDir(Glib::ustring dirname)
}
for (Glib::DirIterator i = dir->begin(); i != dir->end(); ++i) {
- Glib::ustring fname = Glib::build_filename(dirname, *i);
- Glib::ustring sname = *i;
+ Glib::ustring fname = *i;
- // ignore directories and filter out unsupported theme
- if (regex->match(sname, matchInfo) && !Glib::file_test(fname, Glib::FILE_TEST_IS_DIR) && sname.size() >= 4) {
- bool keepIt = false;
- Glib::ustring fname2 = matchInfo.fetch(1);
- Glib::ustring minMinor = matchInfo.fetch(2);
- Glib::ustring maxMinor = matchInfo.fetch(3);
-
- if (!minMinor.empty()) {
- guint64 minMinorVal = g_ascii_strtoll(minMinor.c_str(), 0, 0);
-
- if ((guint64)GTK_MINOR_VERSION >= minMinorVal) {
- keepIt = true;
- }
- }
-
- if (!maxMinor.empty()) {
- guint64 maxMinorVal = g_ascii_strtoll(maxMinor.c_str(), 0, 0);
-
- if ((guint64)GTK_MINOR_VERSION <= maxMinorVal) {
- keepIt = true;
- }
- }
-
- if (keepIt) {
- themeFNames.push_back(ThemeFilename(matchInfo.fetch(1), sname.substr(0, sname.size() - 4)));
- }
+ // Ignore directories and filter to keep css files only
+ if (regex->match(fname, matchInfo) && !Glib::file_test(fname, Glib::FILE_TEST_IS_DIR) && fname.size() >= 4) {
+ themeNames.push_back(fname.substr(0, fname.size() - 4));
}
}
- std::sort(themeFNames.begin(), themeFNames.end(), [](const ThemeFilename & firstDir, const ThemeFilename & secondDir) {
- return firstDir.longFName < secondDir.longFName;
+ // Sort theme by names
+ std::sort(themeNames.begin(), themeNames.end(), [](const Glib::ustring & first, const Glib::ustring & second) {
+ return first < second;
});
delete dir;
@@ -1747,7 +1721,7 @@ void Preferences::storePreferences()
moptions.shadowThreshold = (int)shThresh->get_value();
moptions.language = languages->get_active_id();
moptions.languageAutoDetect = ckbLangAutoDetect->get_active();
- moptions.theme = themeFNames.at (themeCBT->get_active_row_number ()).longFName;
+ moptions.theme = themeNames.at (themeCBT->get_active_row_number ());
Gdk::RGBA cropCol = cropMaskColorCB->get_rgba();
moptions.cutOverlayBrush[0] = cropCol.get_red();
@@ -2262,7 +2236,7 @@ void Preferences::okPressed()
void Preferences::cancelPressed()
{
// set the initial theme back
- if (themeFNames.at (themeCBT->get_active_row_number ()).longFName != options.theme) {
+ if (themeNames.at (themeCBT->get_active_row_number ()) != options.theme) {
switchThemeTo(options.theme);
}
@@ -2318,7 +2292,7 @@ void Preferences::aboutPressed()
void Preferences::themeChanged()
{
- moptions.theme = themeFNames.at (themeCBT->get_active_row_number ()).longFName;
+ moptions.theme = themeNames.at (themeCBT->get_active_row_number ());
switchThemeTo(moptions.theme);
}
diff --git a/rtgui/preferences.h b/rtgui/preferences.h
index e9f33a1f1..331e02fdb 100644
--- a/rtgui/preferences.h
+++ b/rtgui/preferences.h
@@ -70,18 +70,9 @@ class Preferences final :
}
};
- class ThemeFilename
- {
- public:
- Glib::ustring shortFName;
- Glib::ustring longFName;
-
- ThemeFilename (Glib::ustring sfname, Glib::ustring lfname) : shortFName (sfname), longFName (lfname) {}
- };
-
Glib::RefPtr behModel;
BehavColumns behavColumns;
- std::vector themeFNames;
+ std::vector themeNames;
Glib::RefPtr regex;
Glib::MatchInfo matchInfo;
Splash* splash;
@@ -279,7 +270,7 @@ class Preferences final :
void switchFontTo (const Glib::ustring &newFontFamily, const int newFontSize);
bool splashClosed (GdkEventAny* event);
- int getThemeRowNumber (const Glib::ustring& longThemeFName);
+ int getThemeRowNumber (const Glib::ustring& name);
void appendBehavList (Gtk::TreeModel::iterator& parent, Glib::ustring label, int id, bool set);
diff --git a/rtgui/rtwindow.cc b/rtgui/rtwindow.cc
index 1d5a921f3..ef2e58934 100755
--- a/rtgui/rtwindow.cc
+++ b/rtgui/rtwindow.cc
@@ -118,41 +118,11 @@ RTWindow::RTWindow ()
RTScalable::init(this);
// Look for theme and set it
- Glib::RefPtr regex = Glib::Regex::create (THEMEREGEXSTR, Glib::RegexCompileFlags::REGEX_CASELESS);
- Glib::ustring filename;
- Glib::MatchInfo mInfo;
- bool match = regex->match(options.theme + ".css", mInfo);
- if (match) {
- // save old theme (name + version)
- Glib::ustring initialTheme(options.theme);
-
- // update version
- auto pos = options.theme.find("-GTK3-");
- Glib::ustring themeRootName(options.theme.substr(0, pos));
- if (GTK_MINOR_VERSION < 20) {
- options.theme = themeRootName + "-GTK3-_19";
- } else {
- options.theme = themeRootName + "-GTK3-20_";
- }
- // check if this version exist
- if (!Glib::file_test(Glib::build_filename(argv0, "themes", options.theme + ".css"), Glib::FILE_TEST_EXISTS)) {
- // set back old theme version if the actual one doesn't exist yet
- options.theme = initialTheme;
- }
- }
- filename = Glib::build_filename(argv0, "themes", options.theme + ".css");
-
- if (!match || !Glib::file_test(filename, Glib::FILE_TEST_EXISTS)) {
- options.theme = "RawTherapee-GTK";
-
- // We're not testing GTK_MAJOR_VERSION == 3 here, since this branch requires Gtk3 only
- if (GTK_MINOR_VERSION < 20) {
- options.theme = options.theme + "3-_19";
- } else {
- options.theme = options.theme + "3-20_";
- }
-
- filename = Glib::build_filename (argv0, "themes", options.theme + ".css");
+ // Check if the current theme name in options exists, otherwise set it to default one (i.e. "RawTherapee.css")
+ auto filename = Glib::build_filename(argv0, "themes", options.theme + ".css");
+ if (!Glib::file_test(filename, Glib::FILE_TEST_EXISTS)) {
+ options.theme = "RawTherapee";
+ filename = Glib::build_filename(argv0, "themes", options.theme + ".css");
}
cssRT = Gtk::CssProvider::create();