[239] | 1 | /*
|
---|
| 2 | Copyright (c) 2003-2011, CKSource - Frederico Knabben. All rights reserved.
|
---|
| 3 | For licensing, see LICENSE.html or http://ckeditor.com/license
|
---|
| 4 | */
|
---|
| 5 |
|
---|
| 6 | /**
|
---|
| 7 | * @fileOverview API initialization code.
|
---|
| 8 | */
|
---|
| 9 |
|
---|
| 10 | (function()
|
---|
| 11 | {
|
---|
| 12 | // Disable HC detaction in WebKit. (#5429)
|
---|
| 13 | if ( CKEDITOR.env.webkit )
|
---|
| 14 | {
|
---|
| 15 | CKEDITOR.env.hc = false;
|
---|
| 16 | return;
|
---|
| 17 | }
|
---|
| 18 |
|
---|
| 19 | // Check whether high contrast is active by creating a colored border.
|
---|
| 20 | var hcDetect = CKEDITOR.dom.element.createFromHtml(
|
---|
| 21 | '<div style="width:0px;height:0px;position:absolute;left:-10000px;' +
|
---|
| 22 | 'border: 1px solid;border-color: red blue;"></div>', CKEDITOR.document );
|
---|
| 23 |
|
---|
| 24 | hcDetect.appendTo( CKEDITOR.document.getHead() );
|
---|
| 25 |
|
---|
| 26 | // Update CKEDITOR.env.
|
---|
| 27 | // Catch exception needed sometimes for FF. (#4230)
|
---|
| 28 | try
|
---|
| 29 | {
|
---|
| 30 | CKEDITOR.env.hc = hcDetect.getComputedStyle( 'border-top-color' ) == hcDetect.getComputedStyle( 'border-right-color' );
|
---|
| 31 | }
|
---|
| 32 | catch (e)
|
---|
| 33 | {
|
---|
| 34 | CKEDITOR.env.hc = false;
|
---|
| 35 | }
|
---|
| 36 |
|
---|
| 37 | if ( CKEDITOR.env.hc )
|
---|
| 38 | CKEDITOR.env.cssClass += ' cke_hc';
|
---|
| 39 |
|
---|
| 40 | hcDetect.remove();
|
---|
| 41 | })();
|
---|
| 42 |
|
---|
| 43 | // Load core plugins.
|
---|
| 44 | CKEDITOR.plugins.load( CKEDITOR.config.corePlugins.split( ',' ), function()
|
---|
| 45 | {
|
---|
| 46 | CKEDITOR.status = 'loaded';
|
---|
| 47 | CKEDITOR.fire( 'loaded' );
|
---|
| 48 |
|
---|
| 49 | // Process all instances created by the "basic" implementation.
|
---|
| 50 | var pending = CKEDITOR._.pending;
|
---|
| 51 | if ( pending )
|
---|
| 52 | {
|
---|
| 53 | delete CKEDITOR._.pending;
|
---|
| 54 |
|
---|
| 55 | for ( var i = 0 ; i < pending.length ; i++ )
|
---|
| 56 | CKEDITOR.add( pending[ i ] );
|
---|
| 57 | }
|
---|
| 58 | });
|
---|
| 59 |
|
---|
| 60 | // Needed for IE6 to not request image (HTTP 200 or 304) for every CSS background. (#6187)
|
---|
| 61 | if ( CKEDITOR.env.ie )
|
---|
| 62 | {
|
---|
| 63 | // Remove IE mouse flickering on IE6 because of background images.
|
---|
| 64 | try
|
---|
| 65 | {
|
---|
| 66 | document.execCommand( 'BackgroundImageCache', false, true );
|
---|
| 67 | }
|
---|
| 68 | catch (e)
|
---|
| 69 | {
|
---|
| 70 | // We have been reported about loading problems caused by the above
|
---|
| 71 | // line. For safety, let's just ignore errors.
|
---|
| 72 | }
|
---|
| 73 | }
|
---|
| 74 |
|
---|
| 75 | /**
|
---|
| 76 | * Indicates that CKEditor is running on a High Contrast environment.
|
---|
| 77 | * @name CKEDITOR.env.hc
|
---|
| 78 | * @example
|
---|
| 79 | * if ( CKEDITOR.env.hc )
|
---|
| 80 | * alert( 'You're running on High Contrast mode. The editor interface will get adapted to provide you a better experience.' );
|
---|
| 81 | */
|
---|
| 82 |
|
---|
| 83 | /**
|
---|
| 84 | * Fired when a CKEDITOR core object is fully loaded and ready for interaction.
|
---|
| 85 | * @name CKEDITOR#loaded
|
---|
| 86 | * @event
|
---|
| 87 | */
|
---|