Community
Participate
Working Groups
I have a PageProvider which provides: * A single overview page O, which is configured to REPLACE the default page: @Override public Optional<String> getLocationId() { return Optional.of(DefaultSessionEditorPage.PAGE_ID); } @Override public Optional<PositioningKind> getPositioning() { return Optional.of(PositioningKind.REPLACE); } * Multiple additional pages P1 to Pn, each with a unique id, but which are all configured to be AFTER "O", with no specific constraint on their own relative ordering. In other words, all of P1 to Pn have: @Override public Optional<String> getLocationId() { return Optional.of(OVERVIEW_ID); } @Override public Optional<PositioningKind> getPositioning() { return Optional.of(PositioningKind.AFTER); } Expected result: an editor with the Overview page in first position, and then all of P1 to Pn after, in no particular order. Actual result: I get the Overview page, which correctly replaces the default one, but then only one of P1 to Pn is visible. If I change the overview page to be PositioningKind.AFTER the default one instead of replacing it, the result is correct. Looking at the code, the problem seems to be in oes.ui.editor.internal.pages.PageOrderer.linkAllPageRoot(List<PagePositioning>, Set<PagePositioning>). Before it is called from getOrderedPages, pagePositioningElements correctly references all the pages (default, O, P1 to Pn), but after the call, the resulting newPageOrdered only contains O and one of the Px pages.
New Gerrit change created: https://git.eclipse.org/r/103458
Is it possible that you attach a plug-in that provides the pages? Ideally it is required for homologation and it would be better that we do not rely only on a future junit test to ensure the fix is working.
Gerrit change https://git.eclipse.org/r/103458 was merged to [master]. Commit: http://git.eclipse.org/c/sirius/org.eclipse.sirius.git/commit/?id=9bcbb696c78837ddc6ed9516e05b2781630298b6
Fixed by 9bcbb696c78837ddc6ed9516e05b2781630298b6.
Can not be verified: missing or incomplete reproduction information.
Verified using Sirius 5.1.0rc1 on the original code where I detected the bug. The code in question concerns the integration of Amalgam's Activity Explorer pages into the aird editor, but it's too complex to extract as simple steps to reproduce.
Available in Sirius 5.1.0, see https://wiki.eclipse.org/Sirius/5.1.0.