-
-
Notifications
You must be signed in to change notification settings - Fork 69
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
Redesign main lists based on GNOME HIG #190
Comments
i think the bigger problem which should be addressed in the list of the options, is to make some easier navigation. currently, especially if terminal theme set to Manual mode, that list have way too many items to scroll, so i was thinking mb about some Notebook tabs or smth like that do you have any ideas on how to address that kind of problem with the list? |
also i can't understand which style classes should i use to achieve the same appearance as shown on your mockup or in HIG -- when i installed gnome-tweaks (3.30.2) it looks totally different: i only can see in HIG they mentioned as "embedded lists" but i can't see anything related in the apidoc: https://developer.gnome.org/gtk3/stable/GtkListBox.html |
I also had an idea to use tabs or something like that. I'll create a mockup for that.
gnome-tweaks has not adapted that style yet. Please try |
seems it's not gonna work without actual gnome running :(
|
gtk inspector is using such layout but idk how to inspect it with itself |
mb you could just make a screenshot of CSS nodes tree of the appropriate layout (with screenshot of that app itself)? |
thanks! i'll try to play with it tonight or tomorrow morning! |
and also please think about some quick-navigation for the list, like splitting into tabs, or scrolling the list based on stackswitcher buttons or so on |
unfortunately info from CSS Nodes tree is not enough for recreating this :( |
or mb after we'll get some solution for navigating/splitting this long list such design approach (with "white" blocks) won't be applicable anymore so mb better first to design that navigation/splitting into tabs/whatever? |
Unfortunately, the mockup is only available but in real application it has not been applied yet :(
I agree. I'd like to create some mockups, but I don't have much time to do it. Sorry, but I'll address it soon. |
no worries, i also time-limited and apart from GUI redesign i am also doing some other small improvements to the app for example yesterday i've added inhibititing logout/poweroff if there is unsaved themix theme |
Thanks. I've created the mockup for navigating/splitting the long list. Please check it and let me know your thoughts. Here's the options screen of "Image Colors" (maybe "Base16 Options" will also have a similar screen?): Some notes/additional ideas:
|
thanks! regarding Numix Style, that's separation is based on the following logic: Archdroid, Gnome-Colors and Numix-Icons are 3 different plugins, so first dropdown is selecting plugin. Next Numix-Icons have it's own plugin option, called Numix-Style, which at the end passing different arg to numix icons generation script. So if you want to improve, the only thing which can be done here is renaming those items, but they can't be merged together. Mb, "Numix Icons Variant"? |
Also regarding StackSwitcher sections: from technical side of view, i mean the content of plugin's theme_model_extra theme options list |
And also about design for import options (with cog wheel icon): |
Ah, I see. IMHO, "Numix Icons Variant" still sounds a bit ambiguous. I think it would be better to rename it to "Folder Icons Style" (which sounds much clear to me).
I think it would be better to separate the "Terminal" and "Spotify" sections for better handling of the "Export" buttons (#185). Please take a look at the blue "Export" button in my new mockup. In my new idea, pressing the "Export" button while in "Terminal" section will export the terminal palette, and so on.
Ah, right. I agree with it. (The reason why I put it on the rightmost is because I thought that import options seemed quite technical, so it could be hidden on the rightmost for non-expert users.) |
👍
yup, i was thinking of "Theme, Icons, Terminal, Other", especially keeping in mind what in Flatpak installation Spotify plugin is not available at all
the number of export plugins is not limited, so it could became a bit misleading what one plugins are exporting their result implicitly on Export button and other would require explicitly selecting them in the export menu
i think in the minimal scenario it's usually enough to use only import options, without manually modifying any others, since in import options you could choose some of pre-defined theme templates |
Ah, do you mean that the "Desktop Environments" section should be in the "Other" stack? If so, I have no idea why you think that is better... IMO,
So, how about changing the "Export" button label depending on the stack-switcher button? For example, while on the "Terminal" stack, the blue button label will be "Export Terminal". |
in the theme plugin which you linked it's already merged, the line which you're pointing is commented out theme_model_extra was aimed for exports which are not covered by normal Export Theme flow, like at the moment Spotify (but i hope more export plugins will come with the time)
that could be better from the point of clarity though i still think this (#185 (comment)) approach would be more straight-forward and discoverable |
Ah, I only searched for However, I still think it would be better to have to have the "Spotify" stack (etc.) instead of "Other" stack. I think that should be more clear.
Honesty, I'm not a fan of it. It still quite wastes the headerbar width. Also I'd feel strange if there are other "Export (Theme|Icons|Spotify)" buttons while on the "Terminal" stack. |
BTW, I found another app with lists based on HIG. Please try Podcasts. |
i explained what Spotify is just plugin, not part of the app,
could you just for a reference make a screenshot? because in AwesomeWM (with normal window decorations so without titlebar buttons in CSD) it looks quite clean |
thanks, i'll check it tonight |
How about any of these?
I took some screenshots with several themes on GNOME Shell with minimum window size. Adwaita: Materia: Arc (with all window control buttons): Numix (with all window control buttons): On GNOME with minimum window size, "Export Theme" button is almost in the center, and the window title is almost omitted.
Also Numix/Oomox has narrow side padding in |
i want to make less logic in app itself, because it's always better architecture when there is a minimalistic core which provides common API for plugins rather than implementing each case separately looking on the screenshots i think what, given "Export Terminal" is the longest label and what
i was actually fixing it yesterday :-) https://github.com/themix-project/oomox-gtk-theme/compare/5487d169d14a4c0000c3a127ccca68cb3e7210cd...39812f4b499a9416537338908e1f4c56a1bb1148?short_path=0a60202#diff-0a60202ac48d230771cccdf80f55b285 |
I rather moved "Save" etc. to the right, with an opposite idea:
For reference, these GNOME's mockups (todo & notes) are also based on same idea.
If actions are against all the presets in the list (or against list itself), I would have agreed they are on the left... |
after looking on the mockups i see what your proposal totally inline with them however looking on the mockups i see one important difference: also let's keep headerbar discussion inside this thread: #185 |
it's almost a year passed, but unfortunately GTK3 still doesn't have (doesn't have documented?) the widgets or style classes to make such a design for main lists to happen in gnome-tweak-tool and gnome-control-center it seems they just have some custom styling or so (at least that's what i see from gtk inspector) |
Yep, it seems such a design is realized by using For example: (So sorry for my long silence.) |
ok, thanks a lot @nana-4 |
hm, but it seems what the further work would first require me to refactor the theme model as it stored in plugins from being just a list into being some structure what will be split into sections (now section names are just parts of the list together with actual theme values/options) |
sorry for the delay on this issue :) finally got to finish it, please check on this branch: https://github.com/themix-project/oomox/tree/redesign-main-lists |
@actionless My apologies for the late reply...! I tried the branch, it looks very nice! Great job! 👍 I think this is already close to perfection, but I think it would be even better if you could do these things:
And personally I'd still prefer to separate the |
such separators should be defined in GTK theme, not as a border widget (you can see gtk-inspector on the left as an example)
good points, thanks |
Looking at But I don't know if such a method can be applied to this project. So, I'm OK without the separators 👌 |
i see it now in gtk3-widget-factory, that's quite weird what they have the same element styled differently across default apps does they have any HIG part describing it? |
https://developer.gnome.org/hig/stable/lists.html.en
This means you can optionally remove the list separators, I guess? Typically, GNOME apps have separators in list boxes that contain action controls in each row. Lists that don't contain action controls, such as sidebars, usually don't have a separator for each row. The lists in the GtkInspector seems to deviate from the typical design. I think GNOME designers weren't very involved in the design of it... |
after looking on the HIG (which assumes those separators to be smth standard which they are not) i'm even more grounded in the theory which i had yesterday about it :) the theory is what
|
@nana-4 i've tried to implement all of your recommendations, please check on the master branch |
According to my memory and a little search, the default GTK theme had never defined borders for each list row. But now, GTK4 has a boolean GtkListBox:show-separators and the separators are drawn by theme :) |
Looks awesome! Thanks! One remaining issue: Can we avoid using a list for
|
regarding separators, yeah, i know it wasn't released, but just judging from mockups and related HIG -- it seems it was designed to be, but they either tried that locally or realized without trying what it might break things visually. but anyway that was just a lyric sidenote after reading that HIG :) regarding list items it falls under
because programmatically it's just one of theme sections, the same as others below (or above, if in plugin mode) |
OK, that's fine then 👍 |
thanks for your input and feedback! |
Thanks for your great work and feedback too :) |
Mockup:
based on: https://developer.gnome.org/hig/stable/lists.html.en
Some design examples from GNOME's mockup:
The text was updated successfully, but these errors were encountered: