Bug 550986 - [regression] EGit context menu contributions missing in PDE
editor for MANIFEST.MF or plugin.xml

The fix for bug 549818 broke the multi-page editors context menus in
case there are multiple editors trying to register popup menus with same
id's. The reason is that each PopupMenuExtender created for each page in
such an editor uses this.modelPart =
part.getSite().getService(MPart.class); which resolves to the *same*
model for *different* child editors. e4 layer doesn't provide different
models for child editors inside multi-page editor, so all child editors
re-use same "modelPart" object and so only the first editor will get
popup menus created.

To fix that, provide optional popup extender model id that will be used
to distinguish different menu contributions using same menu id. So every
child editor will get "his" dedicated "menuModel" and "his" popup menus
created.

Change-Id: Idaa26c5526e0e02296883f20655124c24a2c7129
Signed-off-by: Andrey Loskutov <loskutov@gmx.de>
2 files changed
tree: fedecc348b5044ae9c47bf9c22eeff743b9b6bf3
  1. .mvn/
  2. bundles/
  3. examples/
  4. features/
  5. releng/
  6. tests/
  7. .gitignore
  8. CONTRIBUTING
  9. CONTRIBUTING.md
  10. LICENSE
  11. NOTICE
  12. pom.xml
  13. README.md
README.md

Contributing to Eclipse Platform UI project

Thanks for your interest in this project.

Project description:

Platform UI provides the basic building blocks for user interfaces built with Eclipse.

Some of these form the Eclipse Rich Client Platform (RCP) and can be used for arbitrary rich client applications, while others are specific to the Eclipse IDE. The Platform UI codebase is built on top of the Eclipse Standard Widget Toolkit (SWT), which is developed as an independent project.

Website: http://www.eclipse.org/platform/ui/

For more information, refer to the Platform UI wiki page.

How to contribute:

Contributions to Platform UI are most welcome. There are many ways to contribute, from entering high quality bug reports, to contributing code or documentation changes. For a complete guide, see the Platform UI - How to contribute wiki page page on the team wiki.

Test dependencies

Several test plug-ins have a dependency to the Mockito and Hamcrest library. Please install them from the Orbit Download page

Currently the following versions are required:

  • org.hamcrest;bundle-version=“1.3.0”,
  • org.mockito;bundle-version=“2.13”,

How to build on the command line

You need Maven 3.3.1 installed. After this you can run the build via the following command:

mvn clean verify -Pbuild-individual-bundles

Developer resources:

Information regarding source code management, builds, coding standards, and more.

Contributor License Agreement:

Before your contribution can be accepted by the project, you need to create and electronically sign the Eclipse Foundation Contributor License Agreement (CLA).

Search for bugs:

This project uses Bugzilla to track ongoing development and issues.

Create a new bug:

Be sure to search for existing bugs before you create another one. Remember that contributions are always welcome!

Contact:

Contact the project developers via the project's “dev” list.

License

Eclipse Public License (EPL) 2.0