Bug 114567 - [launcher] Splash screen support for other image formats
Summary: [launcher] Splash screen support for other image formats
Status: VERIFIED FIXED
Alias: None
Product: Equinox
Classification: Eclipse Project
Component: Launcher (show other bugs)
Version: 3.2   Edit
Hardware: All Windows XP
: P3 enhancement with 8 votes (vote)
Target Milestone: 4.21 M3   Edit
Assignee: Nikita Nemkin CLA
QA Contact: Niraj Modi CLA
URL:
Whiteboard:
Keywords: helpwanted, noteworthy, plan, ui
Depends on: 559865
Blocks: 575452 574014 575455
  Show dependency tree
 
Reported: 2005-11-01 11:58 EST by Daniel M. Schumacher CLA
Modified: 2021-10-31 18:09 EDT (History)
25 users (show)

See Also:


Attachments
Movie 1. Really quick splash (1.01 MB, video/mp4)
2020-09-18 03:57 EDT, Wim Jongman CLA
no flags Details
Movie 2. Embedded in the equinox launcher (1.35 MB, video/mp4)
2020-09-18 03:58 EDT, Wim Jongman CLA
no flags Details
Transparant PNG Splash (3.32 MB, video/mp4)
2020-09-20 15:56 EDT, Wim Jongman CLA
no flags Details
Animated splash screen (1.63 MB, video/mp4)
2020-09-20 15:57 EDT, Wim Jongman CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Daniel M. Schumacher CLA 2005-11-01 11:58:11 EST
Is there any way to get the splash screen to be able to be in jpeg or png 
format in addition to BMP?  In cases where splash screens are translated, 
having one per language can get pretty expensive in terms of file sizes if the 
only option is BMP formatting.
Comment 1 Boris Bokowski CLA 2005-11-01 14:49:56 EST
Moving to SWT since they own the launcher executable.
Comment 2 Steve Northover CLA 2005-11-01 16:50:54 EST
I thought that the .BMP restriction was removed a while ago.  Silenio?
Comment 3 Silenio Quarti CLA 2005-11-02 10:21:37 EST
No, it still has to be a BMP.
Comment 4 Justin Dolezy CLA 2008-10-24 13:07:29 EDT
Will this be sorted out sometime soon? I'd quite like to have a splash with alpha channel transparency...
Comment 5 Andrew Niefer CLA 2008-10-24 14:57:44 EDT
Since 3.3 you can use SWT to modify the splash screen, so you could add transparency then, but the normal bmp will be shown until you get to your java code.

To get formats other than bmp, we need native implementations for all supported windowing systems:
win32/wpf : We would need to use GDI+ or the Windows Imaging Component, I don't know the details and what kind of dependencies this pulls in.

gtk : works now, you just need to point -showsplash at a png file using a full path since the launcher looks for "splash.bmp" by default

carbon: On > 10.4, we use CGImageSourceCreateWithURL, I'm not sure, but this may support png, try an absolute path like for gtk.  On 10.3 this will not work, we use the same code as motif

motif: I have no idea


We don't currently have the resources to do this in 3.5
Comment 6 Justin Dolezy CLA 2008-10-24 15:34:23 EDT
I did try a SplashHandler but couldn't get the transparency to work - the alpha on the PNG I used just showed up black. Any tips appreciated - couldn't find an answer in the newsgroups/google as to what I might be doing wrong.

Also, perhaps a little off topic, but when I didn't specify a splash bmp in the product (this was on XP) the splash handler was not invoked. Is this expected? Having an image with non-transparent areas for a few seconds suddenly become transparent would be a bit weird, no?!

Err just realised I should take my Q's over to the newsgroups... 8)  but the answers would probably be useful to others who find this old bug!
Comment 7 Lars Vogel CLA 2019-05-08 08:37:32 EDT
If think the Linux launch already can do this, Alex please correct me if I'm wrong.

No idea about Windows or Mac. Does anyone know?
Comment 8 Alexander Kurtakov CLA 2019-05-08 08:42:54 EDT
Honestly, I am not sure. I would refer to Sravan as a source of truth here.
Comment 9 Nikita Nemkin CLA 2019-05-09 04:52:08 EDT
(In reply to Lars Vogel from comment #7)
> If think the Linux launch already can do this, Alex please correct me if I'm
> wrong.
> 
> No idea about Windows or Mac. Does anyone know?

I took a look at native launcher code (well hidden in rt.equinox.framework\features\org.eclipse.equinox.executable.feature\library).

Both GTK and Cocoa launchers can use any format supported by the platform (including PNG and JPG). Win32 launcher needs a rewrite of image loading code to be able to use JPG/PNG.

Neither the launcher nor SWT support semi-transparent windows, so loading PNG with an alpha channel is pointless.
Comment 10 Lars Vogel CLA 2019-05-09 04:54:47 EDT
(In reply to Nikita Nemkin from comment #9)

> I took a look at native launcher code (well hidden in
> rt.equinox.framework\features\org.eclipse.equinox.executable.
> feature\library).


Thanks Nikita

> Both GTK and Cocoa launchers can use any format supported by the platform
> (including PNG and JPG). Win32 launcher needs a rewrite of image loading
> code to be able to use JPG/PNG.

Could you help here Nikita?
Comment 11 Nikita Nemkin CLA 2019-05-09 05:02:44 EDT
(In reply to Lars Vogel from comment #10)
> (In reply to Nikita Nemkin from comment #9)
> 
> Thanks Nikita
> 
> > Both GTK and Cocoa launchers can use any format supported by the platform
> > (including PNG and JPG). Win32 launcher needs a rewrite of image loading
> > code to be able to use JPG/PNG.
> 
> Could you help here Nikita?

Yes, the change is pretty simple.
Comment 12 Thomas Watson CLA 2019-05-24 13:36:24 EDT
We are past M3, this will need to wait to next release.
Comment 13 Lars Vogel CLA 2019-06-12 13:27:10 EDT
(In reply to Nikita Nemkin from comment #11)

> > Could you help here Nikita?
> 
> Yes, the change is pretty simple.

Ping
Comment 14 Lars Vogel CLA 2019-07-08 15:56:44 EDT
(In reply to Lars Vogel - Out of Office until 05 August 2019 from comment #13)
> (In reply to Nikita Nemkin from comment #11)
> 
> > > Could you help here Nikita?
> > 
> > Yes, the change is pretty simple.
> 
Any chance for M3?
Comment 15 Thomas Watson CLA 2019-08-19 09:59:23 EDT
Moving out to 4.14 unless
Comment 16 Thomas Watson CLA 2019-08-19 11:03:46 EDT
(In reply to Thomas Watson from comment #15)
> Moving out to 4.14 unless

Hit submit before completing this ...

Moving out to 4.14 unless others have plans to get this done this week for M3.
Comment 17 Thomas Watson CLA 2019-11-14 09:06:21 EST
Dropping milestone until someone agrees commit to work on this.
Comment 18 Lars Vogel CLA 2020-01-24 12:39:10 EST
Nikita, do you still plan to work on this?
Comment 19 Nikita Nemkin CLA 2020-01-24 13:27:44 EST
(In reply to Lars Vogel from comment #18)
> Nikita, do you still plan to work on this?

Sorry, not at the moment. Writing the code isn't the problem, but I hit the wall trying to build it, let alone test it.

Upgrading Launcher build process from Win 2003 SDK to Win 10 SDK would help, but I'm clueless w.r.t. Eclipse build infrastructure.
Comment 20 Lars Vogel CLA 2020-01-24 14:27:01 EST
Thomas, can you comment on the build process and if we can update it?
Comment 21 Sravan Kumar Lakkimsetti CLA 2020-01-27 01:45:47 EST
@Niraj,

Can you please help Nikita with windows build setup? Launcher uses same build setup as SWT.
Comment 22 Lars Vogel CLA 2020-02-05 06:30:20 EST
(In reply to Sravan Kumar Lakkimsetti from comment #21)
> @Niraj,
> 
> Can you please help Nikita with windows build setup? Launcher uses same
> build setup as SWT.

Nirja, any update?
Comment 23 Niraj Modi CLA 2020-02-05 09:34:06 EST
(In reply to Nikita Nemkin from comment #19)
> (In reply to Lars Vogel from comment #18)
> > Nikita, do you still plan to work on this?
> 
> Sorry, not at the moment. Writing the code isn't the problem, but I hit the
> wall trying to build it, let alone test it.
> 
> Upgrading Launcher build process from Win 2003 SDK to Win 10 SDK would help,
> but I'm clueless w.r.t. Eclipse build infrastructure.

Hi Nikita,
On how to upgrade the Launcher build process, please take clues from bug 526802 which was used to track the SWT build upgrade from Win 2003 SDK to Win 10 SDK.
Comment 24 Lars Vogel CLA 2020-02-05 09:38:26 EST
(In reply to Niraj Modi from comment #23)
> (In reply to Nikita Nemkin from comment #19)
> > (In reply to Lars Vogel from comment #18)
> > > Nikita, do you still plan to work on this?
> > 
> > Sorry, not at the moment. Writing the code isn't the problem, but I hit the
> > wall trying to build it, let alone test it.
> > 
> > Upgrading Launcher build process from Win 2003 SDK to Win 10 SDK would help,
> > but I'm clueless w.r.t. Eclipse build infrastructure.
> 
> Hi Nikita,
> On how to upgrade the Launcher build process, please take clues from bug
> 526802 which was used to track the SWT build upgrade from Win 2003 SDK to
> Win 10 SDK.

I created Bug 559865 for this update
Comment 25 Mat Booth CLA 2020-04-09 05:41:24 EDT
I found it extremely surprising that on Windows the splash bitmap must be "Windows 3.x" format and "Windows 95/NT" format does not work.
Comment 26 Lars Vogel CLA 2020-04-09 06:33:39 EDT
(In reply to Mat Booth from comment #25)
> I found it extremely surprising that on Windows the splash bitmap must be
> "Windows 3.x" format and "Windows 95/NT" format does not work.

This bug depends on the update of the build system. See Bug 559865.
Comment 27 Wim Jongman CLA 2020-09-18 03:57:29 EDT
Created attachment 284168 [details]
Movie 1. Really quick splash
Comment 28 Wim Jongman CLA 2020-09-18 03:58:23 EDT
Created attachment 284169 [details]
Movie 2. Embedded in the equinox launcher
Comment 29 Wim Jongman CLA 2020-09-18 04:00:22 EDT
Changing the splash was alway on my to-do list. I often wondered if it was possible to use the "native" java splash function [1]. I was awake early this morning and after my 10k swim (not) I played with this a little bit. 

So far it looks quite easy. First I just added a random splash screen to Eclipse. I have attached this as movie1.mp4. Please note the speed of the splash screen. It is displayed immediately. 

Once the vm is started, you can use the SplashScreen class to get the address of the image and manipulate it. To do this I hacked it into the Main launcher class, just before equinox is loading the eclipse splash.  

See movie2.mp4 for integration into the launcher. I loop inside the equinox launcher for a while for demonstration purposes. That is why it is delaying.

It supports gif, animated gif, png and jpeg format. Unfortunately/Luckily no bmp.

Shall I go forward with this?

[1] https://docs.oracle.com/javase/tutorial/uiswing/misc/splashscreen.html
Comment 30 Matthias Becker CLA 2020-09-18 04:12:44 EDT
(In reply to Wim Jongman from comment #29)
> Changing the splash was alway on my to-do list. I often wondered if it was
> possible to use the "native" java splash function [1]. I was awake early
> this morning and after my 10k swim (not) I played with this a little bit. 
> 
> So far it looks quite easy. First I just added a random splash screen to
> Eclipse. I have attached this as movie1.mp4. Please note the speed of the
> splash screen. It is displayed immediately. 
> 
> Once the vm is started, you can use the SplashScreen class to get the
> address of the image and manipulate it. To do this I hacked it into the Main
> launcher class, just before equinox is loading the eclipse splash.  
> 
> See movie2.mp4 for integration into the launcher. I loop inside the equinox
> launcher for a while for demonstration purposes. That is why it is delaying.
> 
> It supports gif, animated gif, png and jpeg format. Unfortunately/Luckily no
> bmp.
> 
> Shall I go forward with this?
> 
> [1] https://docs.oracle.com/javase/tutorial/uiswing/misc/splashscreen.html

That's cool. Does this then also support high-resolution images?
Comment 31 Wim Jongman CLA 2020-09-18 04:31:36 EDT
> 
> That's cool. Does this then also support high-resolution images?

It does. I found it in the java11 doc of SplasScreen:

 * </PRE>
 * HiDPI scaled image is also supported.
 * Unscaled image name i.e. filename.gif should be passed in
 * {@code manifest.mf}/{@code -splash:} option for all image types irrespective of
 * HiDPI and Non-HiDPI.
 * Following is the naming convention for scaled images.
 * Screen scale 1.25: filename@125pct.gif
 * Screen scale 1.50: filename@150pct.gif
 * Screen scale 2:    filename@200pct.gif and filename@2x.gif both are supported
 * Screen scale 2.50: filename@250pct.gif
 * Screen scale 3:    filename@300pct.gif and filename@3x.gif both are supported
 * The command line interface has higher precedence over the manifest
 * setting.
 * <p>
Comment 32 Matthias Becker CLA 2020-09-18 04:47:42 EDT
(In reply to Wim Jongman from comment #31)
> It does. I found it in the java11 doc of SplasScreen:
> 
>  * </PRE>
>  * Screen scale 2:    filename@200pct.gif and filename@2x.gif both are

the @2x is the same we use in SWT.
Comment 33 Wim Jongman CLA 2020-09-18 05:07:16 EDT
(In reply to Matthias Becker from comment #32)
> (In reply to Wim Jongman from comment #31)
> > It does. I found it in the java11 doc of SplasScreen:
> > 
> >  * </PRE>
> >  * Screen scale 2:    filename@200pct.gif and filename@2x.gif both are
> 
> the @2x is the same we use in SWT.

I will push a preliminary Gerrit so that you can play with it as well.
Comment 34 Eclipse Genie CLA 2020-09-18 05:15:53 EDT
New Gerrit change created: https://git.eclipse.org/r/c/equinox/rt.equinox.framework/+/169562
Comment 35 Wim Jongman CLA 2020-09-18 05:24:25 EDT
(In reply to Eclipse Genie from comment #34)
> New Gerrit change created:
> https://git.eclipse.org/r/c/equinox/rt.equinox.framework/+/169562

There are special launching instructions because the Eclipse Run Configuration launches the -splash after the main class. This must be spec'd before the main class. See Gerrit comments.
Comment 36 Lars Vogel CLA 2020-09-18 05:31:27 EDT
Looks great Wim, does this also allow to delete the native splash code from Equinox?
Comment 37 Wim Jongman CLA 2020-09-18 05:34:03 EDT
(In reply to Lars Vogel from comment #36)
> Looks great Wim, does this also allow to delete the native splash code from
> Equinox?

I forgot to mention that. It probably does. However, I have to study the custom splash handler a bit.
Comment 38 Lars Vogel CLA 2020-09-18 06:00:04 EDT
(In reply to Wim Jongman from comment #37)
> (In reply to Lars Vogel from comment #36)
> > Looks great Wim, does this also allow to delete the native splash code from
> > Equinox?
> 
> I forgot to mention that. It probably does. However, I have to study the
> custom splash handler a bit.

That would be awesome, if I remember discussion correctly, this code is hard to maintain and update.
Comment 39 Wim Jongman CLA 2020-09-20 15:56:54 EDT
Created attachment 284192 [details]
Transparant PNG Splash

I have made some progress with this bug. The JNI bridge that goes into native code to show the splash is removed. Attached two example movies on the cool new splash capabilities. There is a move that uses a 16kb transparent png image, and a movie that uses a whopping 1.2MB animated GIF. 

Java splash works by specifying an image on the startup. This is a bit of a problem for us because our old splash screen is fetched dynamically based on the product/application that is started (at the penalty of ~1 second delay in splash appearance). We also support language variants so that every language has its own splash. 

I solved this by providing a one-pixel transparent png as the initial image. This activates the java SplashScreen logic. During the launch logic, the search for the splash is done as usual and the Java splash can be replaced dynamically. This means that we can keep our current splash screen logic.

Unfortunately, Java does not support BMP. This is a bummer because the existing clients will no longer have a splash. I could work around this by loading the native library when only a BMP was found but this is an ugly hack. We must decide if this is what we want, or find another solution for the BMP issue, for example, to convert the BMP to PNG during build time.

The client can now decide to supply a GIF, PNG, or JPG. The plugin that contains the splash screen is now examined for all variants, in this order.

### Try me
You need to run the latest sdk with the org.eclipse.equinox.launcher plugin as a workspace project. Then get the associated Gerrit change. Inside the main package of the equinox launcher plugin you will find the needed files:


* startscript.txt
This file contains the startup sequence from the command line. You need to look at this and replace the directories with your own directories. If you want to debug you need to make a remote debug run configuration that listens for that port.

* empty.png
This is the initial SplashScreen image that we replace during runtime.

* splash.gif and splash.png
Place these files in the org.eclipse.platform in your SDK plugins directory next to the splash.bmp. If both the GIF and the PNG exist, then the GIF will be loaded. 


## TO DO
The text and the progress bar that are painted on top of our existing splash are not yet implemented. I will look at that if we are still "go".

We need to test on different platforms.  

We need to test if Java likes the URI of the splash image to be in a jar.
Comment 40 Wim Jongman CLA 2020-09-20 15:57:38 EDT
Created attachment 284193 [details]
Animated splash screen
Comment 41 Lars Vogel CLA 2020-11-16 11:15:15 EST
(In reply to Wim Jongman from comment #40)
> Created attachment 284193 [details]
> Animated splash screen

I guess this will not make it into the official 4.18 release?
Comment 42 Wim Jongman CLA 2020-11-16 11:43:15 EST
(In reply to Lars Vogel from comment #41)
> (In reply to Wim Jongman from comment #40)
> > Created attachment 284193 [details]
> > Animated splash screen
> 
> I guess this will not make it into the official 4.18 release?

No, this will be 4.19. I'm still going to fix it, but I have to juggle my contributions outside of my normal job.
Comment 43 Matthias Becker CLA 2021-01-25 02:38:55 EST
(In reply to Wim Jongman from comment #42)
> (In reply to Lars Vogel from comment #41)
> > (In reply to Wim Jongman from comment #40)
> > > Created attachment 284193 [details]
> > > Animated splash screen
> > 
> > I guess this will not make it into the official 4.18 release?
> 
> No, this will be 4.19. I'm still going to fix it, but I have to juggle my
> contributions outside of my normal job.

Any progress here?
Comment 44 Wim Jongman CLA 2021-01-25 09:26:46 EST
(In reply to Matthias Becker from comment #43)

> Any progress here?

I really think we should go through with this, but it is not a one man job. I need someone who wants to dive in there with me.

The current status:

### 1. We can use Java's native splash handling
The good part of this is that we do not need any native code to handle the splashing. The native code can be ditched, which makes maintenance easier and the startup a bit faster (no more loading of this code). I have a working scenario for this in the Gerrit.

### 2. It cannot handle BMP
Isn't it ironic? The only format we support is not supported by Java and we have to find a solution for it. A workaround would be to convert any BMP splash to PNG during product export.

### 3. Change in product workflow
The product configuration (.product file) workflow must be changed. People can now add other image formats. BMP is no longer supported. This requires change in PDE. 

### 4. Startup progress
The current process is now able to overlay a progress bar and text onto the image. Is this something we still want to support? There is support for it in the Java splash handling. The current code that handles the progress is confusing and needs to be rewritten with an IProgressMonitor like strategy.

### 5. Change in boot code
The splash boot code requires that a splash screen is the first argument after the java statement. This is different from the current boot code where this argument is not present. This needs to be figured out (equinox) together with the ditch of the native code.
Comment 45 Matthias Becker CLA 2021-01-27 03:00:12 EST
(In reply to Wim Jongman from comment #44)
> ### 2. It cannot handle BMP
> Isn't it ironic? The only format we support is not supported by Java and we
> have to find a solution for it. A workaround would be to convert any BMP
> splash to PNG during product export.

Isn't this an incompatible change. This would mean that existing product all need to be touched so that they work with new versions of the Eclipse launcher.
Maybe we need to do this in a compatible way (and e.g. keep the old code for the case we still have a BMP splash image).
Comment 46 Wim Jongman CLA 2021-01-27 03:42:32 EST
(In reply to Matthias Becker from comment #45)

> Maybe we need to do this in a compatible way (and e.g. keep the old code for
> the case we still have a BMP splash image).

We should try to avoid that.

When people have a splash, they have a product. When they have a product they need to rebuild it with the new launcher anyway. Either we solve it in the build or at runtime  (e.g. we do a one-time conversion of bmp to png at startup)
Comment 47 Sravan Kumar Lakkimsetti CLA 2021-02-26 04:24:58 EST
Removing the target now.
Comment 48 Lars Vogel CLA 2021-02-26 04:57:47 EST
(In reply to Wim Jongman from comment #44)
> (In reply to Matthias Becker from comment #43)
> 
> > Any progress here?
> 
> I really think we should go through with this, but it is not a one man job.
> I need someone who wants to dive in there with me.
> 
> The current status:
> 
> ### 1. We can use Java's native splash handling
> The good part of this is that we do not need any native code to handle the
> splashing. The native code can be ditched, which makes maintenance easier
> and the startup a bit faster (no more loading of this code). I have a
> working scenario for this in the Gerrit.

Could we make this optional? So if a certain parameter is set, we use the new logic otherwise the old? This would also allow to migrate this smoothly.

> ### 2. It cannot handle BMP
> Isn't it ironic? The only format we support is not supported by Java and we
> have to find a solution for it. A workaround would be to convert any BMP
> splash to PNG during product export.

Haha. I think if go for the switch option that should be dine.

> ### 3. Change in product workflow
> The product configuration (.product file) workflow must be changed. People
> can now add other image formats. BMP is no longer supported. This requires
> change in PDE. 

That will be easy once we have support for it at runtime. I could do this, once the rest is ready.

> ### 4. Startup progress
> The current process is now able to overlay a progress bar and text onto the
> image. Is this something we still want to support? There is support for it
> in the Java splash handling. The current code that handles the progress is
> confusing and needs to be rewritten with an IProgressMonitor like strategy.

I think that is handled by SWT code while the native splash screen "only" loads a static file. I think we can keep that.

> ### 5. Change in boot code
> The splash boot code requires that a splash screen is the first argument
> after the java statement. This is different from the current boot code where
> this argument is not present. This needs to be figured out (equinox)
> together with the ditch of the native code.

This could be the switch.
Comment 49 Niraj Modi CLA 2021-06-15 03:10:11 EDT
(In reply to Nikita Nemkin from comment #19)
> (In reply to Lars Vogel from comment #18)
> > Nikita, do you still plan to work on this?
> 
> Sorry, not at the moment. Writing the code isn't the problem, but I hit the
> wall trying to build it, let alone test it.
> 
> Upgrading Launcher build process from Win 2003 SDK to Win 10 SDK would help,
> but I'm clueless w.r.t. Eclipse build infrastructure.

Hi Nikita/Lars,
With fix for bug 559865 should unblock your work now.
Comment 50 Eclipse Genie CLA 2021-08-12 09:20:21 EDT
New Gerrit change created: https://git.eclipse.org/r/c/equinox/rt.equinox.framework/+/183962
Comment 51 Eclipse Genie CLA 2021-08-12 09:20:32 EDT
New Gerrit change created: https://git.eclipse.org/r/c/equinox/rt.equinox.framework/+/183963
Comment 52 Niraj Modi CLA 2021-08-13 05:28:10 EDT
(In reply to Eclipse Genie from comment #50)
> New Gerrit change created:
> https://git.eclipse.org/r/c/equinox/rt.equinox.framework/+/183962

We are Ok with this patch.

(In reply to Eclipse Genie from comment #51)
> New Gerrit change created:
> https://git.eclipse.org/r/c/equinox/rt.equinox.framework/+/183963

But with this patch we don't see anything breaking but we don't see the expected behavior as well.
Tested with a sample splash.jpg file and launching Eclipse there was no splash.jpg seen.
Comment 56 Thomas Watson CLA 2021-08-13 14:23:25 EDT
(In reply to Sravan Kumar Lakkimsetti from comment #55)
> Launcher has been rebuilt
> https://git.eclipse.org/c/equinox/rt.equinox.framework.git/commit/
> ?id=a433328627eee648bf628dcc317c5d269f9a3bb8

Are we done here, can this be closed?
Comment 57 Sravan Kumar Lakkimsetti CLA 2021-08-17 01:22:35 EDT
Verified on windows with 
Eclipse SDK
Version: 2021-09 (4.21)
Build id: I20210815-1800
OS: Windows 10, v.10.0, x86_64 / win32
Java vendor: AdoptOpenJDK
Java runtime version: 11.0.10+9
Java version: 11.0.10
Comment 58 Sravan Kumar Lakkimsetti CLA 2021-08-17 01:58:17 EDT
Verified on 
Eclipse SDK
Version: 2021-09 (4.21)
Build id: I20210816-1800
OS: Mac OS X, v.10.16, x86_64 / cocoa
Java vendor: AdoptOpenJDK
Java runtime version: 15.0.2+7
Java version: 15.0.2
Comment 59 Sravan Kumar Lakkimsetti CLA 2021-08-17 02:56:49 EDT
Tested on Ubuntu as well
Eclipse SDK
Version: 2021-09 (4.21)
Build id: I20210816-1800

Gif format has issue we are unable to animation or tranparency working. on windows and linux.
Comment 60 Niraj Modi CLA 2021-08-17 03:00:11 EDT
(In reply to Thomas Watson from comment #56)
> (In reply to Sravan Kumar Lakkimsetti from comment #55)
> > Launcher has been rebuilt
> > https://git.eclipse.org/c/equinox/rt.equinox.framework.git/commit/
> > ?id=a433328627eee648bf628dcc317c5d269f9a3bb8
> 
> Are we done here, can this be closed?

Thanks Nikita for the fix, resolving now.
Tested on Win10 with .PNG it works fine.

But with GIF, image was visible but animation & transparency part was missing.
Not sure if I missed something or if it's a bug.
Comment 61 Lars Vogel CLA 2021-08-17 03:24:47 EDT
Thanks, Nikita.

Nikita or Niraj, please add to N&N.
Comment 62 Nikita Nemkin CLA 2021-08-17 03:38:56 EDT
(In reply to Niraj Modi from comment #60)
> 
> Thanks Nikita for the fix, resolving now.
> Tested on Win10 with .PNG it works fine.
> 
> But with GIF, image was visible but animation & transparency part was
> missing.
> Not sure if I missed something or if it's a bug.

I can add transparency, but it will only work on Win8+ and will require a small hack in SWT to make sure progress bar and message stay visible. Did Eclipse drop Win7 officially?

Adding animation seems like a waste of time.
Comment 63 Eclipse Genie CLA 2021-08-17 03:53:40 EDT
New Gerrit change created: https://git.eclipse.org/r/c/www.eclipse.org/eclipse/news/+/184114
Comment 65 Eclipse Genie CLA 2021-08-17 04:17:48 EDT
New Gerrit change created: https://git.eclipse.org/r/c/www.eclipse.org/eclipse/news/+/184116
Comment 67 Niraj Modi CLA 2021-08-17 07:11:52 EDT
(In reply to Nikita Nemkin from comment #62)
> (In reply to Niraj Modi from comment #60)
> > 
> > Thanks Nikita for the fix, resolving now.
> > Tested on Win10 with .PNG it works fine.
> > 
> > But with GIF, image was visible but animation & transparency part was
> > missing.
> > Not sure if I missed something or if it's a bug.
> 
> I can add transparency, but it will only work on Win8+ and will require a
> small hack in SWT to make sure progress bar and message stay visible. Did
> Eclipse drop Win7 officially?

Yes, IIRC we have dropped Win7 officially.
Raised bug 575452 for exploring transparent background images.

> Adding animation seems like a waste of time.
Sure, I tested with animated images only after seeing attachment 284193 [details]
Comment 68 Wim Jongman CLA 2021-08-17 07:26:19 EDT
(In reply to Nikita Nemkin from comment #62)

> 
> Adding animation seems like a waste of time.

That is a personal preference. The same can be said for the progress bar.

If the animation can be run while bootstrapping Eclipse it would be a cool alternative to the boring progress bar.
Comment 69 Niraj Modi CLA 2021-08-17 07:47:40 EDT
(In reply to Wim Jongman from comment #68)
> (In reply to Nikita Nemkin from comment #62)
> 
> > 
> > Adding animation seems like a waste of time.
> 
> That is a personal preference. The same can be said for the progress bar.
> 
> If the animation can be run while bootstrapping Eclipse it would be a cool
> alternative to the boring progress bar.

Seeing the community interest, raised bug 575455 to capture & explore the possibility of animated images.

Hi Nikita: Feel free to pick or you can also share any starting pointers, for anyone to pick and explore. Thanks!
Comment 70 Andreas Buchen CLA 2021-10-31 18:09:34 EDT
(In reply to Niraj Modi from comment #69)
> Seeing the community interest, raised bug 575455 to capture & explore the
> possibility of animated images.

My 2 cents: instead of animated images, first support HiDPI images (tracked with bug 518138) - the application never gets a second chance to make a first impression

Plus: while the Java native splash screen supports HiDPI images, the launcher prevents that the splash is shown (works in PDE, not with the native executable) - see bug 344559.