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

Support Splash Screen in GTK4 #836

Open
jonahgraham opened this issue Feb 5, 2025 · 3 comments
Open

Support Splash Screen in GTK4 #836

jonahgraham opened this issue Feb 5, 2025 · 3 comments

Comments

@jonahgraham
Copy link
Contributor

In #831 we disable the splash screen when running GTK4 because the full support for splash screens in GTK4 is a bigger job.

What I think is needed to maximize compatibility is to apply something similar to what I have done in eclipse-platform/eclipse.platform.swt#1795 for SWT. Build two versions of eclipse_11907.so, one for gtk3 and one for gtk4. e.g. eclipse_####.so and eclipse_gtk4_####.so and load the correct one based on the SWT_GTK4 flag, eventually changing the default to follow SWT.

@laeubi
Copy link
Member

laeubi commented Feb 6, 2025

Sounds like a good approach, this then would maybe even make development easier if we have two distinct code path.

@jonahgraham
Copy link
Contributor Author

Originally posted by @laeubi in #833 (comment)

@jonahgraham thanks for working on this, I think we have even one more case here:

If the application crash (e.g. exit with an exception in the main, JDK can not be loaded and so on) the the launcher shows a popup (see option --launcher.suppressErrors) I suspect this is using GTK too and would need a similar guard.

I was thinking that eclipse executable would still use GTK3 for error messages (for as long as we support GTK3 anyway). In particular at least the errors that prevent executable from finding/loading the library should be displayed to users. As long as we don't try to use gtk3 + gtk4 in the same process we should be ok.

@akurtakov
Copy link
Member

What I remember from gtk3 and 2 support at the same time is that it was a matter of few ifs which was cheaper than having 2 different so files and figuring them. IMO the decision which path to take should be taken after having gtk 4 implementation so the "easier" maintenance option is taken.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants