Hello,
I got a sporadic issue that at random (it seems) points in time does not draw the Pane in a tab upon selecting the tab.
Using:
SmartClient Version: SC_SNAPSHOT-2011-11-10/PowerEdition Deployment (built 2011-11-10)
Happens in all browsers at random points in time.
My app consists of a TabSet, and upon tab selection the view set on the tab (via setPane) is instantiated and, upon tab deselection, the view is destroyed.
This happens by a handler as follows (all tabs in the tabset have this handler registered):
Again, mostly it works, I can switch between tabs and the correct view is rendered in the tab pane.
Yet sometimes it does not work, not drawing the view, and it gives me the following warnings in the developer console (deployed mode, tomcat 6):
In the Watch tab of dev console, it says 'Drawn' to be 'No', on the PuzzelRichTableView_1
Am I doing something fundamentally wrong as far as programming goes, or is this something else? I would like to know in which direction to look to figure out what causes this.
I have not had the opportunity to spot this bug on IE, (to get a better stacktrace?). Here is the one from Dev console in FF 7
I got a sporadic issue that at random (it seems) points in time does not draw the Pane in a tab upon selecting the tab.
Using:
SmartClient Version: SC_SNAPSHOT-2011-11-10/PowerEdition Deployment (built 2011-11-10)
Happens in all browsers at random points in time.
My app consists of a TabSet, and upon tab selection the view set on the tab (via setPane) is instantiated and, upon tab deselection, the view is destroyed.
This happens by a handler as follows (all tabs in the tabset have this handler registered):
Code:
protected class SytTabSelectedHandler implements TabSelectedHandler, TabDeselectedHandler { private int initCounter = 0; private static final int PUZZELRICHTABLEVIEW = 1; private static final int MERCHANTRICHTABLEVIEW = 2; //..other views private Map<Integer, Integer> overviewsMap = new HashMap<Integer, Integer>(); public SytTabSelectedHandler() { overviewsMap.put(0, PUZZELRICHTABLEVIEW); overviewsMap.put(1, MERCHANTRICHTABLEVIEW); //.. other views } public void onTabSelected(TabSelectedEvent event) { int selectedView = overviewsMap.get(event.getTabNum()); renderCorrectView(selectedView, event.getTab()); } protected void renderCorrectView(int selectedView, Tab tab) { Canvas curView = null; switch (selectedView) { case PUZZELRICHTABLEVIEW : //instantiate PuzzelRichTableView, and set as pane in the tab. curView = new PuzzelRichTableView(userDetails); break; // ... snipped the other views. But if PUZZELRICHTABLEVIEW tab is selected, instantiate this view. default : Log.error("This shouldn't be happening, the TabNum is not corresponding to a view!"); break; } tab.setPane(curView); } public void onTabDeselected(TabDeselectedEvent event) { //destroy the view to clear up memory Canvas c = event.getTabPane(); c.destroy(); event.getTab().setPane(null); } }
Yet sometimes it does not work, not drawing the view, and it gives me the following warnings in the developer console (deployed mode, tomcat 6):
Code:
11:07:09.054:SCR4:WARN:Log:ResultSet.findNextIndex called with no cached local data. Calling code can use ResultSet.lengthIsKnown() to determine whether the ResultSet has loaded any data. 11:07:09.054:SCR4:WARN:ResultSet:isc_ResultSet_10 (created by: isc_PuzzelRichTableView_1_1):getRange() called with no specified range - ignoring. 11:10:56.522:TMR5:WARN:drawing:isc_PuzzelRichTableView_1:draw() called on widget with current drawn state: handleDrawn, ignoring.
Am I doing something fundamentally wrong as far as programming goes, or is this something else? I would like to know in which direction to look to figure out what causes this.
I have not had the opportunity to spot this bug on IE, (to get a better stacktrace?). Here is the one from Dev console in FF 7
Code:
12:00:38.477:TMR1:WARN:drawing:isc_PuzzelRichTableView_1:draw() called on widget with current drawn state: handleDrawn, ignoring. Class.getStackTrace(_1=>undef, _2=>undef, _3=>undef, _4=>undef) Canvas.readyToDraw() Canvas.draw(_1=>undef) Layout.layoutChildren(_1=>"resized", _2=>-15, _3=>-15) Canvas.$t1() Canvas.moveBy(_1=>0, _2=>0, _3=>undef, _4=>true) Canvas.moveTo(_1=>0, _2=>23, _3=>undef, _4=>true) Canvas.setRect(_1=>0, _2=>23, _3=>1265, _4=>531, _5=>undef) TabSet.fixLayout() TabSet.$54m() [o]TabBar.childResized([Canvas ID:isc_TabSet_0_tabBar_baseLine], -15, 0, undef) Canvas.$5y(deltaX=>-15, deltaY=>0, reason=>undef) ** recursed on Canvas.$t1
Comment