15 Mar 2011 10:18 AM #1
[FNR] Problems with RowLayout
I believe it's a bug because it started after upgrade from GXT 2.1.1 to 2.2.3.
I'm having a layout problem with this combination of components (the indentation indicates parent/child relationship):
Window (FitLayout) ContentPanel (RowLayout and a ToolBar as top component) ContentPanel (any layout, RowData(1, -1) to use components height) Grid (RowData(1, 1) to fill space left in the parent panel
I didn't test using another components.
I'm sending three attachments.
1. The window screenshot in version 2.1.1
2. Same window screenshot in version 2.2.3
3. A sample code to reproduce the problem.
Nothing was changed in my code, except GXT version, and from that upgrade the problem started.
Executing in host mode
Google Chrome 8.0.552.237
I apologise if I'm wrong. Thanx.
15 Mar 2011 10:22 AM #2
21 Mar 2011 12:35 PM #3
21 Mar 2011 10:37 PM #4
Try to call layout(true) after showing the window
22 Mar 2011 3:55 AM #5
I did it by adding a WindowListener to the window and it worked. But seems to me this is just a workaround, not an actual fix, since I will have to add an WindowListener to all my windows using RowLayout.
First, is this the only solution?
Second, is this I reported a real bug?
Should I expect for a correction or use this workaround from now on?
22 Mar 2011 7:29 AM #6
I agree, this is annoying..
10 Apr 2011 7:06 PM #7
This affects every RowLayout we have in a window (and we have many).
I upgraded from 2.1.3 to 2.2.3 and RowLayout fails to work. It is caused by the rev 2183. You can replace the RowLayout class with a version in 2.1 or 2.1.3.
As this breaks our application layout I'm going to raise it via support.
10 Apr 2011 11:50 PM #8
14 Apr 2011 3:36 PM #9
So the support response so far is that this change was made due to "a bug with hidden items". (I don't know what that bug is, or what it's impact is).
The suggested solutions are:
1: Call layout(true) on the window after showing it
2: Roll back to the old version of RowLayout (be aware of the "hidden" bug)
3: Override the window class show() method to call this.layout(true) at the end.
I really think this bug should be addressed as it has compromised the Rowlayout should work.
Update: Sencha told me the "hidden items fix" was done because "The row layout did not always size the the panels in the rowlayout correctly if some of them where hidden."
Also option 1 and 3 above may cause so performance issues it you have complex windows.
15 Apr 2011 4:10 AM #10
Did they give you some indication that this bug will be solved in future releases? I don't think it's nice to be forcedto apply a workaround everytime I need to use RowLayout, unless they say "this is it".
By vladcd in forum Ext 3.x: Help & DiscussionReplies: 8Last Post: 23 Apr 2010, 7:04 AM
By jsknight in forum Ext 3.x: Help & DiscussionReplies: 6Last Post: 3 Mar 2010, 1:42 AM
By zeroed in forum Ext 2.x: Help & DiscussionReplies: 3Last Post: 27 May 2009, 3:18 AM
By mangrar in forum Ext 2.x: User Extensions and PluginsReplies: 2Last Post: 19 Feb 2008, 4:26 AM