- Timestamp:
- 03/10/10 17:32:28 (2 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Xul_Wsp/content/scenariWsp/windows/itemSelector/selItem.js
r15068 r15089 208 208 fController : {}, 209 209 210 /** @Api Desk avec contenus. Enregistre tout ce qui est dirty concernant le wsp pCdWsp ou210 /** @Api Desks avec ContentViewController. Enregistre tout ce qui est dirty concernant le wsp pCdWsp ou 211 211 * tout wsp confondu si pCdWsp n'est pas renseigné. 212 212 */ … … 216 216 217 217 /** 218 * @Api Desks avec contenus. Permet d'accéder à une uri quelconque.218 * @Api Desks avec ContentViewController. Permet d'accéder à une uri quelconque. 219 219 */ 220 220 openRefUri : function(pRefUri, pOptions) { 221 try { 222 if(!pRefUri) return; 223 if(! src.isSrcId(pRefUri)) desk.getController("ContentViewController").openSrcUri(pRefUri, pOptions); 224 else { 225 function cbGetSrcUri(pShortDesc, pCdError) { 226 if(pShortDesc) desk.getController("ContentViewController").openSrcUri(pShortDesc.srcUri, pOptions); 221 if(!pRefUri) return; 222 //Si l'appel vient d'une autre frame (mainview), les appels asynchrones qui seront effectués pour 223 //effectuer cet openRefUri peuvent échouer alléatoirement dû à des GC effectués dans l'autre frame. 224 //Le passage par un timer permet de réassocier les objets qui seront créés à cette frame. 225 //Bug peut-etre lié à notre utilisation de l'ancien mode de sécurité (xpcnativewrappers=no dans 226 //les manifests chrome). A réévaluer quand on aurra purgé xpcnativewrappers=no. 227 system.setTimer({notify:function(pTimer){ 228 try { 229 if(! src.isSrcId(pRefUri)) desk.getController("ContentViewController").openSrcUri(pRefUri, pOptions); 230 else { 231 function cbGetSrcUri(pShortDesc, pCdError) { 232 if(pShortDesc) desk.getController("ContentViewController").openSrcUri(pShortDesc.srcUri, pOptions); 233 } 234 var vUriObjectWsp = new UriObjectWsp(this.getWsp().getCode(), this.getWsp().getDataProvider()); 235 vUriObjectWsp.loadShortDesc(pRefUri, cbGetSrcUri); 227 236 } 228 var vUriObjectWsp = new UriObjectWsp(this.getWsp().getCode(), this.getWsp().getDataProvider()); 229 vUriObjectWsp.loadShortDesc(pRefUri, cbGetSrcUri); 230 } 231 }catch(e){log.debug("desk.openRefUri failed for '"+pRefUri+"': "+e);} 237 }catch(e){log.debug("desk.openRefUri failed for '"+pRefUri+"': "+e);} 238 }}, 0); 232 239 }, 233 240 … … 286 293 287 294 /** 288 * Transfert une requete vers la ContentView courante.295 * @Api Desks avec ContentViewController. Transfert une requete vers la ContentView courante. 289 296 * 290 297 * @param pKeepIfViewUnvailable Si true et si la view n'est pas encore chargée, la requête sera placée en attente.
Note: See TracChangeset
for help on using the changeset viewer.