Search code examples
javascriptfirefoxextjsdialogextjs6-modern

extjs modern NS_ERROR_NOT_AVAILABLE on dialog show()


I am getting NS_ERROR_NOT_AVAILABLE exception on firefox 60.0.2 on dialog.show() of a custom dialog. After debugging I ended up that the exception is being produced on line 85351 of ext-modern-all-debug.js: value = computedStyle.getPropertyValue(name); where the property name is opacity and it is not available inside computedStyle.

[Exception... "Component is not available" nsresult: "0x80040111 (NS_ERROR_NOT_AVAILABLE)" location: "JS frame :: debugger eval code :: <TOP_LEVEL> :: line 1" data: no]

Dialog Show Code:

var thisObj = this;

        var wnd = Ext.create('myApp.view.desktop.something.CustomWindow',{

            onButtonSubmitClick: function(){
                thisObj.doSomething();
                this.close();
            }

        });

        wnd.show();

ExtJS Debug Function:

getCssStyleValue: function(name, value) {
    var testElement = this.getTestElement(),
        computedStyle = this.testElementComputedStyle,
        style = testElement.style;
    style.setProperty(name, value);
    if (Ext.browser.is.Firefox) {

        testElement.offsetHeight;
    }
    value = computedStyle.getPropertyValue(name);
    style.removeProperty(name);
    return value;
}

Does this bug has to do with this mozilla bug?

Any workarounds?


Solution

  • I don't know exactly why, but animations were generating this bug. After i set the animations on my dialog to:

    hideAnimation: null,
    maximizeAnimation: null,
    restoreAnimation: null,
    showAnimation: null
    

    Everything worked fine.

    I hope my answer will help someone with the same issue.