Details
- 
        Type:
 Bug
            
         - 
        Status: Closed
 - 
            Priority:
 Major
                
             - 
            Resolution: Fixed
 - 
            Affects Version/s: 3.0
 - 
            Fix Version/s: EE-3.0.0.BETA, 3.0.1
 - 
            Component/s: None
 - 
            Labels:None
 - 
            Environment:supported browsers
 
Description
                    In "compat" component-showcase after navigating to inputRichText test and reloading the page, every time a CKEditor dialog popup is used there are two overlays rendered but only one is removed after the dialog is closed.
            
Activity
| Repository | Revision | Date | User | Message | 
| ICEsoft Public SVN Repository | #27915 | Fri Feb 17 09:07:35 MST 2012 | mircea.toma |      | 
| Files Changed | ||||
            					
			 
                            MODIFY
            				/icefaces3/trunk/icefaces/core/src/main/java/org/icefaces/impl/event/BridgeSetup.java
            
             | 
| Repository | Revision | Date | User | Message | 
| ICEsoft Public SVN Repository | #27916 | Fri Feb 17 09:08:25 MST 2012 | mircea.toma |      | 
| Files Changed | ||||
            					
			 
                            MODIFY
            				/icefaces3/branches/icefaces-3.0.x-maintenance/icefaces/core/src/main/java/org/icefaces/impl/event/BridgeSetup.java
            
             | 
| Field | Original Value | New Value | 
|---|---|---|
| Status | Open [ 1 ] | Resolved [ 5 ] | 
| Resolution | Fixed [ 1 ] | 
| Summary | Modal overlay not removed after closing CKEditor dialog popup | Modal overlay not removed after closing CKEditor dialog popup (ice:inputRichText resources loading twice) | 
| Salesforce Case | [] | |
| Fix Version/s | 3.1 [ 10312 ] | 
| Fix Version/s | EE-3.0.0.BETA [ 10324 ] | 
| Status | Resolved [ 5 ] | Closed [ 6 ] | 

It looks like ckeditor.js resource is loaded twice and this causes the issue. See also:
http://dev.ckeditor.com/ticket/7588
http://cksource.com/forums/viewtopic.php?t=21460
The issue is caused by the mandatory resource code we have in BridgeSetup. When the page is reloaded the inputRichText resources are first added by JSF, normally our mandatory resource feature verifies if any of the resources it needs to add are already added. In this case though it was failing because JSF in its API represents the 'library' name of the resource with an "" empty string and sometimes with the null value.
The fix just normalizes the values before comparing them. As a result now the previous resources are matched correctly and the mandatory code stops adding the resource a second time.