Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 284700

Summary: [IAD] Layout Extensions are read coincidentally
Product: [RT] RAP Reporter: Holger Staudacher <holger.staudacher>
Component: WorkbenchAssignee: Project Inbox <rap-inbox>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: P3    
Version: 1.3   
Target Milestone: 1.3 M2   
Hardware: All   
OS: All   
Whiteboard:
Bug Depends on: 287576    
Bug Blocks:    
Attachments:
Description Flags
new Overriding behavior none

Description Holger Staudacher CLA 2009-07-27 04:41:37 EDT
With the interactiondesign API you have the possibility to define Layouts and override different Layouts/LayoutSets with the extension point org.eclipse.rap.ui.layouts. But the extensions to this point are read coincidentally. So it's possible that an overridden LayoutSet doesn't replace the original.

Possible solutions:
a) Extend the org.eclipse.rap.ui.layouts ext point and mark the original Layout as the original, i.e. with a flag.
b) Decide which one is the original with the children count.
c) Define a LayoutSet to mark a Layout as the original, i.e. the LayoutSet org.eclipse.rap.layout.original is only contributed by the original Layout.
Comment 1 Holger Staudacher CLA 2009-08-25 11:43:42 EDT
Created attachment 145556 [details]
new Overriding behavior

The attached patch contains changes at the layout ext point. A new attributed was introduced called "overrides" which expect an ID of an existing layoutset. Additional it contains changes at org.eclipse.rap.example to demonstrate the overriding and at the LayoutRegistry which does not more generate hybrid layouts because this is not longer necessary.
Comment 2 Holger Staudacher CLA 2009-08-31 09:40:18 EDT
Fixed and committed to CVS HEAD.