Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 514151

Summary: [Wayland] Migrate X11 calls from launchers to Wayland
Product: [Eclipse Project] Equinox Reporter: Lars Vogel <Lars.Vogel>
Component: LauncherAssignee: Project Inbox <equinox.launcher-inbox>
Status: CLOSED FIXED QA Contact:
Severity: normal    
Priority: P3 CC: akurtako, akurtakov, arunkumar.thondapu, browseria, ipun, jan.public, Lars.Vogel, rolf.theunissen
Version: 4.7.0 Oxygen   
Target Milestone: ---   
Hardware: PC   
OS: Linux   
Whiteboard:

Description Lars Vogel CLA 2017-03-23 22:05:18 EDT
From using the Broadway backend, I learned that starting Eclipse directly via the launchers crashes, as they still contain X11 code. I suggest to migrate these calls also.
Comment 1 Leo Ufimtsev CLA 2017-03-24 12:08:54 EDT
(In reply to Lars Vogel from comment #0)
> From using the Broadway backend, I learned that starting Eclipse directly
> via the launchers crashes, as they still contain X11 code. I suggest to
> migrate these calls also.

+1:

Just a few thoughts:

Last time I looked into the launcher code, I think it's the logic that renders the error messages if Eclipse fails to load that uses X11.

If you just start eclipse and everything works, then I think it doesn't actually use X11.
The X11 calls are dynamic in nature, so I think on Wayland, it could potentially resort to using XWayland for the functionality. (But this is only a theory).

It would be nice to have those calls ported to wayland. As a note, Wayland doesn't support splash screens yet. (Can't seem to find related bug in Gtk bugzilla thou). So the splash screen shows up in the top-left corner as a result.
Comment 2 Alexander Kurtakov CLA 2017-03-24 13:04:57 EDT
(In reply to Leo Ufimtsev from comment #1)
> (In reply to Lars Vogel from comment #0)
> > From using the Broadway backend, I learned that starting Eclipse directly
> > via the launchers crashes, as they still contain X11 code. I suggest to
> > migrate these calls also.
> 
> +1:
> 
> Just a few thoughts:
> 
> Last time I looked into the launcher code, I think it's the logic that
> renders the error messages if Eclipse fails to load that uses X11.
> 
> If you just start eclipse and everything works, then I think it doesn't
> actually use X11.
> The X11 calls are dynamic in nature, so I think on Wayland, it could
> potentially resort to using XWayland for the functionality. (But this is
> only a theory).
> 
> It would be nice to have those calls ported to wayland. As a note, Wayland
> doesn't support splash screens yet. (Can't seem to find related bug in Gtk
> bugzilla thou). So the splash screen shows up in the top-left corner as a
> result.

It's not that simple. There are all the XInternAtom+friends calls which are responsible for openFile handling and etc. which are entirely non-functional under Wayland. This would need to become GtkApplication so we can handle the command line arguments via https://wiki.gnome.org/HowDoI/GtkApplication/CommandLine for GTK 3.
Comment 3 Rolf Theunissen CLA 2018-10-20 11:34:30 EDT
With respect to the SWT/GTK/win32 port, I looked at the launcher code too. The launcher code seems to be generic to launch on the X11 platform, including Motif.

To be able to have a portable launcher on X11, Wayland and win32, the launcher should be ported to use (portable) GTK code only.
Comment 4 Alexander Kurtakov CLA 2019-02-07 09:35:28 EST
Launcher code uses no X calls now and has been rewriten on top of dbus. Closing. Please open new bug with exact function call causing the issue if we missed some.