Thank you for reporting this bug. We will make it our priority to review this report.
  1. #1
    Sencha User
    Join Date
    Mar 2011
    Posts
    17
    Vote Rating
    0
    Peter Prikryl is on a distinguished road

      0  

    Default setLoading on component that was not rendered yet

    setLoading on component that was not rendered yet


    When I call setLoading on a component that was not rendered yet (e.g. new panel in tabpanel), the loading mask is not shown. Also after the component was rendered, the loading mask is not centered.

    I could use workarounds to handle these situations, but I believe this should be handled in the ExtJS and not in the application.

    Steps and code to reproduce the issue follows:
    1. press the button "setLoading(true)" before clicking on the second tab
    2. switch to the second tab, note that no loading mask is visible
    3. switch back to the first tab and press the same button again
    4. switch to the second tab, note that loading mask is not centered

    Code:
    Ext.onReady(function() {
        var viewport = Ext.widget('viewport', {
            layout: 'fit',
            items: [{
                xtype: 'tabpanel',
                items: [{
                    id: 'panel1',
                    title: 'panel1',
                    layout: 'fit',
                    tbar: [{
                        xtype: 'button',
                        text: 'setLoading(true)',
                        handler: function() {
                            Ext.getCmp('panel2').setLoading(true);
                        }
                    }, {
                        xtype: 'button',
                        text: 'setLoading(false)',
                        handler: function() {
                            Ext.getCmp('panel2').setLoading(false);
                        }
                    }]
                }, {
                    id: 'panel2',
                    title: 'panel2',
                    layout: 'fit',
                    items: {
                        html: 'content2'
                    },
                    listeners: {
                        added: function() {
                            this.setLoading(true);
                        }
                    }
                }]
            }]
        });
    });

  2. #2
    Sencha User
    Join Date
    Jun 2008
    Posts
    294
    Vote Rating
    16
    Qtx will become famous soon enough

      0  

    Default


    I have reported this issue also.

    http://www.sencha.com/forum/showthre...sitioned-wrong

    I solved this by doing setLoading in afterrender of the viewport. The problem is because of that the child panel are rendered before the viewport. Viewport is the last one and when it is ready, all is ready.

Thread Participants: 1