IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
|
|
|
|
| 279 | 279 | // have support for it, so we reproduce it here, other |
| 280 | 280 | // than firing the selection change event. |
| 281 | 281 | |
| 282 | | var savedRange, |
| | 282 | var savedBookmark, |
| 283 | 283 | saveEnabled, |
| 284 | 284 | restoreEnabled = 1; |
| 285 | 285 | |
| … |
… |
|
| 294 | 294 | return; |
| 295 | 295 | |
| 296 | 296 | // Give the priority to locked selection since it probably |
| 297 | | // reflects the actual situation, besides locked selection |
| 298 | | // could be interfered because of text nodes normalizing. |
| 299 | | // (#6083, #6987) |
| | 297 | // reflects the actual situation. (#6083, #6987) |
| 300 | 298 | var lockedSelection = doc.getCustomData( 'cke_locked_selection' ); |
| 301 | 299 | if ( lockedSelection ) |
| 302 | 300 | { |
| … |
… |
|
| 305 | 303 | } |
| 306 | 304 | // Then check ff we have saved a range, restore it at this |
| 307 | 305 | // point. |
| 308 | | else if ( savedRange && restoreEnabled ) |
| | 306 | else if ( savedBookmark && restoreEnabled ) |
| 309 | 307 | { |
| | 308 | var range = doc.getSelection().getNative().createRange(); |
| | 309 | range.moveToBookmark( savedBookmark ); |
| 310 | 310 | // Well not break because of this. |
| 311 | | try { savedRange.select(); } catch (e) {} |
| 312 | | savedRange = null; |
| | 311 | try { range.select(); } catch (e) {} |
| | 312 | savedBookmark = null; |
| 313 | 313 | } |
| 314 | 314 | }); |
| 315 | 315 | |
| … |
… |
|
| 532 | 532 | return; |
| 533 | 533 | } |
| 534 | 534 | |
| 535 | | savedRange = nativeSel && sel.getRanges()[ 0 ]; |
| | 535 | // Create an IE Range bookmark to defeat possible text node normalization. |
| | 536 | try { savedBookmark = nativeSel && nativeSel.createRange().getBookmark(); } |
| | 537 | catch(er){} |
| 536 | 538 | |
| 537 | 539 | checkSelectionChangeTimeout.call( editor ); |
| 538 | 540 | } |