GNOME Bugzilla – Bug 759649
Proposed Dark Theme for 2.9/git master
Last modified: 2018-04-24 20:31:48 UTC
Created attachment 317644 [details] Proposed Dark Theme for 2.9/git master I revamped my old themes and am proposing this one for the Dark theme.
Created attachment 317646 [details] Dark Theme Screenshot
A few notes: - the white on light gray in input widgets is not very readable in my opinion. Maybe a little darker there? - The empty canvas has black text. Could it be made white? This is not very bad since I think there is only text in the dev version ("Unstable Development Version", a commit hash and a message…), but well… - Is it possible to have the title bar dark too? - The gtkrc has a lot of trailing whitespace everywhere. It's OK since I can clean them in a single command, but just for the record, for the next time, it's better if you provide code as clean as possible. :-) - Are all the images in ui/ made by you? I ask to be sure there is proper license. - Are all these images absolutely needed? I am not very knowledgeable in theme-making, and I notice that the Default theme has no embedded image. But maybe that's needed to actually make a theme really good looking? Other than this, it looks ok I guess. Well that's weird to me, but I am probably not used to a dark GIMP. Maybe others who use dark themes could give their opinion? Also I'd be in favor of committing this to master and work from there. We don't have a dark theme yet anyway. So let's make it a start. Mitch > if that's good with you, I can add this theme in the install.
Yeha i didn't even try to tint the text there, only devs will see it, or those brave souls that try their builds lol. Not even sure i can theme that without look at the code because it should automatically theme with the rest in theory. For the images iirc the round slider ones were from my desktop Ceti-2 theme but its GPL3, the rest i did, they are all gpl3 mine or those. I've asked twice in irc about formatting and a way to beautify it ;) no one could answer that at this time. I spent 3 hrs cleaning it out by hand to that format *shudder* since there wasn't any references or docs that i saw on the subject i didn't do much else. But that said i am open to suggestions :) As for the trailing extras spaces sorry about but after 3 hrs at it my fingers were just about done lol guess it slipped my mind. Title bar? you mean the menu bar? changing that affects the menus and dropdowns so are you sure about that as it gets overlaid by the items and menu items. Yeah the images are required sadly, it'd be just to darn fugly without them :( One day we'll have gtk3 and css support *looks towards the heavens* :D If you'd used every other graphics app/tool out there you'd have noticed most are using dark themes these days. Personnally I prefer them when on an editing binge (photography for example), and working on a light theme at 2am is the least appealing thing on the planet, not to mention the eye bleed from all the glare lol. Change the text color for the input fields. I'll try but not all classes respect change the text color not sure about that one will have to test it to see if it does but the text color uses pretty much global one for some of these widget which was a pain deciding what to use. If i can what would you suggest i use as the color instead of white?
Created attachment 317653 [details] GIMP with dark theme has no dark title bar. > For the images iirc the round slider ones were from my desktop Ceti-2 theme but its GPL3, the rest i did, they are all gpl3 mine or those. Ok just be sure to give us the complete list of origins so that we can write authors down in commit messages at least. > I've asked twice in irc about formatting and a way to beautify it ;) no one could answer that at this time. I think you are now our new theme expert. Pretty sure Mitch will declare you "theme maintainer" soon. :P > Title bar? you mean the menu bar? No the title bar added by the window manager. In my case, I can get it dark if I set my whole desktop as dark. Unfortunately I don't want to do this because I like some light in my life, and some applications are really not properly usable in dark (for instance Firefox in dark mode also make many text input barely readable, with black on dark grey or dark grey on black). So I could think that this only depends on the window manager, but I see that other software are able to get a dark title bar even when I set my GNOME in light colors. For instance Entangle has a dark title bar. See my screenshot dark-title-bar.png. Entangle uses GTK+3 though. Maybe there are limitations in GTK+2? If not, I'd appreciate if the title bar could follow the theme color scheme. > If i can what would you suggest i use as the color instead of white? I have not tested other colors, so I could not say. Just try to increase the contrast, I'd say (so text brighter or background darker in these input fields).
Also should we keep the theme names as is? "TheDarkSideOfGimp"? Or should we go into more neutral names? I'm not against a little humor personally and I like this name.
Oh dear should i be afraid, actually i don't mind lol, i like making sure stuff looks "perty", and it's not that hard when you have good theme capabilities in the toolkit (yeah just not gtk2 lol). My cuss meter was pretty high on that one. For the name i was having fun there, what with all that starwars stuff going on i just got inspired :) either way is fine, though i find it funnier as is :) actually every time i think about it i can hear the imperial march song starting up in my mind lol. If i'd have decent vector drawing skills i'd of done a little logo starwars styled for them as well. Ah yes ok, that, well on ubuntu i can't do that; not with gtk2. hell i can't even override the damned dropdown from the top menu bar without turning on "dark mode" and even then its css stuff aka gtk3 :( They went to a more Mac styled menuing scheme *shakes fists at the universe* so not sure its worth the effort for now. What desktop/os/wm do you use? Also that's why my screenshots always only show the menu from within the app and not the top menu. Else you'd see some fugly menus :( I'll keep it in mind for future though. As for the images i'll review them tomorrow or sunday and get you the list. I think having done a quick look i may be able to reduce them a bit more if no one uses ranges. Ok will check out for the text color at the same time i check for the files.
You should try it with an inverted icons set from the Symbolic set :) looks even better the current Symbolic set.
i ran the following on them from the command like to invert the lot: find -name "*.png" -exec mogrify -negate '{}' \;
I took a look at theming the big message in the middle of the canvas, turns out its being drawn straight to it so i don't see how i can do that it that way. see gimp_display_shell_canvas_draw_drop_zone() in gimpdisplayshell-callbacks.c Removed some of the pngs (all the ones for the ranges). Will update after some breakfast, once i have the list of what and where for the images.
Created attachment 317659 [details] Updated dark theme Updated the theme text, credited everyone in the gtkrc. Removed all unused assets.
@Jehan brightened up the text, hope that works for you.
> i ran the following on them from the command like to invert the lot: > > find -name "*.png" -exec mogrify -negate '{}' \; I already have a patch for generating the inverted icons. See bug 759384. It uses gegl instead of ImageMagick (not that ImageMagick is not a great software, but we already have GEGL as a dependency, no need to add another; moreover using GEGL in command line is also a possible usage). Just waits for Mitch review.
(In reply to Jehan from comment #12) > I already have a patch for generating the inverted icons. See bug 759384. It > uses gegl instead of ImageMagick (not that ImageMagick is not a great > software, but we already have GEGL as a dependency, no need to add another; > moreover using GEGL in command line is also a possible usage). Didn't know that, was just commenting how i did it in case you were wondering where i got them from lol. I've got to do more reading on this gegl stuff looks like. > Just waits for Mitch review. Can't wait to hear the verdict.
Created attachment 317672 [details] [review] New dark theme by Benoit Touchette Attached a patch installing the dark theme at build. I would propose to commit this and work incrementally from here. What do you think, Mitch?
Created attachment 317688 [details] Update 3 to fix some warnings, adds an extra image. Fixes some warnings from the last update, adds entry-border-notebook-null.png
*** Bug 757716 has been marked as a duplicate of this bug. ***
Some initial commit: commit 9eb5fbd2a2b37b65014840e2af994afa351df3b3 Author: Jehan <jehan@girinstud.io> Date: Sat Dec 19 18:00:12 2015 +0100 Bug 759649 - new dark theme by Benoit Touchette. Initial version of our dark theme. Additional credits for some of the UI images to horst3180 (Ceti-2 theme) and Medhi Abhollahi (new CS6 II theme). All under GPLv3, as the rest of GIMP. ------------------ I let the report open for now, so that you can continue to work from this base if more bugs are encountered.
Created attachment 317839 [details] Updated gtkrc Fixes color issue with scrolled windows
Created attachment 317930 [details] GIMP master with dark theme under KDE I just tested your theme under KDE plasma. There are bunch of broken stuff. Cf. screenshot. Could you test under KDE and fix the gtkrc appropriately? Thanks!
Created attachment 317931 [details] Bugginess under plasma Anohter screenshot for Plasma... Looks buggy :)
I'm using oxygen GTK theme for KDE apps.
For my own, not sure what settings I was using. Likely something default under a Fedora 23 (plasma-desktop 5.5.0-4.fc23) since I don't use KDE, hence I hadn't customized anything.
@Jehan I don't have the harddrive space at this time to install KDE and i can't afford to get more for the foreseeable future. I'll see what i can do, that does look awful.
@Alexia: What version of KDE? OS?
gtkrc updated as of comment 18: commit 33a61c7f45415003eb09b7321af6d82c2cbf9962 Author: Benoit Touchette <draekko.sofware@gmail.com> Date: Sun Dec 27 19:44:33 2015 +0100 themes: fixes color issue with scrolled windows on dark theme.
Ok tried it in KDE/Plasma and by default their is no way to change the colors. KDE always overrides them. In ubuntu when i go to Applications -> Settings -> System Settings -> Colors -> Options and toggle off "Apply colors to non-Qt applications" it works fine afterwards. There is no way from the theme to override the window borders. So if the desktop theme is light your mileage will vary.
So far for KDE i just need to tweak the preference dialog gtkentry text colors but that seems like about it.
Created attachment 317992 [details] Dark Theme Updates (complete package gtkrc + images)
Created attachment 317993 [details] [review] Dark Theme update patch Improvements for KDE functionality and contrast of colors.
@Alexia_Death: Let me if the new update works with the turning off qt colors. @Jehan: ditto.
Created attachment 317994 [details] [review] Same patch as previous adds proper name/email to patch
Just tested it on a Hackintosh running OSX Maverick and it works there as well. Let me know if it works for you guys in KDE so i can update the other themes accordingly.
Created attachment 318034 [details] Screenshot - 2015/12/30
Created attachment 318064 [details] KDE bugs KDE version still has issues. Font sizes in some places go boinkers and some bits stay light.
Created attachment 318120 [details] [review] Update 2016-01-01 Fixes some KDE issues, adds version to file, changes button pngs, removes focus padding on buttons, adds separators.
Created attachment 318121 [details] Screenshot 2016/01/01
Created attachment 318122 [details] Update v0.1.0 2016/01/01 complete theme zip file
For now i'll be tracking changes to these themes here https://github.com/Draekko-RAND/gimp-themes
1) I wanted to push your last changes, but I get this warning when testing it, so I didn't push. > (lt-gimp-2.9:17277): Gtk-WARNING **: Unable to locate theme engine in module_path: "oxygen-gtk", I am unsure what are the difference between themes and theme engines, but I guess we don't want to have external theme engines as dependencies. Or maybe I just don't understand at all what are theme engines. :-) 2) Also I read the comment at the start of the gtkrc with indications for KDE users. Is there no way to work around KDE issues other than asking them to disable options globally? Nobody will check the contents of the gtkrc. We would need to have the theme work out of the box (if possible).
Also I get the following warning regularly: > ** (lt-gimp-2.9:9630): WARNING **: Invalid borders specified for theme pixmap: > /home/jehan/.local/share/gimp/2.0/themes/The-Dark-Side-of-Gimp/ui/null.png, > borders don't fit within the image
Jehan@ Both warnings are inconsequential but i removed the one and i think the other is fixed, i also think i resolved QtCurves issues. As for KDE in general there's no getting around disabling the color option for non-qt apps. There would need to be somewhere that this gets documented. I also seriously doubt any of the hundreds of distros out there will change the current default for that option. Still need to finish testing this on windows, wine, and osx before i make another update, to make sure no new issues crops up from those changes.
> Both warnings are inconsequential but i removed the one and i think the other is fixed, i also think i resolved QtCurves issues. Awesome. We have a no-warning policy, like most big software with a lot of code (because if we were to accept warnings here and there, in the end, we'd be drowned under hundreds of warnings. Also because warnings are never *completely* "inconsequential". ;-) > I also seriously doubt any of the hundreds of distros out there will change the current default for that option. Indeed but I wonder especially how the hundreds of GTK+ 2 software are doing to get themes working properly under KDE. :-) I'm sure there must be a solution/workaround. We just have to find and ask the right person/code who knows about this/implements this. > Still need to finish testing this on windows, wine, and osx before i make another update, to make sure no new issues crops up from those changes. Awesome. When you'll have your git access, feel free to update the theme yourself.
(In reply to Jehan from comment #42) > > Both warnings are inconsequential but i removed the one and i think the other is fixed, i also think i resolved QtCurves issues. > > Awesome. We have a no-warning policy, like most big software with a lot of > code (because if we were to accept warnings here and there, in the end, we'd > be drowned under hundreds of warnings. Also because warnings are never > *completely* "inconsequential". ;-) > Yeah but in this case you may need to accept some warnings as they are in this case ;) Just like i do when using custom themes for my desktop they add statements for certain engines, nothing happens for those that don't have the engine aside from those warnings. They truly are inconsequential. That's the way it is sometimes short of writing one gimp theme for each desktop environment and theme subset. > > I also seriously doubt any of the hundreds of distros out there will change the current default for that option. > > Indeed but I wonder especially how the hundreds of GTK+ 2 software are doing > to get themes working properly under KDE. :-) > I'm sure there must be a solution/workaround. We just have to find and ask > the right person/code who knows about this/implements this. > Nope not for this, try googling it, they just tell people to toggle it for those that want that else they assume that you want to use KDE as they see it and want a homogeneous look for kde and other kde/qt apps. I've looked and found no answer other than that so if you have some magical wand to fix this you let me know :) > > Still need to finish testing this on windows, wine, and osx before i make another update, to make sure no new issues crops up from those changes. > > Awesome. When you'll have your git access, feel free to update the theme > yourself. ok.
> Just like i do when using custom themes for my desktop they add statements for certain engines, nothing happens for those that don't have the engine aside from those warnings. The problem is that we don't want to add any dependency to an engine theme for the default themes, and this is somehow some kind of soft dependency. I see 2 engines in your gtkrc: "pixmap" and "oxygen-gtk". Are all these engine calls really needed? What happens when you don't have these? As for the "oxygen-gtk" engine call in particular, it is even empty! Is there a point to this? If you think that we should really have a dependency to an engine, and that is important for GIMP look'n feel or for KDE portability (it seems to be the purpose of the oxygen-gtk engine), then I would say we should make a harder dependency to these, at the very least in our INSTALL file.
(In reply to Jehan from comment #44) > > Just like i do when using custom themes for my desktop they add statements for certain engines, nothing happens for those that don't have the engine aside from those warnings. > > The problem is that we don't want to add any dependency to an engine theme > for the default themes, and this is somehow some kind of soft dependency. > I see 2 engines in your gtkrc: "pixmap" and "oxygen-gtk". > Agreed, and i "fixed" it by removing it. At the time i was testing with it but since its not required at this point it'll be gone for the next update. Pixmaps are required to make the themes work and as far as i can tell is included everywhere by default. The other ones though definitely aren't (possibly) except for those folks using said themes. :) > Are all these engine calls really needed? What happens when you don't have > these? > > As for the "oxygen-gtk" engine call in particular, it is even empty! Is > there a point to this? > Nope i was testing for kde since it wasn't finalized left in there just in case i needed to set some parameters there. But like i said above it isn't required at this time so its easier to just remove to make the warnings disappear. > If you think that we should really have a dependency to an engine, and that > is important for GIMP look'n feel or for KDE portability (it seems to be the > purpose of the oxygen-gtk engine), then I would say we should make a harder > dependency to these, at the very least in our INSTALL file. No so far i've managed without but i just want you to be aware of the pitfalls that could arise in the future and that some warnings may be inevitable "eventually" if we stick to a single file per theme :)
Created attachment 318400 [details] GtkScale widget with the dark theme. GtkScales are unreadable with the dark theme. See screenshot.
(In reply to Jehan from comment #46) > Created attachment 318400 [details] > GtkScale widget with the dark theme. > > GtkScales are unreadable with the dark theme. See screenshot. I tried to find this here not seeing it, how do i get to this dialog/widget, also was this under kde, gnome, unity?
Under GNOME 3. This specific piece of UI does not exist yet (it's from my patch in bug 745835). But it's just a pure GtkScale widget. Nothing particular, no custom subclass. So it has to be fixed because this can be found anywhere, in future core UI, in plugins, etc.
Indeed, though when i did the theme i was working with what existed lol. I'll add this to the list, hopefully some time between now and the weekend i'll try to take a look at it.
Created attachment 318499 [details] [review] v0.1.2 patch (bug fix, adds missing gtk[h|v]scale)
Created attachment 318500 [details] v0.1.2 complete .zip theme files
(In reply to Jehan from comment #48) > Under GNOME 3. This specific piece of UI does not exist yet (it's from my > patch in bug 745835). But it's just a pure GtkScale widget. Nothing > particular, no custom subclass. So it has to be fixed because this can be > found anywhere, in future core UI, in plugins, etc. This updated patch should fix all outstanding issues found so far. Added the missing gtkscales.
@Jehan btw, still waiting to get my approval to commit this to the repository. just fyi :)
*** Bug 759853 has been marked as a duplicate of this bug. ***
commit 4dbc68be7f9cfcb96c284b6025374f15ef5a2795 Author: Benoit Touchette <draekko.sofware@gmail.com> Date: Mon Jan 11 09:53:41 2016 -0500 themes: update/fixes for 'The-Dark-Side-of-Gimp' theme Updated & fixed KDE plugins/filters not being skinned properly. Fixed Ubuntu overlay scrollbars. https://bugzilla.gnome.org/show_bug.cgi?id=759649
commit 2e7ebde19d0a425066bdd7cb4a5a1fb88bac8ca5 Author: Benoit Touchette <draekko.sofware@gmail.com> Date: 2016-01-14 15:23:33 (GMT) themes: add missing fixes for 'The Dark Side of Gimp' theme Adds missing plugins fix, reverts part of previous commit to remove duplicate styles. https://bugzilla.gnome.org/show_bug.cgi?id=759649
commit 127fdff9c73f3f2c6b77cb982eeaf413a408327c Author: Benoit Touchette <draekko.sofware+gimp@gmail.com> Date: 2016-01-17 11:58:43 (GMT themes: Updated both dark and light themes menuitem prelight. Updated both themes menuitem prelight to use same filename in gtkrc. Added new ui/menuitem-prelight.png
Created attachment 319752 [details] v0.1.4
Created attachment 320081 [details] v0.1.5 Update to fix menu item style name and menu item prelight on Unbuntu Unity.
commit 0d692eadc00600e4d357bf9e0cf9b86733c11b5a Author: Benoit Touchette <draekko.sofware@gmail.com> Date: 2016-02-14 17:10:10 (GMT) themes: updates to TLSOG & TDSOG (prelight, text, bug fixes, (C)) Updates to copyright, some button contrast for TDSOG, TDLSOG. Added comment for button focus area. Fixed selected text for TLSOG themes. Redid screenshots to match changes. Fixed menu style name. Updated copyright year. Fixed menu items for Ubuntu unity. Fixed prelight and fg for widget text. Updated to v0.1.6. https://bugzilla.gnome.org/show_bug.cgi?id=759649
Created attachment 321134 [details] v0.1.6
commit ab8aa3bd83907710ef21f3d3ae33c4dba1507a97 Author: Benoit Touchette <draekko.software+gimp@gmail.com> Date: Sun Mar 20 08:42:20 2016 -0400 Themes: Renamed themes. Added 3 themes (Lighter, Gray, Dark). Updated themes, renamed The-Dark-Side-Of-Gimp to Darker, and renamed The-Light-Side-Of-Gimp to Light. Added three themes, Lighter, Gray, and Dark. https://bugzilla.gnome.org/show_bug.cgi?id=759648 (Light) https://bugzilla.gnome.org/show_bug.cgi?id=759649 (Darker) https://bugzilla.gnome.org/show_bug.cgi?id=759663 (Gray) https://bugzilla.gnome.org/show_bug.cgi?id=759830 (Lighter) https://bugzilla.gnome.org/show_bug.cgi?id=759996 (Dark)
Probably very much too late, and MHO only possibly, but anyway: I think dark (i.e. mostly gray-scale) themes are much harder for the (semi-novice) user to use. I suspect the frequent users navigate on the toolbars geometrically (i.e. they know where the mouse needs to go), while semi-novice users try to locate a specific icon "in the pool". To mee color makes it a big amount easier to locate the correct icon. Thus I'd vote for a colored icon theme for default. Another aspect is "graying-out" icons which are not applicable at the moment (Yes, GIMP doesn't do that yet, I know): You can't make them much grayer than they are already. Yet another idea would be that of Adobe Lightroom: Allow graying out or darken completely the interface elements so that just the image remains visible. Maybe that could be an alternative to a set of dark themes also...