Changes for page EditSheet
Last modified by teamwire004 on 2025/07/01 06:50
From version 5.1
edited by teamwire005
on 2024/10/01 09:14
on 2024/10/01 09:14
Change comment:
Install extension [org.xwiki.platform:xwiki-platform-ckeditor-ui/15.10.12]
To version 8.1
edited by teamwire004
on 2025/07/01 06:50
on 2025/07/01 06:50
Change comment:
Install extension [org.xwiki.platform:xwiki-platform-ckeditor-ui/16.10.9]
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Objects (3 modified, 0 added, 0 removed)
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki.teamwire00 51 +XWiki.teamwire004
- XWiki.JavaScriptExtension[0]
-
- Code
-
... ... @@ -54,9 +54,11 @@ 54 54 } 55 55 56 56 var uploadDisabled = element.hasAttribute('data-upload-disabled'); 57 + var startupFocus = element.hasAttribute('data-startup-focus'); 57 57 58 58 var config = { 59 59 filebrowserUploadUrl: uploadDisabled ? '' : getUploadURL(sourceDocument, 'filebrowser'), 61 + startupFocus, 60 60 height: $(element).height(), 61 61 // Used to resolve and serialize relative references. Also used to make HTTP requests with the right context. 62 62 sourceDocument: sourceDocument,
- XWiki.JavaScriptExtension[2]
-
- Code
-
... ... @@ -10,7 +10,9 @@ 10 10 container.find('.ckeditor-textarea').each(function() { 11 11 // Wrap in try/catch so that a failure to load one editor doesn't affect the other editors. 12 12 try { 13 - createEditor(ckeditor, this); 13 + createEditor(ckeditor, this).then(() => { 14 + this.classList.remove('loading'); 15 + }); 14 14 } catch(e) { 15 15 console.log(e); 16 16 }
- XWiki.StyleSheetExtension[0]
-
- Code
-
... ... @@ -12,6 +12,13 @@ 12 12 resize: none; 13 13 } 14 14 15 +/* Hide the form action bar while the editor is loading in order to avoid UI flickering (because the editor may enhance 16 + or replace the form action bar). */ 17 +main > div:has(.ckeditor-textarea.loading) ~ .bottom-editor, 18 +#xwikicontent.loading ~ form#inplace-editing { 19 + visibility: hidden; 20 +} 21 + 15 15 /* Show the modal above the CKEditor dialogs */ 16 16 body > .modal-backdrop { 17 17 z-index: 10040; ... ... @@ -388,6 +388,77 @@ 388 388 } 389 389 390 390 /** 398 + * Custom styles to match XWiki's Look & Feel 399 + */ 400 +.cke_chrome, 401 +.cke_chrome > .cke_inner { 402 + border-radius: @border-radius-base; 403 +} 404 + 405 +.cke_chrome > .cke_inner > .cke_top { 406 + border-top-right-radius: @border-radius-base; 407 + border-top-left-radius: @border-radius-base; 408 +} 409 + 410 +.cke_chrome > .cke_inner > .cke_bottom { 411 + border-bottom-right-radius: @border-radius-base; 412 + border-bottom-left-radius: @border-radius-base; 413 +} 414 + 415 +/* The standalone WYSIWYG edit mode shows the form action toolbar right below the CKEditor instance used to edit the 416 + document content. We make the bottom border rounded on the form action toolbar instead. */ 417 +#xwikieditcontent > .cke_chrome, 418 +#xwikieditcontent > .cke_chrome > .cke_inner, 419 +#xwikieditcontent > .cke_chrome > .cke_inner > .cke_bottom { 420 + border-bottom-right-radius: 0; 421 + border-bottom-left-radius: 0; 422 +} 423 + 424 +a.cke_button, 425 +a.cke_combo_button { 426 + border-radius: @border-radius-small; 427 +} 428 + 429 +.cke_panel, 430 +.cke_dialog_body, 431 +.cke_dialog a.cke_dialog_ui_button, 432 +.cke_dialog input.cke_dialog_ui_input_text, 433 +.cke_dialog select.cke_dialog_ui_input_select, 434 +.cke_dialog fieldset.cke_dialog_ui_fieldset, 435 +.cke_notification { 436 + border-radius: @border-radius-base; 437 +} 438 + 439 +.cke_panel.cke_menu_panel, 440 +.cke_panel.cke_combopanel { 441 + margin: 2px 0; 442 +} 443 + 444 +.cke_dialog_title, 445 +.cke_dialog a.cke_dialog_tab { 446 + border-top-right-radius: @border-radius-base; 447 + border-top-left-radius: @border-radius-base; 448 +} 449 + 450 +.cke_dialog_contents, 451 +.cke_dialog_footer { 452 + border-bottom-right-radius: @border-radius-base; 453 + border-bottom-left-radius: @border-radius-base; 454 +} 455 + 456 +/** 457 + * Custom styles for the in-line editor 458 + */ 459 +.viewbody > .cke_float { 460 + /* Shift the floating toolbar in order to match the content padding. */ 461 + margin-right: floor((@grid-gutter-width / 2)); 462 + margin-left: ceil((@grid-gutter-width / 2)); 463 +} 464 +.cke_float .cke_top { 465 + border-radius: @border-radius-base; 466 +} 467 + 468 +/** 391 391 * Full-screen styles for the in-line editor 392 392 */ 393 393 body[data-maximized="true"] { ... ... @@ -423,12 +423,6 @@ 423 423 margin: 0 !important; 424 424 overflow-y: auto !important; 425 425 z-index: 9995; 426 - 427 - &:focus { 428 - /* Remove the focus border. */ 429 - border-color: transparent !important; 430 - box-shadow: none !important; 431 - } 432 432 } 433 433 .cke_maximize_backdrop { 434 434 top: 0; ... ... @@ -465,3 +465,20 @@ 465 465 border-color: @table-border-color; 466 466 border-style: solid; 467 467 } 540 + 541 +/* CKEditor contains a CSS reset. It works with its own style sheets and does not use the ones in XWiki. 542 +However, we want `.sr-only` from XWiki to still be usable in our CKEditor environment. 543 +We need to redefine the XWiki styles of this class to have better priority than the CKEditor CSS reset. 544 +Without this, the elements with this class are still shown which would be different from the behaviour 545 +of `.sr-only` anywhere else in XWiki (as described in our doc). 546 +This redefinition allows for a more consistent behaviour of the `.sr-only` class. */ 547 +.cke_reset_all .sr-only { 548 + position: absolute; 549 + width: 1px; 550 + height: 1px; 551 + padding: 0; 552 + margin: -1px; 553 + overflow: hidden; 554 + clip: rect(0, 0, 0, 0); 555 + border: 0; 556 +}