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

Start: First start widget #13650

Merged
merged 4 commits into from Apr 29, 2024
Merged

Start: First start widget #13650

merged 4 commits into from Apr 29, 2024

Conversation

chennes
Copy link
Member

@chennes chennes commented Apr 25, 2024

This adds a basic "first start" screen to the Start command:
FirstStartScreenshot

Once you've clicked "Done" on it, it will not reappear (unless you delete your config, or the controlling variable). Right now it is activating the "Classic", "Light", and "Dark" themes (via preference pack). IMO we should eventually replace those with one of the recently-created themes by @obelisk79 or @MisterMakerNL, which are more reliable and better-crafted.

Medium-term plans for this include testing the inclusion of a "layout" selector in addition to the theme selector, but that is predicated on the development of some layout preference packs first.

Note that all selectors are "live" and take effect immediately. The language one doesn't look like it's doing that because all the strings in Start are brand new, so we have no translations for them (yet).

@github-actions github-actions bot added the Core Issue or PR touches core sections (App, Gui, Base) of FreeCAD label Apr 25, 2024
@MisterMakerNL
Copy link
Contributor

Qt 6.5 has a build in dark theme, if this PR makes it possible to use that i'd say we should try that.
https://www.qt.io/blog/dark-mode-on-windows-11-with-qt-6.5
I'm working on a stylesheet that does exactly that but without the need of QT 6.5.
I also see a lot of work being done on OpenTheme probably for Ondsel. So it's a free ride to go with that.
But I also still think themes belong in the addon browsers, since you don't get discussions here about looks and esthetics. Also since addons can be updated without the need to update Freecad, it's a lot more easy to keep it up to date.

@chennes
Copy link
Member Author

chennes commented Apr 25, 2024

We have a couple of different options for how to include themes with FreeCAD: it is definitely true that themes are best left as Addons, that gives the most flexibility to theme authors to update them on their own schedule, outside the main FreeCAD release cycle. That said, IMO we should ship with at least a basic light and dark theme, either by directly including it in the FreeCAD source tree, by using git submodules, or by just shipping with the appropriate addon pre-installed.

@obelisk79
Copy link

I also see a lot of work being done on OpenTheme probably for Ondsel.

Just to be clear, Ondsel uses my themes. They aren't sponsoring it, or funding its development in any way that I've been made aware of. They just choose to include it in their package by default.

@chennes regardless which themes are included, I think it would be wise to have it set as a pre-installed addon so bugs and changes can be made irrespective of the regular release cycle.

@MisterMakerNL
Copy link
Contributor

MisterMakerNL commented Apr 26, 2024

Pre-installed addon is a good idea didn't even think about it. Lets do that?

@furgo16
Copy link
Contributor

furgo16 commented Apr 26, 2024

Does unticking "Show this view when starting FreeCAD" hide only the "Welcome to FreeCAD" block on subsequent new starts, or the whole Start page?

If it's the first case, should the checkbox not be inside the "Welcome to FreeCAD" block?

If it's the second case, I would argue that it's still useful to be able to show the Start page to experienced users who use the "Recent files" or "Examples" blocks in the page. However, they would not generally be using the "Welcome to FreeCAD" block and might be additional clutter to them.

@FEA-eng
Copy link
Contributor

FEA-eng commented Apr 26, 2024

Here I suggested using the new OpenThemes by @obelisk79 in the package and maybe even making one of them the new default but this First Start widget could just include them as Light and Dark options: https://forum.freecad.org/viewtopic.php?t=87002&start=20#p754918

@MisterMakerNL
Copy link
Contributor

MisterMakerNL commented Apr 26, 2024

The whole point of this first start widget is that there won't be a default anymore.
The included stylesheets should just be there to offer the basic needs to work with the program and to spot any bugs.
They can offer a template to build other stylesheets off.
Adding Opentheme as an addon, and probably Prodark and behaveDark and such is in my view a great way to empower others to develop theme's without them needing to do all the paperwork for an included theme.
It is even better when Ondsel does the same if they also install theme's true addons then we all have the same theme's.
Really great idea doing it this way.
Something like this:
image

@wwmayer
Copy link
Contributor

wwmayer commented Apr 26, 2024

About UI/UX of the Start page have a look at the forum thread: https://forum.freecad.org/viewtopic.php?t=87135

@FEA-eng
Copy link
Contributor

FEA-eng commented Apr 26, 2024

Most users will just want to have a good-looking modern theme available right away without having to install add-ons or modify the themes themselves. It can be either a new default theme or, as discussed here and IMO a good way, a set of built-in themes. I'm just suggesting the use of the new OpenThemes for that instead or in addition to the old Light and Dark theme.

I think that 1.0 is a good moment to refresh the FreeCAD's theme(s).

@MisterMakerNL
Copy link
Contributor

MisterMakerNL commented Apr 26, 2024

I also think that we should move the included stylesheets to an addon.
Just that we should keep 1 light and 1 dark included.
I wouldn't even mind these 2 are not presented in the first start widget.
Or we can change it around with:
"Use these Community developed themes, or use the default theme's included."
I don't want to decide for other what they want.
The point of main in my opinion is to offer a stable basis to build/work from.
The point of the addons is to pimp the hell out of your basis.

Like if you got UI issues and you want to check if it's the stylesheet then you can switch to build-in stuff.

@adrianinsaval
Copy link
Member

Should we consider a tabbed or multi page layout for the startpage? or a generally more compact UI?

@chennes
Copy link
Member Author

chennes commented Apr 26, 2024

Does unticking "Show this view when starting FreeCAD" hide only the "Welcome to FreeCAD" block on subsequent new starts, or the whole Start page?

No, that pre-dates the "First Start" thing. I couldn't find a good place for it where it was clear that it affected the entire Start screen, not just "First Start". I agree that the current placement is awkward (and I believe @wwmayer at least would prefer the button's logic be inverted).

@chennes
Copy link
Member Author

chennes commented Apr 26, 2024

Should we consider a tabbed or multi page layout for the startpage? or a generally more compact UI?

Now that the technical framework is in place, I think the @FreeCAD/design-working-group can begin determining what features to keep and what to retain from the previous start model. I didn't bother with a tabbed interface in this first version because the tabs on the old one all led to web-based content. Now that's no longer feasible (or desirable, IMO), Start is reduced to a sort of "minimal form".

@wwmayer
Copy link
Contributor

wwmayer commented Apr 26, 2024

and I believe @wwmayer at least would prefer the button's logic be inverted

That's one of the points of the critiques I posted. And yes, usually there is the option "Don't show me again" that is switched off by default

@chennes
Copy link
Member Author

chennes commented Apr 26, 2024

That's one of the points of the critiques I posted. And yes, usually there is the option "Don't show me again" that is switched off by default

I will make that change a part of this PR, then, unless you've got some work-in-progress that includes it already.

@wwmayer
Copy link
Contributor

wwmayer commented Apr 26, 2024

For the moment I don't work on the Start page.

chennes and others added 4 commits April 28, 2024 12:56
Somewhere in the test suite GTest is including cmath (or something related) and not declaring this, so later includes of it by the tests are being ignored.
@sliptonic sliptonic merged commit 6807920 into FreeCAD:main Apr 29, 2024
9 checks passed
@adrianinsaval
Copy link
Member

The whole point of this first start widget is that there won't be a default anymore. The included stylesheets should just be there to offer the basic needs to work with the program and to spot any bugs. They can offer a template to build other stylesheets off. Adding Opentheme as an addon, and probably Prodark and behaveDark and such is in my view a great way to empower others to develop theme's without them needing to do all the paperwork for an included theme. It is even better when Ondsel does the same if they also install theme's true addons then we all have the same theme's. Really great idea doing it this way. Something like this: image

offering more than 3 themes in the startpage is overkill, I'd wager even offering the old look there is overkill

@MisterMakerNL
Copy link
Contributor

Just offering 2 styles is easy.
The issue is no-stylesheet which default too XP style on windows and too system style on Linux.
One option, 2 different results depending on OS. On windows it's probably best too not show this option. On linux it's probably the most used option.... Ondsel targets windows users I guess and decided to not use it anymore?
Do we want to do the same? No more OS style?

@adrianinsaval
Copy link
Member

I used to prefer using the system theme on linux too, but nowadays is not that good to do, overlays look like shit, gradients on the task dialog are awful, backgrounds and other preference based colors don't match. It just not worth it anymore now that we have higher quality dark and light themes

@krushia
Copy link

krushia commented Apr 30, 2024

This offers no way to revert changes if you click something. Also, it isn't obvious that you can make it "go away" if you're already satisfied with existing settings.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Core Issue or PR touches core sections (App, Gui, Base) of FreeCAD
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

9 participants