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

Bug 355487

Summary: [ScrolledComposite] The content of ScrolledComposite partially disappears when scrolled programatically
Product: [RT] RAP Reporter: Ivan Furnadjiev <ivan>
Component: RWTAssignee: Project Inbox <rap-inbox>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: P1 CC: tbuschto
Version: 1.5   
Target Milestone: 1.5 M2   
Hardware: All   
OS: All   
Whiteboard:

Description Ivan Furnadjiev CLA 2011-08-23 06:54:09 EDT
When you click on the "+" button in MULTI FileDialog the content of the dialog disappears. The reason for it is the rendering of bound.x and bound.y in case of ScrolledComposite - see WidgetLCAUtil#renderBounds:
....
// TODO [tb] : switch for ScrolledComposite
...
Comment 1 Tim Buschtoens CLA 2011-08-24 06:51:37 EDT
Fixed by moving the check for the parent beeing ScrolledComposite to the client, property-handler for "bounds" in AdapterUtil.js. Its not quite as simple as on the server, since 
a) The parent is set by the scrolledComposite ("setContent") after everything else bas been renderd, so that you cant check for the actual parent until that happend, and 
b) ScrolledComposite is actually not the parent on the client, the ScrolledComposites "clientArea" is, wich is a normal CanvasLayout.

Solved by setting the scrolledComposite as userData in AdapterUtil#setParent. (Which was ported from WidgetUtil#setParent, where the case was originally ignored). Widgets not yet using the protocol are still using the old method where the switch happens on the server and there is no userData set.