Skip to content
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

Add built-in option to change title bar buttons #308

Open
1280px opened this issue May 25, 2022 · 7 comments
Open

Add built-in option to change title bar buttons #308

1280px opened this issue May 25, 2022 · 7 comments
Labels
Needs Design Waiting on input or designs from the UX team Priority: Wishlist

Comments

@1280px
Copy link
Contributor

1280px commented May 25, 2022

Problem

For many users, default window buttons location can be confusing because of their previous experience on Windows or macOS.

Proposal

Some beginner-friendly distros, like ZorinOS or Ubuntu Budgie (as other distros with Budgie being a default DE as well) provide an option to change window title bar buttons location to the left or right in settings:

ZorinOS appearance settings
Ubuntu Budgie desktop settings

And I think elementary OS should adopt this approach: use the current window buttons layout by default, but provide an easy-accessible option to change it to one used on Windows or macOS. This will be very helpful for people who have already used computer in the past, but starting to use elementary OS just now.

Sure, there are some third-party tools and config editors that allow to do the same (if not more), but the regular user likely won't even know how to use them.

Prior Art (Optional)

The concept is based on a little older switchboard UI, as the last interface change uses more vertical space, which makes it look too stretched with a new option added. I tried to make the new option's UX as intuitive as possible: there are 3 options, with the label containing the name of the most common OS where this one is present, and a picture of how it will look like.

Idea 1 — add the option below style settings. Personally, I prefer this one
Idea 2 — add the option above style settings. This one is a little more aggressive, IMO the first one is better

UPD

Out of interest, I also made this kind-of-a survey on r/elementaryos (available at https://redd.it/uyatio/). Despite it is still ongoing, the current results show that more than 2/3 of participants use non-default window title buttons!

What I didn't expected though is the one more option (default WITH minimize icon) is popular as well, so perhaps there should be 4 options for most popular cases. I made a few newer concept arts for this, and also made the selection buttons a little more compact.

Idea 1 with new window buttons option added
Idea 2 with new window buttons option added

UPD 2

The survey is now finished, and by its results only 33% of voters use default elementary layout, so implementing this option makes even more sense, as for now there's no any built-in tools to select one of the most popular custom layouts via GUI. The visualization of the results available is at https://ibb.co/hBJM47Z

@lenemter lenemter added the Needs Design Waiting on input or designs from the UX team label Aug 9, 2022
@lenemter lenemter added this to OS 8 Oct 23, 2023
@lenemter lenemter moved this to Needs Discussion in OS 8 Oct 23, 2023
@kerunaru
Copy link

I find this really cool! I always found annoying to hit cmd + H to minimize an application.

@1280px
Copy link
Contributor Author

1280px commented Jan 3, 2024

To be honest, I created this (and a few other) suggestions as kind of "goals" for when I was learning GTK/Vala (which I stopped, at least for now)... I decided to leave them intact, as most of them are pretty reasonable.

As of this suggestion, I see a flaw in it now:
If a user wants to set buttons style not in the list (i.e., nowadays I prefer having just minimize button instead of maximize (which can be done by double-clicking the title bar)), they're out of luck, and still will have to use 3rd-party software.

The simpliest solution for this would be to make 3 dropdowns, one for each button, with 3 states (disabled, shown on left, shown on right), and follow Windows-like pattern for right side and macOS-like pattern for left side:
ebtn1_full_final.png
Sure, this will not cover some very unique cases (i.e. macOS layout vs old Ubuntu layout), but the absolute majority of layouts (including all from the survey above) will be possible.

Out of more fancy ways, KDE might be a good example of a user-friendly implementation of this... though I'm not sure if it's even possible to implement with Granite, at least I can't think of easy ways to do it.

@danirabbit danirabbit changed the title [suggestion] Add built-in option to change title bar buttons Add built-in option to change title bar buttons Mar 28, 2024
@danirabbit
Copy link
Member

I'm really -1 on this. Pantheon doesn't really support a concept of minimize and I don't think we should. Other major desktops like GNOME have also dropped minimize and modern operating systems like iOS don't implement minimize either. Pantheon is workspace based and all the design work we've done towards the new dock, app backgrounding, etc supports that premise.

I also don't think it makes sense to pass off design decisions about where buttons go to users. Reddit is not a representative sample, you've selected specifically for people who are more likely to theme and mod. A more convincing argument here would be if there was some supporting evidence that shows that people are failing to close or maximize applications or that people are accidentally triggering close or maximize actions when they don't mean to and then looking at why that happens and how we can help them succeed.

@danirabbit danirabbit removed this from OS 8 Mar 28, 2024
@jlnr
Copy link
Member

jlnr commented May 1, 2024

"Minimizing" windows visually makes sense on macOS or with oldschool Windows taskbar layouts where windows shrink into the dock/task bar. elementary OS doesn't have that, but it has cmd+H to "Hide" windows, and I don't feel that it clashes with the rest of Pantheon. Would it make sense to have an optional titlebar button for that, in addition to the keyboard shortcut? (If yes, then it probably needs a different icon than the down-arrow in the mockups.)

Disclaimer: I haven't had a chance to try OS 8 yet.

@MarkJelic
Copy link

I find it really confusing to NOT have a minimise/hide button, and then somewhat cumbersome to have to click on the icon in the Dock to make the window go away.

If this isn't going to be implemented, can someone please point me to something I can install to make these appear? I htink the OP did a great job on mocking this option up, too.

@ud-ux-thomas
Copy link

I tried elementary for a while, to see if it would be a good fit to offer to older folks in my community. I've been reformatting Windows 10 computers with Linux and they get by just fine. The inconsistent window management button placement is a hurdle for many users. It doesn't feel familiar to them and some applications provide their own buttons. I love what Elementary is doing, but I feel we do need to offer features to help this OS "feel familiar" to what they've been using. They don't care that Gnome has no love for minimizing applications. This is a part of some users workflows for years. So for now I'm setting people up with Pop_OS... while waiting to see if Elementary 8 will have this sort of customization option built in. I'm also hoping for good screen reader support and other accessibility options, but that's a topic for another day.

@ud-ux-thomas
Copy link

I just noticed that the document title for the site is "The thoughtful, capable, and ethical replacement for Windows and macOS ⋅ elementary OS"... so if our goal is to be able to replace peoples' Windows and Mac experiences, we should be able put the window management buttons in a place that is familiar to them.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Needs Design Waiting on input or designs from the UX team Priority: Wishlist
Projects
None yet
Development

No branches or pull requests

7 participants