[PR #4850] [MERGED] Range of WYSIWYG Editor Table Handling Improvements #6417

Closed
opened 2026-02-05 10:31:44 +03:00 by OVERLORD · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/BookStackApp/BookStack/pull/4850
Author: @ssddanbrown
Created: 2/15/2024
Status: Merged
Merged: 2/17/2024
Merged by: @ssddanbrown

Base: developmentHead: table_improvements


📝 Commits (5)

  • cafea1c Updated tinymce from 6.7.2 to 6.8.3
  • 3fdee6a Tables: Updated selection style to avoid scroll overflow
  • ed0718d Tables: Added fix to ensure proper clear formatting on cell selections
  • 8688ad9 Tables: Added menu items to clear formatting and sizes
  • 8f1d8ce Tables: Added dynamic table header toggle

📊 Changes

61 files changed (+237 additions, -51 deletions)

View changed files

📝 lang/en/editor.php (+3 -0)
📝 public/libs/tinymce/models/dom/model.min.js (+1 -1)
📝 public/libs/tinymce/plugins/advlist/plugin.min.js (+1 -1)
📝 public/libs/tinymce/plugins/anchor/plugin.min.js (+1 -1)
📝 public/libs/tinymce/plugins/autolink/plugin.min.js (+1 -1)
📝 public/libs/tinymce/plugins/autoresize/plugin.min.js (+1 -1)
📝 public/libs/tinymce/plugins/autosave/plugin.min.js (+1 -1)
📝 public/libs/tinymce/plugins/charmap/plugin.min.js (+1 -1)
📝 public/libs/tinymce/plugins/code/plugin.min.js (+1 -1)
📝 public/libs/tinymce/plugins/codesample/plugin.min.js (+1 -1)
📝 public/libs/tinymce/plugins/directionality/plugin.min.js (+1 -1)
📝 public/libs/tinymce/plugins/fullscreen/plugin.min.js (+2 -2)
📝 public/libs/tinymce/plugins/image/plugin.min.js (+2 -2)
📝 public/libs/tinymce/plugins/importcss/plugin.min.js (+2 -2)
📝 public/libs/tinymce/plugins/insertdatetime/plugin.min.js (+1 -1)
📝 public/libs/tinymce/plugins/link/plugin.min.js (+2 -2)
📝 public/libs/tinymce/plugins/lists/plugin.min.js (+2 -2)
📝 public/libs/tinymce/plugins/media/plugin.min.js (+2 -2)
📝 public/libs/tinymce/plugins/nonbreaking/plugin.min.js (+1 -1)
📝 public/libs/tinymce/plugins/pagebreak/plugin.min.js (+1 -1)

...and 41 more files

📄 Description

Range of fixes and improvements to handling tables, especially in regard to cleaning complex scenarios from tables imported from apps like word. We won't support all word-like content/formatting, but we can make handling that easier.

Related to #4845, #4844, #4843, #985

Changes

  • Updates TinyMCE to latest version.
  • Updates cell selection styles to avoid overflow scrolling on chromium browsers.
  • Adds some custom clear-format action handling to properly clear table cell styles on cell range selection.
  • Adds "Clear table formatting" menu option to remove styles/sizes from the table and everything within.
  • Adds "Resize to contents" menu option to remove just sizes from the table and everything within.

Todo

  • See if we can dynamically show table header row toggle on first row selection.
  • See if we can alter table menu to add:
    • Clear all table formatting option.
    • Clear all table sizing option (fit cells to content).
  • Fully test on edge in Win11 environment, with copied content from Word.

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/BookStackApp/BookStack/pull/4850 **Author:** [@ssddanbrown](https://github.com/ssddanbrown) **Created:** 2/15/2024 **Status:** ✅ Merged **Merged:** 2/17/2024 **Merged by:** [@ssddanbrown](https://github.com/ssddanbrown) **Base:** `development` ← **Head:** `table_improvements` --- ### 📝 Commits (5) - [`cafea1c`](https://github.com/BookStackApp/BookStack/commit/cafea1c02d61a30038babd2d5286762421537b65) Updated tinymce from 6.7.2 to 6.8.3 - [`3fdee6a`](https://github.com/BookStackApp/BookStack/commit/3fdee6a93befe6a5b41d0073dbf42b5ed3b158a2) Tables: Updated selection style to avoid scroll overflow - [`ed0718d`](https://github.com/BookStackApp/BookStack/commit/ed0718d3f7e5735832cb8ed326803cc9749cf58c) Tables: Added fix to ensure proper clear formatting on cell selections - [`8688ad9`](https://github.com/BookStackApp/BookStack/commit/8688ad99b6c867033233cbfc0b5de975a4b51417) Tables: Added menu items to clear formatting and sizes - [`8f1d8ce`](https://github.com/BookStackApp/BookStack/commit/8f1d8cef9e71a324b599f012622d7be8f8e1f09a) Tables: Added dynamic table header toggle ### 📊 Changes **61 files changed** (+237 additions, -51 deletions) <details> <summary>View changed files</summary> 📝 `lang/en/editor.php` (+3 -0) 📝 `public/libs/tinymce/models/dom/model.min.js` (+1 -1) 📝 `public/libs/tinymce/plugins/advlist/plugin.min.js` (+1 -1) 📝 `public/libs/tinymce/plugins/anchor/plugin.min.js` (+1 -1) 📝 `public/libs/tinymce/plugins/autolink/plugin.min.js` (+1 -1) 📝 `public/libs/tinymce/plugins/autoresize/plugin.min.js` (+1 -1) 📝 `public/libs/tinymce/plugins/autosave/plugin.min.js` (+1 -1) 📝 `public/libs/tinymce/plugins/charmap/plugin.min.js` (+1 -1) 📝 `public/libs/tinymce/plugins/code/plugin.min.js` (+1 -1) 📝 `public/libs/tinymce/plugins/codesample/plugin.min.js` (+1 -1) 📝 `public/libs/tinymce/plugins/directionality/plugin.min.js` (+1 -1) 📝 `public/libs/tinymce/plugins/fullscreen/plugin.min.js` (+2 -2) 📝 `public/libs/tinymce/plugins/image/plugin.min.js` (+2 -2) 📝 `public/libs/tinymce/plugins/importcss/plugin.min.js` (+2 -2) 📝 `public/libs/tinymce/plugins/insertdatetime/plugin.min.js` (+1 -1) 📝 `public/libs/tinymce/plugins/link/plugin.min.js` (+2 -2) 📝 `public/libs/tinymce/plugins/lists/plugin.min.js` (+2 -2) 📝 `public/libs/tinymce/plugins/media/plugin.min.js` (+2 -2) 📝 `public/libs/tinymce/plugins/nonbreaking/plugin.min.js` (+1 -1) 📝 `public/libs/tinymce/plugins/pagebreak/plugin.min.js` (+1 -1) _...and 41 more files_ </details> ### 📄 Description Range of fixes and improvements to handling tables, especially in regard to cleaning complex scenarios from tables imported from apps like word. We won't support all word-like content/formatting, but we can make handling that easier. Related to #4845, #4844, #4843, #985 ### Changes - Updates TinyMCE to latest version. - Updates cell selection styles to avoid overflow scrolling on chromium browsers. - Adds some custom clear-format action handling to properly clear table cell styles on cell range selection. - Adds "Clear table formatting" menu option to remove styles/sizes from the table and everything within. - Adds "Resize to contents" menu option to remove just sizes from the table and everything within. ### Todo - [x] See if we can dynamically show table header row toggle on first row selection. - [x] See if we can alter table menu to add: - [x] Clear all table formatting option. - [x] Clear all table sizing option (fit cells to content). - [x] Fully test on edge in Win11 environment, with copied content from Word. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
OVERLORD added the pull-request label 2026-02-05 10:31:44 +03:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/BookStack#6417