Ticket #3209: 3209.patch

File 3209.patch, 31.2 KB (added by Frederico Caldeira Knabben, 10 years ago)
  • _samples/ui_languages.html

     
     1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
     2<!--
     3Copyright (c) 2003-2009, CKSource - Frederico Knabben. All rights reserved.
     4For licensing, see LICENSE.html or http://ckeditor.com/license
     5-->
     6<html xmlns="http://www.w3.org/1999/xhtml">
     7<head>
     8        <title>User Interface Globalization - CKEditor Sample</title>
     9        <script type="text/javascript" src="sample.js"></script>
     10        <script id="headscript" type="text/javascript">
     11        //<![CDATA[
     12
     13        document.write( '<script type="text/javascript" src="../_source/lang/_languages.js"><\/script>' );
     14
     15        //]]>
     16        </script>
     17</head>
     18<body>
     19        <div id="html">
     20                <form action="sample_posteddata.php" method="post">
     21                        <p>
     22                                <label for="editor1">
     23                                        Available languages (<span id="count">&nbsp;</span>
     24                                        languages!):</label><br />
     25                                <select id="languages" onchange="createEditor( this.value );" disabled="disabled">
     26                                        <script type="text/javascript">
     27                                        //<![CDATA[
     28
     29                                                // Get the language list from the _languages.js file.
     30                                                for ( var i = 0 ; i < CKEDITOR_LANGS.length ; i++ )
     31                                                {
     32                                                        document.write(
     33                                                                '<option value="' + CKEDITOR_LANGS[i].code + '">' +
     34                                                                        CKEDITOR_LANGS[i].name +
     35                                                                '</option>' );
     36                                                }
     37
     38                                        //]]>
     39                                        </script>
     40                                </select>
     41                                <br />
     42                                <span style="color: #888888">(You may see strange characters if your system doesn't
     43                                        support the selected language)</span>
     44                        </p>
     45                        <p>
     46                                <textarea id="editor1" name="editor1" rows="10" cols="80">&lt;p&gt;This is some &lt;strong&gt;sample text&lt;/strong&gt;. You are using &lt;a href="http://www.fckeditor.net/"&gt;FCKeditor&lt;/a&gt;.&lt;/p&gt;</textarea>
     47                                <script type="text/javascript">
     48                                //<![CDATA[
     49
     50                                        // Set the number of languages.
     51                                        document.getElementById( 'count' ).innerHTML = CKEDITOR_LANGS.length;
     52
     53                                        var editor;
     54
     55                                        function createEditor( languageCode )
     56                                        {
     57                                                if ( editor )
     58                                                        editor.destroy();
     59
     60                                                // Replace the <textarea id="editor"> with an CKEditor
     61                                                // instance, using default configurations.
     62                                                editor = CKEDITOR.replace( 'editor1',
     63                                                        {
     64                                                                language : languageCode,
     65
     66                                                                on :
     67                                                                {
     68                                                                        instanceReady : function()
     69                                                                        {
     70                                                                                // Wait for the editor to be ready to set
     71                                                                                // the language combo.
     72                                                                                var languages = document.getElementById( 'languages' );
     73                                                                                languages.value = this.langCode;
     74                                                                                languages.disabled = false;
     75                                                                        }
     76                                                                }
     77                                                        } );
     78                                        }
     79
     80                                        // At page startup, load the default language:
     81                                        createEditor( '' );
     82
     83                                //]]>
     84                                </script>
     85                        </p>
     86                </form>
     87        </div>
     88        <div id="code">
     89                <pre></pre>
     90        </div>
     91</body>
     92</html>
  • _source/core/editor.js

     
    139139                                // not a direct reference to it.
    140140                                editor.lang = CKEDITOR.tools.prototypedCopy( lang );
    141141
     142                                // We're not able to support RTL in Firefox 2 at this time.                             
     143                                if ( CKEDITOR.env.gecko && CKEDITOR.env.version < 10900 && editor.lang.dir == 'rtl' )
     144                                        editor.lang.dir = 'ltr';
     145
    142146                                loadPlugins( editor );
    143147                        });
    144148        };
  • _source/core/env.js

     
    113113                        if ( geckoRelease )
    114114                        {
    115115                                geckoRelease = geckoRelease[1].split( '.' );
    116                                 version = geckoRelease[0] * 10000 + ( geckoRelease[1] || 0 ) * 100 + ( geckoRelease[2] || 0 );
     116                                version = geckoRelease[0] * 10000 + ( geckoRelease[1] || 0 ) * 100 + ( geckoRelease[2] || 0 ) * 1;
    117117                        }
    118118                }
    119119
     
    164164                        ( env.webkit && version >= 522 ) ||
    165165                        false;
    166166
     167                // The CSS class to be appended on the main UI containers, making it
     168                // easy to apply browser specific styles to it.
     169                env.cssClass =
     170                        'cke_browser_' + (
     171                                env.ie ? 'ie' :
     172                                env.gecko ? 'gecko' :
     173                                env.opera ? 'opera' :
     174                                env.air ? 'air' :
     175                                env.webkit ? 'webkit' :
     176                                'unknown' );
     177
     178                if ( env.ie )
     179                {
     180                        if ( env.version < 7 )
     181                                env.cssClass += ' cke_browser_ie6';
     182
     183                        if ( env.quirks )
     184                                env.cssClass += ' cke_browser_iequirks';
     185                }
     186
    167187                return env;
    168188        })();
    169189}
  • _source/lang/_languages.js

     
     1/*
     2Copyright (c) 2003-2009, CKSource - Frederico Knabben. All rights reserved.
     3For licensing, see LICENSE.html or http://ckeditor.com/license
     4*/
     5
     6var CKEDITOR_LANGS = (function()
     7{
     8        var langs =
     9        {
     10                af              : 'Afrikaans',
     11                ar              : 'Arabic',
     12                bg              : 'Bulgarian',
     13                bn              : 'Bengali/Bangla',
     14                bs              : 'Bosnian',
     15                ca              : 'Catalan',
     16                cs              : 'Czech',
     17                da              : 'Danish',
     18                de              : 'German',
     19                el              : 'Greek',
     20                en              : 'English',
     21                'en-au' : 'English (Australia)',
     22                'en-ca' : 'English (Canadian)',
     23                'en-uk' : 'English (United Kingdom)',
     24                eo              : 'Esperanto',
     25                es              : 'Spanish',
     26                et              : 'Estonian',
     27                eu              : 'Basque',
     28                fa              : 'Persian',
     29                fi              : 'Finnish',
     30                fo              : 'Faroese',
     31                fr              : 'French',
     32                'fr-ca' : 'French (Canada)',
     33                gl              : 'Galician',
     34                gu              : 'Gujarati',
     35                he              : 'Hebrew',
     36                hi              : 'Hindi',
     37                hr              : 'Croatian',
     38                hu              : 'Hungarian',
     39                is              : 'Icelandic',
     40                it              : 'Italian',
     41                ja              : 'Japanese',
     42                km              : 'Khmer',
     43                ko              : 'Korean',
     44                lt              : 'Lithuanian',
     45                lv              : 'Latvian',
     46                mn              : 'Mongolian',
     47                ms              : 'Malay',
     48                nb              : 'Norwegian Bokmal',
     49                nl              : 'Dutch',
     50                no              : 'Norwegian',
     51                pl              : 'Polish',
     52                pt              : 'Portuguese (Portugal)',
     53                'pt-br' : 'Portuguese (Brazil)',
     54                ro              : 'Romanian',
     55                ru              : 'Russian',
     56                sk              : 'Slovak',
     57                sl              : 'Slovenian',
     58                sr              : 'Serbian (Cyrillic)',
     59                'sr-latn'       : 'Serbian (Latin)',
     60                sv              : 'Swedish',
     61                th              : 'Thai',
     62                tr              : 'Turkish',
     63                uk              : 'Ukrainian',
     64                vi              : 'Vietnamese',
     65                zh              : 'Chinese Traditional',
     66                'zh-cn' : 'Chinese Simplified'
     67        };
     68       
     69        var langsArray = [];
     70       
     71        for ( var code in langs )
     72        {
     73                langsArray.push( { code : code, name : langs[ code ] } );
     74        }
     75       
     76        langsArray.sort( function( a, b )
     77                {
     78                        return ( a.name < b.name ) ? -1 : 1;
     79                });
     80       
     81        return langsArray;
     82})();
     83 No newline at end of file
  • _source/plugins/contextmenu/plugin.js

     
    103103                        if ( CKEDITOR.env.ie )
    104104                                this.saveSelection();
    105105
    106                         menu.show( offsetParent, 1, offsetX, offsetY );
     106                        menu.show( offsetParent, editor.lang.dir == 'rtl' ? 2 : 1, offsetX, offsetY );
    107107                }
    108108        },
    109109
  • _source/plugins/elementspath/plugin.js

     
    4747                        editor.on( 'themeSpace', function( event )
    4848                                {
    4949                                        if ( event.data.space == 'bottom' )
    50                                                 event.data.html += '<div id="' + spaceId + '" class="cke_path"><br></div>';
     50                                                event.data.html += '<div id="' + spaceId + '" class="cke_path"><span class="cke_empty">&nbsp;</span></div>';
    5151                                });
    5252
    5353                        editor.on( 'selectionChange', function( ev )
  • _source/plugins/floatpanel/plugin.js

     
    1414
    1515        function getPanel( editor, doc, parentElement, definition, level )
    1616        {
    17                 // Generates the panel key: docId-eleId-CSSs
     17                // Generates the panel key: docId-eleId-skinName-langDir[-CSSs][-level]
    1818                var key =
    1919                        doc.getUniqueId() +
    2020                        '-' + parentElement.getUniqueId() +
    2121                        '-' + editor.skinName +
     22                        '-' + editor.lang.dir +
    2223                        ( ( definition.css && ( '-' + definition.css ) ) || '' ) +
    2324                        ( ( level && ( '-' + level ) ) || '' );
    2425
     
    6061                                definition : definition,
    6162                                document : doc,
    6263                                iframe : iframe,
    63                                 children : []
     64                                children : [],
     65                                dir : editor.lang.dir
    6466                        }
    6567                },
    6668
     
    8183                                return this._.panel.getBlock( name );
    8284                        },
    8385
     86                        /*
     87                                corner (LTR):
     88                                        1 = top-left
     89                                        2 = top-right
     90                                        3 = bottom-right
     91                                        4 = bottom-left
     92                               
     93                                corner (RTL):
     94                                        1 = top-right
     95                                        2 = top-left
     96                                        3 = bottom-left
     97                                        4 = bottom-right
     98                         */
    8499                        showBlock : function( name, offsetParent, corner, offsetX, offsetY )
    85100                        {
    86101                                var panel = this._.panel,
     
    88103
    89104                                var element = this.element,
    90105                                        iframe = this._.iframe,
    91                                         position = offsetParent.getDocumentPosition( element.getDocument() );
    92 
     106                                        position = offsetParent.getDocumentPosition( element.getDocument() ),
     107                                        rtl = this._.dir == 'rtl';
     108                               
    93109                                var left        = position.x + ( offsetX || 0 ),
    94110                                        top             = position.y + ( offsetY || 0 );
    95111
    96                                 if ( corner == 2 || corner == 3 )
     112                                if ( ( rtl && ( corner == 1 || corner == 4 ) ) || ( !rtl && ( corner == 2 || corner == 3 ) ) )
    97113                                        left += offsetParent.$.offsetWidth - 1;
    98114
    99115                                if ( corner == 3 || corner == 4 )
     
    101117
    102118                                element.setStyles(
    103119                                        {
    104                                                 left    : left + 'px',
    105                                                 top             : top + 'px',
     120                                                top : top + 'px',
     121                                                left : '0',
     122                                                visibility : 'hidden',
     123                                                opacity : '0',  // FF3 is ignoring "visibility"
    106124                                                display : ''
    107125                                        });
    108126
    109                                 if ( block.autoSize )
    110                                 {
    111                                         function setHeight()
    112                                         {
    113                                                 element.getFirst().setStyle( 'height', block.element.$.scrollHeight + 'px' );
    114                                         }
    115 
    116                                         if ( !CKEDITOR.env.gecko || panel.isLoaded )
    117                                                 setHeight();
    118                                         else
    119                                                 panel.onLoad = setHeight;
    120                                 }
    121                                 else
    122                                         element.getFirst().removeStyle( 'height' );
    123 
    124127                                // Configure the IFrame blur event. Do that only once.
    125128                                if ( !this._.blurSet )
    126129                                {
     
    144147                                        this._.blurSet = 1;
    145148                                }
    146149
    147                                 // Set the IFrame focus, so the blur event gets fired.
    148                                 setTimeout( function()
    149                                         {
    150                                                 iframe.$.contentWindow.focus();
    151                                         }, 0);
    152 
    153150                                panel.onEscape = CKEDITOR.tools.bind( function()
    154151                                        {
    155152                                                this.onEscape && this.onEscape();
    156153                                        },
    157154                                        this );
    158155
     156                                setTimeout( function()
     157                                        {
     158                                                if ( rtl )
     159                                                        left -= element.$.offsetWidth;
     160
     161                                                element.setStyles(
     162                                                        {
     163                                                                left : left + 'px',
     164                                                                visibility      : '',
     165                                                                opacity : '1'   // FF3 is ignoring "visibility"
     166                                                        });
     167                                       
     168                                                if ( block.autoSize )
     169                                                {
     170                                                        function setHeight()
     171                                                        {
     172                                                                element.getFirst().setStyle( 'height', block.element.$.scrollHeight + 'px' );
     173                                                        }
     174
     175                                                        if ( !CKEDITOR.env.gecko || panel.isLoaded )
     176                                                                setHeight();
     177                                                        else
     178                                                                panel.onLoad = setHeight;
     179                                                }
     180                                                else
     181                                                        element.getFirst().removeStyle( 'height' );
     182
     183                                                // Set the IFrame focus, so the blur event gets fired.
     184                                                setTimeout( function()
     185                                                        {
     186                                                                iframe.$.contentWindow.focus();
     187                                                        }, 0);
     188                                        }, 0);
     189
    159190                                if ( this.onShow )
    160191                                        this.onShow.call( this );
    161192                        },
  • _source/plugins/panel/plugin.js

     
    7777
    7878                output.push(
    7979                        '<div class="', editor.skinClass ,'">' +
    80                                 '<div id=', id, ' class="cke_panel' );
     80                                '<div' +
     81                                        ' id=', id,
     82                                        ' dir=', editor.lang.dir,
     83                                        ' class="cke_panel cke_', editor.lang.dir );
    8184
    8285                if ( this.className )
    8386                        output.push( ' ', this.className );
     
    123126                        if ( this.forceIFrame || this.css.length )
    124127                        {
    125128                                var iframe = this.document.getById( 'cke_' + this.id + '_frame' ),
    126                                         className = iframe.getParent().getParent().getAttribute( 'class' ),
     129                                        parentDiv = iframe.getParent();
     130                                        dir = parentDiv.getAttribute( 'dir' );
     131                                        className = parentDiv.getParent().getAttribute( 'class' ),
    127132                                        doc = iframe.getFrameDocument();
    128133
    129134                                // Initialize the IFRAME document body.
     
    135140
    136141                                doc.$.write(
    137142                                        '<!DOCTYPE html>' +
    138                                         '<html>' +
     143                                        '<html dir="' + dir + '" class="' + className + '_container">' +
    139144                                                '<head>' +
    140145                                                        '<link type="text/css" rel=stylesheet href="' + this.css.join( '"><link type="text/css" rel="stylesheet" href="' ) + '">' +
    141146                                                        '<style>.' + className + '_container{visibility:hidden}</style>' +
    142147                                                '</head>' +
    143                                                 '<body class="' + className + '_container cke_panel_frame" style="margin:0;padding:0">' +
     148                                                '<body class="cke_' + dir + ' cke_panel_frame" style="margin:0;padding:0">' +
    144149                                                '</body>' +
    145150                                        '<\/html>' );
    146151                                doc.$.close();
  • _source/skins/v2/dialog.css

     
    4343        left: 0;
    4444}
    4545
     46.cke_skin_v2 .cke_rtl .cke_dialog_tl
     47{
     48        background-position: -16px -397px;
     49}
     50
    4651.cke_skin_v2 .cke_dialog_tr
    4752{
    4853        background-position: -16px -76px;
     
    5257        right: 0;
    5358}
    5459
     60.cke_skin_v2 .cke_rtl .cke_dialog_tr
     61{
     62        background-position: -16px -457px;
     63}
     64
    5565.cke_skin_v2 .cke_dialog_tc
    5666{
    5767        background-position: 0 -136px;
     
    7181        left: 0;
    7282}
    7383
     84.cke_skin_v2 .cke_rtl .cke_dialog_bl
     85{
     86        background-position: -16px -517px;
     87}
     88
    7489.cke_skin_v2 .cke_dialog_br
    7590{
    7691        background-position: -16px -263px;
     
    8095        right: 0;
    8196}
    8297
     98.cke_skin_v2 .cke_rtl .cke_dialog_br
     99{
     100        background-position: -16px -584px;
     101}
     102
    83103.cke_skin_v2 .cke_dialog_bc
    84104{
    85105        background-position: 0 -330px;
     
    104124        _background-image: url(images/dialog_sides.gif);
    105125}
    106126
     127.cke_skin_v2 .cke_rtl .cke_dialog_ml,
     128.cke_skin_v2 .cke_rtl .cke_dialog_mr
     129{
     130        background-image: url(images/dialog_sides_rtl.png);
     131
     132        /* IE6 does not support full color transparent PNG. */
     133        _background-image: url(images/dialog_sides.gif);
     134}
     135
    107136.cke_skin_v2 .cke_dialog_ml
    108137{
    109138        background-position: 0 0;
     
    133162        position: relative;
    134163}
    135164
     165.cke_browser_ie.cke_skin_v2 .cke_rtl .cke_dialog_title
     166{
     167        position: static !important;
     168}
     169
    136170.cke_skin_v2 .cke_dialog_contents
    137171{
    138172        background-color: #f1f1e3;
     
    147181        text-align: right;
    148182}
    149183
     184.cke_skin_v2 .cke_rtl .cke_dialog_footer
     185{
     186        text-align: left;
     187}
     188
    150189/* tabs */
    151190
    152191.cke_skin_v2 .cke_dialog_tabs
    153192{
    154193        height: 23px;
    155194        background-color: #e3e3c7;
    156         float:left;
     195        display: inline-block;
    157196        margin-left:10px;
     197        margin-right:10px;
    158198        margin-top:-23px;
    159199        position: absolute;
    160200        z-index: 2;
    161201}
    162202
     203.cke_skin_v2 .cke_rtl .cke_dialog_tabs
     204{
     205        right: 10px;
     206}
     207
    163208.cke_skin_v2 a.cke_dialog_tab,
    164209.cke_skin_v2 a:link.cke_dialog_tab,
    165210.cke_skin_v2 a:active.cke_dialog_tab,
     
    172217        border-top: 1px solid #d5d59d;
    173218        height: 14px;
    174219        padding: 4px 5px;
    175         display: block;
    176         float: left;
     220        display: inline-block;
    177221        cursor: pointer;
    178222}
    179223
     
    261305        width: 100%;
    262306}
    263307
    264 .cke_skin_v2.cke_browser_ie .cke_dialog_ui_hbox,
    265 .cke_skin_v2.cke_browser_ie .cke_dialog_ui_vbox,
    266 .cke_skin_v2.cke_browser_webkit .cke_dialog_ui_hbox,
    267 .cke_skin_v2.cke_browser_webkit .cke_dialog_ui_vbox
     308.cke_skin_v2 .cke_rtl .cke_dialog_ui_hbox_first,
     309.cke_skin_v2 .cke_rtl .cke_dialog_ui_hbox_child
    268310{
    269         table-layout: fixed;
    270 }
    271 
    272 .cke_skin_v2.cke_browser_ie .cke_dialog_footer_buttons
    273 {
    274         table-layout: auto;
    275 }
    276 
    277 .cke_skin_v2.cke_ltr .cke_dialog_ui_hbox_first,
    278 .cke_skin_v2.cke_ltr .cke_dialog_ui_hbox_child
    279 {
    280         padding-right: 10px;
    281         vertical-align: top;
    282 }
    283 
    284 .cke_skin_v2.cke_rtl .cke_dialog_ui_hbox_first,
    285 .cke_skin_v2.cke_rtl .cke_dialog_ui_hbox_child
    286 {
    287311        padding-left: 10px;
    288312        vertical-align: top;
    289313}
     
    322346{
    323347        display: inline-table;
    324348        margin-right: 12px;
     349        margin-left: 12px;
    325350        width: auto;
    326351        position: relative;
    327352}
     
    348373        cursor: pointer;
    349374        height: 20px;
    350375        width: 20px;
    351         right: 10px;
    352376        top: 5px;
    353377
    354         _right: 22px;
    355 
    356378        /* IE6 does not support full color transparent PNG. */
    357379        _background-image: url(images/sprites_ie6.png);
    358380}
     
    362384        background-position: -16px -687px;
    363385}
    364386
    365 .cke_skin_v2.cke_rtl .cke_dialog_close_button
     387.cke_skin_v2 .cke_ltr .cke_dialog_close_button
    366388{
     389        right: 10px;
     390        _right: 22px;
     391}
     392
     393.cke_skin_v2 .cke_rtl .cke_dialog_close_button
     394{
    367395        left: 10px;
    368         right: auto;
     396        _left: 22px;
    369397}
    370398
     399.cke_browser_ie6.cke_skin_v2 .cke_rtl .cke_dialog_close_button
     400{
     401        position: relative;
     402        float: left;
     403        margin-top: -55px;
     404        margin-left: -7px;
     405}
     406
     407.cke_browser_iequirks.cke_skin_v2 .cke_rtl.cke_single_page .cke_dialog_close_button
     408{
     409        margin-top: -32px;
     410}
     411
     412.cke_browser_iequirks.cke_skin_v2 .cke_ltr .cke_dialog_close_button
     413{
     414        margin-top: 0;
     415}
     416
    371417.cke_skin_v2 .cke_dialog_ui_input_select
    372418{
    373419        border: 1px solid #a0a0a0;
     
    380426        height: 25px;
    381427}
    382428
    383 .cke_skin_v2.cke_browser_ie div.cke_dialog_ui_input_file
    384 {
    385         height: 25px;
    386 }
    387 
    388429/*
    389430 * Some utility CSS classes for dialog authors.
    390431 */
     
    415456        font-size: 1px;
    416457}
    417458
     459.cke_skin_v2 .cke_rtl .cke_dialog .BtnReset
     460{
     461        float: left;
     462}
     463
    418464.cke_skin_v2 .cke_dialog .BtnLocked, .BtnUnlocked
    419465{
    420466        float: left;
     
    427473        font-size: 1px;
    428474}
    429475
     476.cke_skin_v2 .cke_dialog .BtnLocked, .BtnUnlocked
     477{
     478        float: right;
     479}
     480
    430481.cke_skin_v2 .cke_dialog .BtnUnlocked
    431482{
    432483        background-position: 0 -16px;
     
    499550{
    500551        color: #a0a0a0;
    501552}
     553
     554/* Firefox 2 */
     555
     556.cke_skin_v2 .cke_browser_gecko .cke_dialog_tabs
     557{
     558        display: block;
     559        float: left;
     560}
     561 No newline at end of file
  • _source/skins/v2/editor.css

     
    1515
    1616/* Restore the container visibility */
    1717html .cke_skin_v2,
    18 html .cke_skin_v2_container
     18html.cke_skin_v2_container
    1919{
    2020        visibility: visible;
    2121}
  • _source/skins/v2/elementspath.css

     
    1313
    1414.cke_skin_v2 .cke_path
    1515{
    16         padding: 3px;
     16        padding: 3px 3px 0 3px;
    1717}
    1818
    19 .cke_skin_v2 .cke_path a
     19.cke_skin_v2 .cke_path a,
     20.cke_skin_v2 .cke_path .cke_empty
    2021{
     22        display: block;
     23        float: left;
    2124        border: solid 1px #efefde;
    2225        background-color: #efefde;
    2326        padding-top: 1px;
    2427        padding-bottom: 1px;
    2528        padding-left: 4px;
    2629        padding-right: 4px;
     30        margin-bottom : 3px;
    2731}
    2832
     33.cke_skin_v2 .cke_path .cke_empty
     34{
     35        visibility: hidden;
     36}
     37
     38.cke_skin_v2 .cke_rtl .cke_path a,
     39.cke_skin_v2 .cke_path .cke_empty
     40{
     41        float: right;
     42}
     43
    2944.cke_skin_v2 .cke_path a:hover,
    3045.cke_skin_v2 .cke_path a:focus,
    3146.cke_skin_v2 .cke_path a:active /* IE */
  • _source/skins/v2/icons.css

     
    211211{
    212212        background-position: 0 -880px;
    213213}
     214
    214215.cke_skin_v2 .cke_button_undo .cke_icon
    215216{
    216217        background-position: 0 -208px;
    217218}
     219
     220.cke_skin_v2 .cke_rtl .cke_button_undo .cke_icon
     221{
     222        background-position: 0 -224px;
     223}
     224
    218225.cke_skin_v2 .cke_button_redo .cke_icon
    219226{
    220227        background-position: 0 -224px;
    221228}
    222229
     230.cke_skin_v2 .cke_rtl .cke_button_redo .cke_icon
     231{
     232        background-position: 0 -208px;
     233}
     234
    223235.cke_skin_v2 .cke_button_templates .cke_icon
    224236{
    225237        background-position: 0 -80px;
  • _source/skins/v2/mainui.css

    Cannot display: file marked as a binary type.
    svn:mime-type = application/octet-stream
     
    2424    border-bottom: solid 2px #696969;
    2525}
    2626
     27.cke_skin_v2 .cke_rtl .cke_top
     28{
     29    border-left: solid 1px #696969;
     30    border-right: solid 1px #fafaf5;
     31}
     32
    2733.cke_skin_v2 .cke_bottom
    2834{
    2935    border-left: solid 1px #696969;
  • _source/skins/v2/menu.css

     
    4141        opacity: 0.70; /* Safari, Opera and Mozilla */
    4242}
    4343
     44.cke_rtl .cke_skin_v2 .cke_menuitem .cke_icon
     45{
     46        float: right;
     47}
     48
    4449.cke_skin_v2 .cke_menuitem a:hover .cke_icon,
    4550.cke_skin_v2 .cke_menuitem a:focus .cke_icon,
    4651.cke_skin_v2 .cke_menuitem a:active .cke_icon
     
    6166    background-color: #fff;
    6267}
    6368
     69.cke_rtl .cke_skin_v2 .cke_menuitem .cke_label
     70{
     71    padding-right: 0;
     72    margin-left: 0;
     73    padding-left: 3px;
     74    margin-right: 28px;
     75}
     76
    6477.cke_skin_v2 .cke_menuitem a:hover .cke_label,
    6578.cke_skin_v2 .cke_menuitem a:focus .cke_label,
    6679.cke_skin_v2 .cke_menuitem a:active .cke_label
     
    8699        margin-right: 2px;
    87100        margin-top: 3px;
    88101}
     102
     103.cke_rtl .cke_skin_v2 .cke_menuarrow
     104{
     105        float: left;
     106        margin-right: 0;
     107        margin-left: 2px;
     108}
     109 No newline at end of file
  • _source/skins/v2/panel.css

     
    7979        color: #000;
    8080}
    8181
    82 .cke_panel_listItem.cke_selected a
     82.cke_panel_listItem .cke_selected a
    8383{
    8484        border: 1px solid #ccc;
    8585        background-color: #e9f5ff;
     
    147147        float: left;
    148148}
    149149
     150.cke_rtl span.cke_colorbox
     151{
     152        float: right;
     153}
     154
    150155a.cke_colorbox
    151156{
    152157    border: #fff 1px solid;
     
    154159    float: left;
    155160}
    156161
     162.cke_rtl a.cke_colorbox
     163{
     164    float: right;
     165}
     166
    157167a:hover.cke_colorbox,
    158168a:focus.cke_colorbox,
    159169a:active.cke_colorbox
  • _source/skins/v2/reset.css

     
    3131    font-family: 'Microsoft Sans Serif' , Tahoma, Arial, Verdana, Sans-Serif;
    3232}
    3333
    34 .cke_skin_v2.cke_rtl *,
    35 .cke_skin_v2.cke_rtl a:hover,
    36 .cke_skin_v2.cke_rtl a:link,
    37 .cke_skin_v2.cke_rtl a:visited,
    38 .cke_skin_v2.cke_rtl a:active
     34.cke_skin_v2 .cke_rtl *,
     35.cke_skin_v2 .cke_rtl a:hover,
     36.cke_skin_v2 .cke_rtl a:link,
     37.cke_skin_v2 .cke_rtl a:visited,
     38.cke_skin_v2 .cke_rtl a:active,
     39.cke_rtl .cke_skin_v2 *,
     40.cke_rtl .cke_skin_v2 a:hover,
     41.cke_rtl .cke_skin_v2 a:link,
     42.cke_rtl .cke_skin_v2 a:visited,
     43.cke_rtl .cke_skin_v2 a:active
    3944{
    4045        text-align: right;
    4146}
  • _source/skins/v2/richcombo.css

     
    22
    33.cke_skin_v2 .cke_rcombo
    44{
    5         float: left;
     5        display: inline-block;
    66        margin-left: 2px;
    77        margin-right: 2px;
    88}
     
    1515        border-top-left-radius: 0;
    1616}
    1717
    18 /* IE6 only */
    19 .cke_skin_v2 cke_browser_ie6 .cke_rcombo
    20 {
    21         float: none;
    22 }
    23 
    2418.cke_skin_v2 .cke_rcombo a
    2519{
    2620        filter: alpha(opacity=70); /* IE */
     
    2923
    3024.cke_skin_v2 .cke_rcombo .cke_label
    3125{
    32         padding-top: 6px;
     26        display: inline-block;
     27        line-height: 24px;
     28        vertical-align: top;
    3329        padding-left: 4px;
    3430        padding-right: 5px;
    35         float: left;
    3631        filter: alpha(opacity=70); /* IE */
    3732        opacity: 0.70; /* Safari, Opera and Mozilla */
    3833        background-color: #f1f1e3;      /* Because of IE6+ClearType */
    3934}
    4035
     36.cke_skin_v2 .cke_rtl .cke_rcombo .cke_label
     37{
     38        padding-right: 4px;
     39        padding-left: 5px;
     40}
     41
    4142.cke_skin_v2 .cke_rcombo .cke_text
    4243{
    4344        border: 1px solid #8f8f73;
    4445        background-color: #fff;
    45         float: left;
    4646        height: 14px;
    4747        width:60px;
    4848        padding-top: 4px;
     
    5151        padding-right: 5px;
    5252    text-overflow: ellipsis;
    5353    overflow: hidden;
     54        display: inline-block;
     55}
     56
     57.cke_skin_v2 .cke_ltr .cke_rcombo .cke_text
     58{
    5459        -moz-border-radius-topleft: 3px;
    5560        -webkit-border-top-left-radius: 3px;
    5661        border-top-left-radius: 3px;
     
    5964        border-bottom-left-radius: 3px;
    6065}
    6166
     67.cke_skin_v2 .cke_rtl .cke_rcombo .cke_text
     68{
     69        -moz-border-radius-topright: 3px;
     70        -webkit-border-top-right-radius: 3px;
     71        border-top-right-radius: 3px;
     72        -moz-border-radius-bottomright: 3px;
     73        -webkit-border-bottom-right-radius: 3px;
     74        border-bottom-right-radius: 3px;
     75}
     76
    6277.cke_skin_v2 .cke_browser_iequirks .cke_rcombo .cke_text
    6378{
    6479        height: 24px;
     
    6984{
    7085    background-position: center center;
    7186    background-image: url(images/arrowdown.gif);
    72     border-right: 1px solid #8f8f73;
    7387    border-top: 1px solid #8f8f73;
    7488    border-bottom: 1px solid #8f8f73;
    75         display: block;
    76         float: left;
     89        display: inline-block;
    7790    width: 14px;
    7891        height: 22px;
    7992    background-repeat: no-repeat;
     93}
     94
     95.cke_skin_v2 .cke_ltr .cke_rcombo .cke_openbutton
     96{
     97    border-right: 1px solid #8f8f73;
    8098        -moz-border-radius-topright: 3px;
    8199        -webkit-border-top-right-radius: 3px;
    82         border-top-left-radius: 3px;
     100        border-top-right-radius: 3px;
    83101        -moz-border-radius-bottomright: 3px;
    84102        -webkit-border-bottom-right-radius: 3px;
     103        border-bottom-right-radius: 3px;
     104}
     105
     106.cke_skin_v2 .cke_rtl .cke_rcombo .cke_openbutton
     107{
     108    border-left: 1px solid #8f8f73;
     109        -moz-border-radius-topleft: 3px;
     110        -webkit-border-top-left-radius: 3px;
     111        border-top-left-radius: 3px;
     112        -moz-border-radius-bottomleft: 3px;
     113        -webkit-border-bottom-left-radius: 3px;
    85114        border-bottom-left-radius: 3px;
    86115}
    87116
     
    148177{
    149178        color: #fff;
    150179}
     180
     181/* Firefox 2 & WebKit Section */
     182
     183.cke_skin_v2 .cke_browser_gecko .cke_rcombo .cke_label,
     184.cke_skin_v2 .cke_browser_gecko .cke_rcombo .cke_text,
     185.cke_skin_v2 .cke_browser_gecko .cke_rcombo .cke_openbutton,
     186.cke_skin_v2 .cke_browser_webkit .cke_rcombo .cke_label,
     187.cke_skin_v2 .cke_browser_webkit .cke_rcombo .cke_text,
     188.cke_skin_v2 .cke_browser_webkit .cke_rcombo .cke_openbutton
     189{
     190        display: block;
     191        float: left;
     192}
     193
     194.cke_skin_v2 .cke_rtl.cke_browser_gecko .cke_rcombo .cke_label,
     195.cke_skin_v2 .cke_rtl.cke_browser_gecko .cke_rcombo .cke_text,
     196.cke_skin_v2 .cke_rtl.cke_browser_gecko .cke_rcombo .cke_openbutton,
     197.cke_skin_v2 .cke_rtl.cke_browser_webkit .cke_rcombo .cke_label,
     198.cke_skin_v2 .cke_rtl.cke_browser_webkit .cke_rcombo .cke_text,
     199.cke_skin_v2 .cke_rtl.cke_browser_webkit .cke_rcombo .cke_openbutton
     200{
     201        float: right;
     202}
  • _source/skins/v2/toolbar.css

     
    1919        float:left;
    2020}
    2121
     22.cke_skin_v2 .cke_rtl .cke_toolbar
     23{
     24        float:right;
     25}
     26
    2227.cke_skin_v2 .cke_separator
    2328{
    2429        display:inline-block;
     
    3338        clear:left;
    3439}
    3540
     41.cke_skin_v2 .cke_rtl .cke_break
     42{
     43        clear:right;
     44}
     45
    3646.cke_skin_v2 .cke_button a,
    3747.cke_skin_v2 .cke_button a.cke_off
    3848{
     
    110120        background-repeat: no-repeat;
    111121}
    112122
     123.cke_skin_v2 .cke_rtl .cke_button .cke_buttonarrow
     124{
     125        background-position: left center;
     126}
    113127
     128
    114129/* IE Section */
    115130
    116131/* Repeat it here for all variations of ".cke_button a" because of IE6 */
     
    161176
    162177/* Firefox 2 Section */
    163178
     179.cke_skin_v2 .cke_browser_gecko .cke_toolbar,
    164180.cke_skin_v2 .cke_browser_gecko .cke_button a,
    165181.cke_skin_v2 .cke_browser_gecko .cke_button a.cke_off,
    166182.cke_skin_v2 .cke_browser_gecko .cke_button .cke_icon,
     
    171187        float: left;
    172188}
    173189
     190.cke_skin_v2 .cke_rtl.cke_browser_gecko .cke_toolbar,
     191.cke_skin_v2 .cke_rtl.cke_browser_gecko .cke_button a,
     192.cke_skin_v2 .cke_rtl.cke_browser_gecko .cke_button a.cke_off,
     193.cke_skin_v2 .cke_rtl.cke_browser_gecko .cke_button .cke_icon,
     194.cke_skin_v2 .cke_rtl.cke_browser_gecko .cke_button .cke_buttonarrow,
     195.cke_skin_v2 .cke_rtl.cke_browser_gecko .cke_separator
     196{
     197        float: right;
     198}
     199
    174200.cke_skin_v2 .cke_browser_gecko .cke_button .cke_label,
    175201.cke_skin_v2 .cke_browser_gecko .cke_break
    176202{
    177203        float: left;
    178204}
    179205
     206.cke_skin_v2 .cke_rtl.cke_browser_gecko .cke_button .cke_label,
     207.cke_skin_v2 .cke_rtl.cke_browser_gecko .cke_break
     208{
     209        float: right;
     210}
     211
    180212.cke_skin_v2 .cke_browser_gecko .cke_separator
    181213{
    182214        margin-top: 4px;
  • _source/themes/default/theme.js

     
    55
    66CKEDITOR.themes.add( 'default', (function()
    77{
    8         // The CSS class to be appended on the main UI containers, making it easy
    9         // to apply browser specific styles to it.
    10         var browserCssClass =
    11                         'cke_browser_' + (
    12                                 CKEDITOR.env.ie ? 'ie' :
    13                                 CKEDITOR.env.gecko ? 'gecko' :
    14                                 CKEDITOR.env.opera ? 'opera' :
    15                                 CKEDITOR.env.air ? 'air' :
    16                                 CKEDITOR.env.webkit ? 'webkit' :
    17                                 'unknown' );
    18 
    19         if ( CKEDITOR.env.ie )
    20         {
    21                 if ( CKEDITOR.env.version < 7 )
    22                         browserCssClass += ' cke_browser_ie6';
    23 
    24                 if ( CKEDITOR.env.quirks )
    25                         browserCssClass += ' cke_browser_iequirks';
    26         }
    27 
    288        return {
    299                build : function( editor, themePath )
    3010                {
     
    7454                                        ' dir="', editor.lang.dir, '"' +
    7555                                        ' title="', ( CKEDITOR.env.gecko ? ' ' : '' ), '"' +
    7656                                        ' tabindex="' + tabIndex + '">' +
    77                                 '<span class="' , browserCssClass, ' cke_', editor.lang.dir, '">' +
     57                                '<span class="' , CKEDITOR.env.cssClass, ' cke_', editor.lang.dir, '">' +
    7858                                        '<table class="cke_editor" border="0" cellspacing="0" cellpadding="0" style="width:', width, ';height:', height, '"><tbody>' +
    7959                                                '<tr', topHtml          ? '' : ' style="display:none"', '><td id="cke_top_'             , name, '" class="cke_top">'            , topHtml               , '</td></tr>' +
    8060                                                '<tr', contentsHtml     ? '' : ' style="display:none"', '><td id="cke_contents_', name, '" class="cke_contents" style="height:100%">'   , contentsHtml  , '</td></tr>' +
     
    11393
    11494                        var element = CKEDITOR.dom.element.createFromHtml( [
    11595                                        '<div class="cke_skin_', editor.skinName,
    116                                                 ' ', browserCssClass,
    117                                                 ' ', CKEDITOR.env.quirks ? 'cke_mode_quirks' : 'cke_mode_standards',
    118                                                 ' cke_', editor.lang.dir,
     96                                                ' ', CKEDITOR.env.cssClass,
    11997                                                '" dir="', editor.lang.dir, '">' +
    12098
    121                                                 '<div class="cke_dialog" style="position:absolute">' +
     99                                                '<div class="cke_dialog',
     100                                                        ' cke_', editor.lang.dir, '" style="position:absolute">' +
    122101                                                        '<div class="%body">' +
    123102                                                                '<div id="%title#" class="%title"></div>' +
    124103                                                                '<div id="%close_button#" class="%close_button"></div>' +
© 2003 – 2019 CKSource – Frederico Knabben. All rights reserved. | Terms of use | Privacy policy