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

Bug 332524

Summary: [Table][Tree] Merge Tree and Table client implementation
Product: [RT] RAP Reporter: Tim Buschtoens <tbuschto>
Component: RWTAssignee: Project Inbox <rap-inbox>
Status: RESOLVED FIXED QA Contact:
Severity: enhancement    
Priority: P3 CC: Istvan.Ballok, rsternberg, tbuschto
Version: 1.4   
Target Milestone: 1.5 M1   
Hardware: All   
OS: All   
Whiteboard:
Bug Depends on: 320597, 336362, 342978    
Bug Blocks: 306377, 311169, 327542    

Description Tim Buschtoens CLA 2010-12-14 09:28:01 EST
The Tree can do pretty much everything the Table can. Using the same client-implementation for both would make the client thinner and more easily maintanable.

It would automatically fix this bug:
Bug 241924 - [table] Selection using shift and cursor keys not possible

It MIGHT also automatically fix these bugs:
Bug 326941 - [Table] js-error "item is undefined" when setting visibility false
Bug 311837 - [Table] Hover state not reset on mouseout
Bug 324759 - [Table] Content cut off 1px at the bottom
Bug 315426 - Table gridlines missing in IE upon view tab selection
Bug 276051 - [Table] Wrong selection behavior with Shift-click on empty selection
Bug 306377 - [Table] Selection occasionally doubled when scrolling fast
Bug 234103 - [Table] #showItem() does not work when called before Shell bounds are set 

It might also help fix these bugs:
Bug 233614 - [Table] Column texts initially truncated
Bug 311169 - [Table] Support Gradient for TableItem
Bug 313291 - [Table] slow relayouting when the visible area is large
Comment 1 Tim Buschtoens CLA 2011-02-01 05:52:45 EST
*** Bug 335169 has been marked as a duplicate of this bug. ***
Comment 2 Tim Buschtoens CLA 2011-04-07 05:38:28 EDT
Just speculating, but List could also (at one point) be merged into this. List itself is rather small, but is the only widget to use the relatively big SelectionManager.js. On the other hand, this would also mean List would use virtual scrolling, which is not as smooth as the current "real" scrolling.
Comment 3 Tim Buschtoens CLA 2011-05-17 11:47:59 EDT
Commited some preparations into CVS HEAD.
Basically i created a new Widget from Tree called TreeRowContainer, which will later be used in Table. Also some minor adjustment of the client Table API to make it more compatible with Tree.
Comment 4 Tim Buschtoens CLA 2011-06-09 10:03:55 EDT
Fixed in CVS HEAD. Old Table.js, TableItem.js and TableRow.js have been removed.