It's no wonder every Eclipse installation gets lumped together! Both Standard and SDK distributions claim they are all part of one "Eclipse" application. If you use SWT and don't call that API then SWT tells Windows your applications are all part of one big "SWT" application.Įclipse's default isn't any better. One change from that was to the SWT API tAppName(String), which now controlled which application's jump lists other APIs refer to, as well as taskbar icon grouping. See bug 293226 comment 9 for a starting point if you want to dig into the history. The call was introduced to support jump lists in Windows 7, but the support for them was never polished and finished. The rest of the bug is all about Windows doing exactly what Eclipse asks it to do. It would've been weird for such win32 API method to be included and then not used anywhere, wouldn't it be? And it turns out it is called. Thanks to SetCurrentProcessExplicitAppUserModelID method being pointed out I've figured out what caused this regression so many years ago. Either the check needs to be duplicated where the splash screen is created or moved to there. Then there's a couple of cases:Ĭase 1, workspace not chosen: not a problem, use a random number in its place.Ĭase 2, workspace set and not in use: this is the normal case, no further action required.Ĭase 3, workspace in use: workspace selection dialog and presumably the in-use-check happen after splash screen is displayed, this won't work. Where is that created? And what is eclipse.exe's effect here?Ģ) To function properly, the generated AppUserModelID should be based on both the installation folder and workspace folder, a combination of their hash codes should be sufficient. The remaining open issues are at least:ġ) The function has to be called before any UI is shown at all, that presumably includes the splash screen. Quick test with a random SWT snippet shows it working and preventing multiple launched processes from being grouped. Public static final native int SetCurrentProcessExplicitAppUserModelID (char AppID) I was surprised to find that class .win32.OS from plugin 32.win32.x86_64_3.102.1.v20130827-2048.jar already has the required function: Then I have to start it again, and it works fine. "Using the jvm.dll via JNI instead does not have any disadvantages"Īctually, as soon as I start using jvm.dll eclipse crashes at the splash screen when restarting after installing updates/new features. Arguably the workaround in this case makes the situation worse it's no longer possible to tell at a glance which Eclipse is running if both use the same icon. Workarounds that pin a running Eclipse instance icon to Taskbar don't prevent another Eclipse installation from combining its running icon with the pinned icon. Aero Peek shows the splash screen and workbench side-by-side briefly when the workbench launches. The icon activates, then stays active, as expected. As above, except the new active icon is combined with the icon Indigo added.ģ. The icon activates, shows a progress bar, then deactivates when a new active icon is added to the Taskbar when the workbench is displayed.Ģ. Pin Indigo, Galileo and Helios to Taskbar by right-clicking each eclipse.exe, then selecting Pin to Taskbar.ġ. Tested with 3 Eclipse installations running at the same time: my regular Indigo, a fresh Galileo (eclipse-java-galileo-SR2-win32.zip), a fresh Helios (eclipse-java-helios-win32.zip). Still hoping there will be a fix that is applied so I don't have to edit the config file every time a new version of Java is installed. This seemed to resolve my issue along with adding the -vm option to the eclipse.ini file. > suggestions? Is there a plan to correct this as I have not had this problem inĪfter some further reading I pulled Eclipse out of a directory with spaces in the name. > I am running Windows 7 Ultimate 64 Bit and Eclipse 3.6.0. > here, including the registry tweak, and none have fixed this. I've tried various combinations of all of the suggestions > corresponding path all of the same is true, but I am able to right-click and > Eclipse launches and I see the icon quickly disappear in the taskbar and a new I have tried all of the suggestions in this thread and none have worked.
0 Comments
Leave a Reply. |
Details
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |