-
-
Notifications
You must be signed in to change notification settings - Fork 2.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Dark theme #3891
Dark theme #3891
Conversation
Looks nice 👍 |
I like the yellow highlighting. Regarding the group expand /collapse the play icon is not a good choice as it does not indicate the status. In every Tree control you have such an icon. |
Personally, I hate dark themes, but I acknowledge that this is what many users want these days. Offering this theme would certainly be a coolness-boost for JabRef. How do I switch between themes UI-wise? Switching the css files is not what most users would do. Some dialog in the preferences would be cool (but is not a must). |
As you are in fixing some small glitches as well:
|
Base.css: - Introduce explicit colors for hover/select of table. This needs to be adjust for dark theme (-jr-hover-color, -jr-select-color) - Additional color for hovered menu text. No influence on light theme but might be needed in the dark theme -jr-menu-foreground-active - A slightly darker gray for main text - reenabled hover effect for icons - reenabled theme color for tab labels. If required for dark theme lets introduce a separate color for it - fixed tab close button - in light theme we need a visible border for the split pane. Otherwise e.g. main table and preview have no visible border. - removed that a selected entry in table has a different color when the maintable is not focused. - fixed hover highlighting for menu GroupTree.css - the bottom border is not required, but with the search bar in white, we need a visible border to the group tree itself ErrorConsole.css - fixed the style EntryEditor.css - Same color for code area then the rest Entry Editor code area uses the same font color as the rest of the
I made some further changes to the light theme. Biggest discussion point is probably the colored toolbar/menu. If this is white (or very light gray) I find it too boring. @halirutan you changed the hover color for the menu to be the |
- Make separator in groups panel the same as in entry editor and main table - Replace shadow effect on hover by button-like outline - Sightly darker selected and hovered colors - Color toolbar and menu - Make focus outline of text fields consistent
@tobiasdiez We should get the general feedback from all developers to decide the main discussion points. General informationWe have reached a state, where UI colors can easily be adjusted. But there are some general points we need to decide. I admit that I have a strong opinion about most of my design choices which is why I'd like to capture some feedback. We will compare specific points of the two versions of the light theme we have right now: I will ask for feedback on some specific points and give some insight into why I feel my choice is better :) To give feedback, you can use the following Doodle poll If you click an item it means you vote for choice 1. Overall lookWhich version do you prefer?
Toolbar/Menubar coloringThe question is, should the toolbar fit into the rest of the UI or should it stick out by having a color? My vote here is clearly for having it fit into the UI. Color only, where color is necessary because we should aim for an unobtrusive UI. It doesn't mean, that the toolbar must have the same gray-tone as the menubar like in my screenshot. It can stick out by being a bit brighter (which was my initial choice before it was changed in this branch). My argument against the light blue of Tobias version is that it visibly decreases the contrast of the icons. Using a completely different color will make the UI even more inconsistent. Tobi's response: The blue in the above screenshot is only an example. It is easy to choose a combination of toolbar icons and background color that has a high enough contrast. Note that the contrast is also a problem when we use a darker gray as a background.
Group-View BackgroundMy version uses the same bright background color for the group-view that is used in the main-table and in the editor. My argument for this is that no portion of the UI should draw attention to a region when there is no reason for it. The group-view is certainly not more important than the main-table but making it dark, pushes a lot of visual weight to this side panel. Tobi's response: The navigation bar of an application should have a different background than the content to give the a visual hierarchy (I read this somewhere in the UI design guidelines of Microsoft, but cannot find the link right now). In our case, the groups determine what is shown in the main table and thus serve as a navigation. Moreover, all apps I've installed use a different color for the navigation: Spotify, OneNote, Outlook, Sublime,....
Hover and Select colorsI derived these two colors in the following way: The select entry color has the same hue (color value) than the theme color but is brighter and less saturated. The hover color is the select color but even more desaturated, however, it has the same brightness. From the screenshot, you might believe that the hover color creates too less highlighting but when actually using it, this is not the case. The important point here is that I'd like to use the darker select color for hovering over menus and indicate which text-area is selected as well as other things. It gives a consistent look and feel. Opposed to that, I believe the dark theme color that is used in Tobias' version to color the frame of the selected text-area in the Entry Editor is too much. Tobi's response: I'm not really satisfied with the specific color choice in both screenshot. Patrick's is a bit to light for my taste (especially the focused text box in the entry editor, but also the row hover) and mine acknowledged has the problem of too many colors that don't really harmonize.
Group Item IndicatorA small point that is highly discussed. The group item indicator is the little icon that appears in front of each entry in the group view. I don't like the big gray circle. Instead, I like something that helps the user to visually to identify the indentation level. The triangle I used achieves that by being vertical on the left side and giving the user a vertical line to follow. Additionally, it is a bit smaller than the circles. Tobi's response: I agree that the circle might be a bit to large. However, we should choose some icon that is filled enough so that colored icons can easily be distinguished from gray ones. In Patrick's screenshot you have problems noticing the blue icon, while in mine even the lighter green and purple ones are clearly noticeable.
Behavior and consistency of icon buttonsI created a hover effect for all icons to help users identify which things "can be pressed". It works on all icons in the toolbar, entry editor, group view. It even works on the little close "X" for tabs Tobi's response: I don't know how to create a fancy gif but the hover effect I use is taken from Material Design Specs. See here for a working example.. Since the icon really appears as a small button on hover, it makes it clear to the user that this something to click on. Moreover, the same effect can be used for flat text buttons as well. Moreover, I don't like that the dropshadow of Patrick's solutions blurs the icon so much (especially noticeable for the paste icon).
Let's ping some people |
Answered your poll, but I'm not sure about the hover effect. Need to try this out, tho I don't know where I can do this right now. |
Use this branch and go one commit back to ef8c2b0 |
I've added a few remarks above as a response to have a more balanced argumentation in both directions. I also want to add that it is helpful if each developer not only answers the poll but also outlines a few points that he likes and dislikes about each solution. In my opinion, most of these points above are not solved really well in both versions. You can also checkout Patrick's version in the current Let's begin the battle 😄 |
@tobiasdiez and @halirutan : Both of you did a great job, so it was hard to decide. I will give some minor comments below to explain my Doodle Poll choices. Keep in mind that I just decided based on the screenshots, as I currently do not have enough time for proper testing. Furthermore, my decision is solely based on the light theme version. The dark theme looks awesome, but I don't know, whether I would use it during my actual work (maybe yes, maybe not - I really don't know) - anyway, there does not exist a dark version of Patrick's attempt, so I choose to compare just the light themes.
Overall both look great, so I will probably be happy with any of the two approaches. |
I really lke Patricks Version, I am not a big fan of dark themes.
|
|
There is still an odd behavior with the expansion: Xubuntu 16.10 with 2560x1335 (27" screen) First of all, I would expect that as long as I have space, the icons fitting on the screen are displayed: Another little odd behaviour: When I click in the search field, it get's focus and expands a few cm to the right. When I then leave the field, the search bar goes back to its original size, And there is too much space between the icons and the searchbar. The icons should be more closer to the search bar. |
Another issue which should be treated in both themes: |
I made some adjustments that include more prominent select/hover colors, gray group view, and icons additionally change their background when you hover them. I explain a bit further what I did in this video: I won't push it right now, as I had to make changes that will definitely break the dark theme of Tobi. @tobiasdiez I still don't know how I can test your dark theme! Simply using the |
Nice video 😄 Anyway, our UI really looks great compared to what we have right now. This is a huge step! |
Buttons now have a simply hover effect as suggested by Tobi. To make this work consistently, I *did not* use a color for the effect. Instead, simple black (or white for the dark-scheme) is used with a high value of alpha. This works independent of the underlying background by just darkening the area a bit. I removed the second hover color and replaced it by alpha darkening as well. Other small fixes include the toolbar context menu and adjustments to group view and entry editor. Finally, I tried to bring the changes to the dark version.
- Slightly increase size of menu (touch-friendlier) - Make sidebar slightly darker - Color icons as text in the same place would be colored
Thanks @halirutan for the update. I now finished implementing the suggestions and the feedback we got on our two versions. Notably, I changed the sidepane color to a very light gray as suggested by @stefan-kolb and @AEgit. In my opinion this works better than a pure white side bar without being too dark (as my version above was). So, in summary, this version looks really nice in my opinion. For the sake of moving forward, I'll merge this now. Of course, we can improve and change the look and feel in the future again. (For example, I'm not sure if the contrast on the selected row with blue background is good enough; moreover the current icon for the groups is to small to show the color). We also need to add a preference to switch to the dark theme (as remarked by @lenhard), which for the moment is only possible from the command line. I don't have motivation right now to implement this and leave it for a new PR. |
Looks really nice! thumbsup |
Well, it was a light gray before. Now, it is the darkest gray we have in the application and we can no longer distinguish the group header and the entry editor from the contents of the group view. Simply changing the tool-bar color and the group view color to the same value than the menu bar would have solved all issues. It would have given the group view a darker gray and makes it notably different from the headers. But now that it is merged without discussion, I won't fiddle around any longer. |
@halirutan Sorry that I didn't noticed the light gray, but I'm pretty sure that I couldn't distinguish between the sidepane and the maintable in the previous version. Anyway, the reason of why I merge this PR is because its aim was to add a dark theme and
Since this is accomplished now and I got positive feedback on it, I'd merged it. (Similarly, how we merged your recent PR on the subject because it accomplished its goal to use consistent I really enjoyed your feedback - it lead to a huge improvement over all my proposals so far! I'm really happy that you put so much energy and work in the design and hope to see further improvements coming from you in this regard. |
This PR adds a dark theme. Based on the wonderful work of @halirutan, this was really easy and only a handful of colors had to be changed.
The highlight color is taken from the icon that won the design contest last year. In the end, the dark theme is more a Spielerei from my side to test how nicely the JavaFX styling works and I definitely think we should provide a light theme as the default.
The dark theme was also a nice test because it revealed a few 1-px wide borders, shadows and other small stuff. Based on these discoveries, I also changed the light theme a bit. These changes are just a proposal and are open for discussion. In my opinion, the light theme still needs a bit of love until it is finished (e.g. I find the side pane should be colored in a darker color to better distinguish it from the main table and the background color of the header looks a bit "dirty".)