Bug 158081 - Fourth part of multi-page floating tables
Summary: Fourth part of multi-page floating tables
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Writer (show other bugs)
(earliest affected)
Hardware: All All
: medium normal
Assignee: Miklos Vajna
Depends on:
Blocks: DOCX-Floatingtable
  Show dependency treegraph
Reported: 2023-11-06 08:02 UTC by Miklos Vajna
Modified: 2023-12-19 07:22 UTC (History)
3 users (show)

See Also:
Crash report or crash signature:

Layout crash (16.47 KB, application/vnd.openxmlformats-officedocument.wordprocessingml.document)
2023-11-21 07:46 UTC, Miklos Vajna
Mouse click problem reproducer (12.25 KB, application/vnd.openxmlformats-officedocument.wordprocessingml.document)
2023-11-30 07:28 UTC, Miklos Vajna
Smaller reproducer for bug 60558 (12.43 KB, application/vnd.openxmlformats-officedocument.wordprocessingml.document)
2023-12-04 07:52 UTC, Miklos Vajna
Anchor text loop (12.73 KB, application/vnd.openxmlformats-officedocument.wordprocessingml.document)
2023-12-11 09:00 UTC, Miklos Vajna

Note You need to log in before you can comment on or make changes to this bug.
Description Miklos Vajna 2023-11-06 08:02:56 UTC
This bug is meant to document the efforts around multi-page floating tables in Writer. Progress so far was documented in bug 157119, but many related problems are still there.
Comment 1 Miklos Vajna 2023-11-06 08:03:48 UTC
https://gerrit.libreoffice.org/c/core/+/158978 is work towards an insert frame UI. This is already working on the desktop, but the async / jsdialog bits were missing for LOK clients.
Comment 2 Miklos Vajna 2023-11-07 08:12:58 UTC
https://gerrit.libreoffice.org/c/core/+/159050 fixes the default frame width on inserting a new frame.
Comment 3 Miklos Vajna 2023-11-08 07:26:21 UTC
https://gerrit.libreoffice.org/c/core/+/159104 fixes the default floating table width, to inherit it from the underlying table.
Comment 4 Miklos Vajna 2023-11-09 08:09:17 UTC
https://gerrit.libreoffice.org/c/core/+/159201 fixes the missing "floating table" checkbox in the insert frame dialog when an entire table is selected.
Comment 5 Miklos Vajna 2023-11-10 07:28:06 UTC
https://gerrit.libreoffice.org/c/core/+/159261 fixes the bad default anchor of new text frames: now the default is consistent with images and only floating tables default to at-para.
Comment 6 Miklos Vajna 2023-11-13 07:50:32 UTC
https://gerrit.libreoffice.org/c/core/+/159354 fixes the undo/redo support for the floattable insert UI.
Comment 7 Miklos Vajna 2023-11-14 14:25:03 UTC
 131bd6561c82c4a5e408c705cd94cf6452de8dc5 fixes the not wanted border / spacing when turning an inline table into a floating one.
Comment 8 Miklos Vajna 2023-11-15 09:21:14 UTC
https://gerrit.libreoffice.org/c/core/+/159429 fixes an unexpected half-border problem. (Border is inferred, but only partially.)
Comment 9 Miklos Vajna 2023-11-16 07:31:53 UTC
https://gerrit.libreoffice.org/c/core/+/159493 fixes the old-style unfloat button to work again after welding. this is for legacy ODT files, but it's a good starting point to have it working again.
Comment 10 Miklos Vajna 2023-11-17 07:33:09 UTC
https://gerrit.libreoffice.org/c/core/+/159550 adds a context menu item to unfloat tables, i.e. floattable delete UI.
Comment 11 Miklos Vajna 2023-11-20 07:45:20 UTC
https://gerrit.libreoffice.org/c/core/+/159730 fixes undo/redo for the delete/unfloat UI
Comment 12 Miklos Vajna 2023-11-21 07:46:13 UTC
Created attachment 190927 [details]
Layout crash

I attach a simplified DOCX bugdoc. The original one is 8 pages and is a binary DOC one, but this is created from scratch (so can be published) and seems it triggers the same problem.
Comment 13 Miklos Vajna 2023-11-22 08:57:44 UTC
https://gerrit.libreoffice.org/c/core/+/159802 fixes the crash with the above bugdoc
Comment 14 Miklos Vajna 2023-11-23 07:50:45 UTC
https://gerrit.libreoffice.org/c/core/+/159847 starts adding support for per-frame "wrap an all pages", as required by https://issues.oasis-open.org/browse/OFFICE-4150
Comment 15 Miklos Vajna 2023-11-24 07:41:49 UTC
https://gerrit.libreoffice.org/c/core/+/159888 adds uno api for the per-frame wrap-on-all-pages mode
Comment 16 Miklos Vajna 2023-11-28 07:55:42 UTC
https://gerrit.libreoffice.org/c/core/+/160010 adds ODT filter for the per-frame wrap-on-all-pages mode
Comment 17 Miklos Vajna 2023-11-29 07:36:21 UTC
https://gerrit.libreoffice.org/c/core/+/160061 fixes a layout loop from bug 158341
Comment 18 Miklos Vajna 2023-11-30 07:28:58 UTC
Created attachment 191131 [details]
Mouse click problem reproducer

Open this document and click slightly on the right of the table on page 1. The cursor will jump to the second page, i.e. the anchor paragraph on the last page of a multi-page floating table. The same works for inline tables as expected.
Comment 19 Miklos Vajna 2023-12-01 08:48:34 UTC
https://gerrit.libreoffice.org/c/core/+/160194 fixes the above problem
Comment 20 Miklos Vajna 2023-12-04 07:52:18 UTC
Created attachment 191213 [details]
Smaller reproducer for bug 60558

I started to look at this, let's ignore the complex shapes in table cells for now, they are probably not relevant for the root of the bug.
Comment 21 Miklos Vajna 2023-12-05 07:41:43 UTC
https://gerrit.libreoffice.org/c/core/+/160331 fixes inline tables wrapping around floating tables.
Comment 22 Miklos Vajna 2023-12-06 16:04:50 UTC
I've investigated bug 137859, but it turns out it's the same problem what I fixed for bug 158341, so it's a duplicate.
Comment 23 Miklos Vajna 2023-12-11 09:00:53 UTC
Created attachment 191351 [details]
Anchor text loop

Place the cursor between "A" and "B" at the end of the document. Press enter -> layout loop. I'm looking into this.
Comment 24 Miklos Vajna 2023-12-12 07:50:54 UTC
https://gerrit.libreoffice.org/c/core/+/160608 fixes the layout loop for the above scenario.
Comment 25 Miklos Vajna 2023-12-13 07:48:06 UTC
https://gerrit.libreoffice.org/c/core/+/160669 fixes the odd behavior when splitting the anchor text at the paragraph start
Comment 26 Miklos Vajna 2023-12-14 09:50:34 UTC
https://gerrit.libreoffice.org/c/core/+/160748 finishes the anchor split topic
Comment 27 Miklos Vajna 2023-12-15 13:10:50 UTC
https://gerrit.libreoffice.org/c/core/+/160814 disables floating tables in shape text (similar to how the Word UI is disabled); so users less likely create documents which can't save to Word formats
Comment 28 Miklos Vajna 2023-12-18 08:41:17 UTC
Started on bug 158686, a crash on switching to print preview, regression from this work.
Comment 29 Miklos Vajna 2023-12-19 07:22:24 UTC
https://gerrit.libreoffice.org/c/core/+/160925 fixes bug 158686.