Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>I had this same issue and it is a z-index issue (firebug shows this to be the case). The list for the combo is not contained within the window's div, and therefore the window's z-index changes do not cascade to the list view. Regardless, I didn't notice the window updating its z-index everytime I showed it, but subsequent windows that were opened would receive a higher z-index. This is when I received the problem, opening multiple windows. </p> <p>In my case I have extended Ext.Window and used that extension everywhere, so I simply placed a "beforeshow" listener on my extension inside its initComponent, like so:</p> <pre><code> initComponent: function(){ ... // I put the listener as the last line this.on("beforeshow", this.fixComboDropdowns, this); }, /** * When opening multiple windows within an application, combo box list values' zIndex * can become out-of-sync and cause the list to not show its values. This * method is to help prevent that from occurring. */ fixComboDropdowns: function(win){ try{ var zIndex = parseInt(win.getEl().getStyle("z-index")); // retrieve the combo boxes contained in this window. // call each combo boxes' getListParent() method, and set the list parent's zindex. var combos = win.findByType("combo"); if(combos &amp;&amp; combos.length &gt; 0){ if(WINDOW_ZINDEX === 0 || WINDOW_ZINDEX &lt; zIndex){ WINDOW_ZINDEX = zIndex + 100; } else{ WINDOW_ZINDEX = WINDOW_ZINDEX + 100; } for(var index = 0; index &lt; combos.length; index = index + 1){ // set each combo's z-index style: var combo = combos[index]; var listEl = combos[index].getListParent(); if(listEl &amp;&amp; listEl.style){ listEl.style.zIndex = WINDOW_ZINDEX + 10; // make sure the combo's list will display. } } } }catch(ex){ if(console){ console.error(ex); } } return true; } </code></pre> <p>Oh, don't forget to define the global WINDOW_ZINDEX variable like so: var WINDOW_ZINDEX = 0;</p> <p>I'm sure the above code can be refined, but you get the general idea. Some items I haven't been able to verify: 1). What if the popup window is setting focus on a field? Does the above remove that focus?</p> <p>If you don't have an override for Ext.Window, then consider using the factory pattern, where you can create the Ext.Window, and then place the "beforeshow" listener on it before returning it back to the caller.</p> <p>If the factory pattern is not an option, then consider placing an interceptor on the Ext.Window's beforeShow method, or override it. </p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. VO
      singulars
      1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload