Hi, this week there were a lot of changes in code architecture. Overflow handling now is now similar to how AutoFit works: - a specific handler is triggered in ImpEditEng::FormatDoc if overflow occurs during editing - otherwise an appropriate drawinglayer primitive takes care of everything
As a consequence now overflowing is handled even during resizing. Problems with special cases, such as overflowing text in clones during resizing, have been treated appropriately with small non-too-hacky-looking portions of code. Next direction 1: one more sub-feature --------------------- For now only shrinking and overflow cause movements of text. The next step is to let text flow back into a previous link if enough space appears. If we dealt with overflow so far, next step is dealing with underflow. Next direction 2: issue fixing --------------------- There is a current occasional issue where non-overflowing text is copied in the destination box (instead of the overflowing one). To reproduce: - Have two boxes whose name start with "Chainable" (necessary to make them act as a chain atm); - Set the first box's text to "A random line" making sure to have enough space for it so that it fits on one line. - Shrink the first box from below so that only that one line fits (don't cause overflow yet) - Shrink the first box from the right edge so to cut the word "line". Expected behavior: "line" should be prepended to the second box; first box should contain only "A random". Observed behavior: second box get "A random" prepended; First box is empty. Next direction 3: fixing hacks --------------------------------------- Currently transfer of text in decomposition of static text is done by calling a special Outliner (a "chaining" outliner) from SdrModel. Besides being a quite ugly solution (a SdrModel has a new outliner adhoc for this specific feature) it would probably break when transfer of text occurs recursively in a chain of three of more boxes. Cheers, Matteo
_______________________________________________ LibreOffice mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/libreoffice
