Bug 372523 - [Workbench] Rework Workbench startup so it doesn't use LegacyIDE.e4xmi
Summary: [Workbench] Rework Workbench startup so it doesn't use LegacyIDE.e4xmi
Status: RESOLVED WONTFIX
Alias: None
Product: Platform
Classification: Eclipse Project
Component: UI (show other bugs)
Version: 4.2   Edit
Hardware: All All
: P3 major (vote)
Target Milestone: ---   Edit
Assignee: Platform UI Triaged CLA
QA Contact:
URL:
Whiteboard:
Keywords:
: 340030 (view as bug list)
Depends on:
Blocks:
 
Reported: 2012-02-24 12:03 EST by Brian de Alwis CLA
Modified: 2018-11-21 10:49 EST (History)
4 users (show)

See Also:


Attachments
Patch to org.eclipse.ui.workbench/LegacyIDE.e4xmi (4.19 KB, application/octet-stream)
2012-02-24 12:03 EST, Brian de Alwis CLA
no flags Details
Patch to platform/eclipse.platform.git products and toss org.eclipse.platform's LegacyIDE.e4xmi (6.35 KB, patch)
2012-02-24 20:03 EST, Brian de Alwis CLA
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Brian de Alwis CLA 2012-02-24 12:03:46 EST
Created attachment 211589 [details]
Patch to org.eclipse.ui.workbench/LegacyIDE.e4xmi

LegacyIDE.e4xmi has some cruft that should be cleared out.  Considering this is default for all RCP apps, this should be a minimal example.  The cruft bleeds through:

  * The window title in the default LegacyIDE.e4xmi shows "Eclipse SDK 4.0".  But seeing as this file will be included and used by most RCP apps, pending resolution of bug 366110, we should just have this blank.

  * The "Exit", "Save", and "Save All" appear in the Preferences > Keys under the "Application Category", with no apparent binding.  They can be invoked with their shortcut, if not overridden, as well as through the Quick Access view in the IDE.

  * The keybindings use CONTROL rather than M1, so Ctrl-Q on MacOS X quits using the configured ExitHandler (which just closes the workbench), rather than the configured exit handler.

The attached patch does the following:

  * Removes the label from the window
  * Properly identifies the exit command as org.eclipse.ui.file.exit
  * Binds org.eclipse.ui.file.exit to M1+Q
  * Gets rid of the following commands: e4.show.view, org.eclipse.e4.ui.saveCommands, org.eclipse.e4.ui.saveAllCommands 

And as I can't seem to find any references to org.eclipse.platform/LegacyIDE.e4xmi, we should also get rid of the copy in org.eclipse.platform and just use the copy in org.eclipse.ui.workbench.
Comment 1 Remy Suen CLA 2012-02-24 14:17:26 EST
(In reply to comment #0)
> And as I can't seem to find any references to
> org.eclipse.platform/LegacyIDE.e4xmi, we should also get rid of the copy in
> org.eclipse.platform and just use the copy in org.eclipse.ui.workbench.

That's what the SDK uses to launch I believe.
Comment 2 Brian de Alwis CLA 2012-02-24 15:04:54 EST
*** Bug 340030 has been marked as a duplicate of this bug. ***
Comment 3 Brian de Alwis CLA 2012-02-24 20:03:23 EST
Created attachment 211617 [details]
Patch to platform/eclipse.platform.git products and toss org.eclipse.platform's LegacyIDE.e4xmi

(In reply to comment #1)
> (In reply to comment #0)
> > And as I can't seem to find any references to
> > org.eclipse.platform/LegacyIDE.e4xmi, we should also get rid of the copy in
> > org.eclipse.platform and just use the copy in org.eclipse.ui.workbench.
> 
> That's what the SDK uses to launch I believe.

I'm *sure* I grepped for the string in the platform/eclipse-platform.git repository.  Sheesh.

I'm not missing something here am I?  There's no reason that we needed LegacyIDE.e4xmi in both .ui.workbench and .platform, is there?
Comment 4 Paul Webster CLA 2012-02-27 09:00:17 EST
(In reply to comment #3)
> 
> I'm not missing something here am I?  There's no reason that we needed
> LegacyIDE.e4xmi in both .ui.workbench and .platform, is there?

In Eclipse 4, the application/product is expected to provide the application model, and for the Eclipse Platform that's org.eclipse.platform.  For Eclipse SDK, it's org.eclipse.sdk but that expects to pick up most of its information from org.eclipse.platform.  So LegacyIDE.e4xmi is in org.eclipse.platform.

The one in org.eclipse.ui.workbench was added because 3.x RCP apps didn't get one by default, so it was a last ditch fall back for the RCP Mail app, for example.

But I think our current approach is a wrong approach in general for the 4.2 Workbench.  We should in the end get rid of the XMIs, as the 4.2 Workbench really is responsible for creating the entire model for the Eclipse4 application to then render.

PW
Comment 5 Paul Elder CLA 2013-11-05 13:49:31 EST
Note that the fix for bug 411602 removed all the commands, command categories and key bindings form LegacyIDE.e4xmi.
Comment 6 Lars Vogel CLA 2016-04-20 12:18:42 EDT
Mass move to 4.7 as M7 is approaching. Please move back in case you are planning to fix it for Neon.
Comment 7 Dani Megert CLA 2018-05-24 13:01:31 EDT
Moving target milestone to 4.9 for all bugs that are major or above.
Comment 8 Lars Vogel CLA 2018-11-21 10:49:34 EST
Please reopen if you plan to work on this.