[Libreoffice-commits] core.git: sw/qa sw/source sw/uiconfig
sw/qa/uitest/ui/misc/misc.py| 12 +++ sw/source/ui/misc/contentcontroldlg.cxx | 36 +++ sw/source/uibase/inc/contentcontroldlg.hxx |2 sw/uiconfig/swriter/ui/contentcontroldlg.ui | 85 +--- 4 files changed, 128 insertions(+), 7 deletions(-) New commits: commit 0d2a962c363632a890a994e7e143099c53ac4283 Author: Justin Luth AuthorDate: Thu Feb 23 15:40:02 2023 -0500 Commit: Miklos Vajna CommitDate: Mon Feb 27 07:26:17 2023 + tdf#151548 sw content controls: add UI for Id and TabIndex This is my first go at adding anything to the UI. (I've done some fixing of other people's design, but never created anything new myself.) I took all my inspiration from Miklos' add110bad816fadeb96e7af0d4689389c04c263e. In the first iteration I did a fancy "same as id" scenario. But ID-as-unsigned, securing unique IDs, and English-only number recognition sadly made me decide to drop the fancy features. Now, both are simple, stand-alone spinbuttons that depend on tooltips to guide user input, not fancy comboboxes. It is important for the ID to display as unsigned, since that is how it is used as a "name" in VBA. It should be copy-pasteable for use in VBA programming. It is useful for the TABINDEX to display as signed, since it allows entering a -1 to disable tab navigation to the control. make UITest_sw_ui_misc Change-Id: Ia7c99888e60c33ac39616b24c7c1715604c3ec69 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/147591 Tested-by: Jenkins Reviewed-by: Justin Luth Reviewed-by: Miklos Vajna diff --git a/sw/qa/uitest/ui/misc/misc.py b/sw/qa/uitest/ui/misc/misc.py index 2b6307cefb61..8af00054a5e6 100644 --- a/sw/qa/uitest/ui/misc/misc.py +++ b/sw/qa/uitest/ui/misc/misc.py @@ -26,6 +26,7 @@ class TestTmpdlg(UITestCase): contentControl = portion.ContentControl contentControl.Alias = "my alias" contentControl.Tag = "my tag" +contentControl.TabIndex = "1" listItems = contentControl.ListItems self.assertEqual(len(listItems), 1) self.assertEqual(listItems[0][0].Name, "DisplayText") @@ -42,6 +43,15 @@ class TestTmpdlg(UITestCase): self.assertEqual(get_state_as_dict(xTag)['Text'], "my tag") type_text(xTag, "new tag ") xAdd = xDialog.getChild("add") + +xId = xDialog.getChild("idspinbutton") +self.assertEqual(get_state_as_dict(xId)['Text'], "0") +type_text(xId, "429496729") # added in front, making it 4294967290 + +xTabIndex = xDialog.getChild("tabindexspinbutton") +self.assertEqual(get_state_as_dict(xTabIndex)['Text'], "1") +type_text(xTabIndex, "-") # add a minus in front, making it -1 + with self.ui_test.execute_blocking_action(xAdd.executeAction, args=('CLICK', ())) as xSubDialog: xDisplayName = xSubDialog.getChild("displayname") type_text(xDisplayName, "Foo Bar") @@ -57,6 +67,8 @@ class TestTmpdlg(UITestCase): self.assertEqual(listItems[1][1].Value, "foo-bar") self.assertEqual(contentControl.Alias, "new alias my alias") self.assertEqual(contentControl.Tag, "new tag my tag") +self.assertEqual(contentControl.Id, -6) # stored as signed, displays as unsigned +self.assertEqual(contentControl.TabIndex, 4294967295) # stored as unsigned, displays as signed # vim: set shiftwidth=4 softtabstop=4 expandtab: diff --git a/sw/source/ui/misc/contentcontroldlg.cxx b/sw/source/ui/misc/contentcontroldlg.cxx index 3aeeab3c6306..f318fa6a699e 100644 --- a/sw/source/ui/misc/contentcontroldlg.cxx +++ b/sw/source/ui/misc/contentcontroldlg.cxx @@ -40,6 +40,8 @@ SwContentControlDlg::SwContentControlDlg(weld::Window* pParent, SwWrtShell& rWrt , m_xShowingPlaceHolderCB(m_xBuilder->weld_check_button("showing_place_holder")) , m_xAlias(m_xBuilder->weld_entry("aliasentry")) , m_xTag(m_xBuilder->weld_entry("tagentry")) +, m_xId(m_xBuilder->weld_spin_button("idspinbutton")) +, m_xTabIndex(m_xBuilder->weld_spin_button("tabindexspinbutton")) , m_xCheckboxFrame(m_xBuilder->weld_frame("checkboxframe")) , m_xCheckedState(m_xBuilder->weld_entry("checkboxcheckedentry")) , m_xCheckedStateBtn(m_xBuilder->weld_button("btncheckboxchecked")) @@ -108,6 +110,28 @@ SwContentControlDlg::SwContentControlDlg(weld::Window* pParent, SwWrtShell& rWrt m_xTag->save_value(); } +// The ID is supposed to be a unique ID, but it isn't really used for much +// and in MS Word it (supposedly) is automatically made unique if it is a duplicate. +// The main purpose for having it here is lookup, not modification, +// since AFAIK the only use of the ID is for
[Libreoffice-commits] core.git: sw/qa sw/source sw/uiconfig
sw/qa/uitest/ui/misc/misc.py| 11 ++ sw/source/ui/misc/contentcontroldlg.cxx | 26 ++ sw/source/uibase/inc/contentcontroldlg.hxx |2 + sw/uiconfig/swriter/ui/contentcontroldlg.ui | 51 +++- 4 files changed, 89 insertions(+), 1 deletion(-) New commits: commit add110bad816fadeb96e7af0d4689389c04c263e Author: Miklos Vajna AuthorDate: Wed Oct 19 08:44:38 2022 +0200 Commit: Miklos Vajna CommitDate: Wed Oct 19 11:48:48 2022 +0200 sw content controls, alias and tag: add UI - add 2 new weld::Entry instances to edit these strings + matching labels - extend the grid to have 2 columns, as previously only a checkbox was there for all content controls, which only needed a single column, but now we want label + entry pairs in later rows - cover this with a UITest Change-Id: Ia5cfb90725d3b5b40eccf15ec7c7823e0e6d6751 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/141522 Reviewed-by: Miklos Vajna Tested-by: Jenkins diff --git a/sw/qa/uitest/ui/misc/misc.py b/sw/qa/uitest/ui/misc/misc.py index cf4554ce9638..2b6307cefb61 100644 --- a/sw/qa/uitest/ui/misc/misc.py +++ b/sw/qa/uitest/ui/misc/misc.py @@ -10,6 +10,7 @@ """Covers sw/source/ui/misc/ fixes.""" from uitest.framework import UITestCase +from uitest.uihelper.common import get_state_as_dict from uitest.uihelper.common import type_text @@ -23,6 +24,8 @@ class TestTmpdlg(UITestCase): portions = paragraph.createEnumeration() portion = portions.nextElement() contentControl = portion.ContentControl +contentControl.Alias = "my alias" +contentControl.Tag = "my tag" listItems = contentControl.ListItems self.assertEqual(len(listItems), 1) self.assertEqual(listItems[0][0].Name, "DisplayText") @@ -32,6 +35,12 @@ class TestTmpdlg(UITestCase): # Append a new list item. with self.ui_test.execute_dialog_through_command(".uno:ContentControlProperties") as xDialog: +xAlias = xDialog.getChild("aliasentry") +self.assertEqual(get_state_as_dict(xAlias)['Text'], "my alias") +type_text(xAlias, "new alias ") +xTag = xDialog.getChild("tagentry") +self.assertEqual(get_state_as_dict(xTag)['Text'], "my tag") +type_text(xTag, "new tag ") xAdd = xDialog.getChild("add") with self.ui_test.execute_blocking_action(xAdd.executeAction, args=('CLICK', ())) as xSubDialog: xDisplayName = xSubDialog.getChild("displayname") @@ -46,6 +55,8 @@ class TestTmpdlg(UITestCase): self.assertEqual(listItems[1][0].Value, "Foo Bar") self.assertEqual(listItems[1][1].Name, "Value") self.assertEqual(listItems[1][1].Value, "foo-bar") +self.assertEqual(contentControl.Alias, "new alias my alias") +self.assertEqual(contentControl.Tag, "new tag my tag") # vim: set shiftwidth=4 softtabstop=4 expandtab: diff --git a/sw/source/ui/misc/contentcontroldlg.cxx b/sw/source/ui/misc/contentcontroldlg.cxx index 11fe590f0413..c530795458a0 100644 --- a/sw/source/ui/misc/contentcontroldlg.cxx +++ b/sw/source/ui/misc/contentcontroldlg.cxx @@ -38,6 +38,8 @@ SwContentControlDlg::SwContentControlDlg(weld::Window* pParent, SwWrtShell& rWrt "ContentControlDialog") , m_rWrtShell(rWrtShell) , m_xShowingPlaceHolderCB(m_xBuilder->weld_check_button("showing_place_holder")) +, m_xAlias(m_xBuilder->weld_entry("aliasentry")) +, m_xTag(m_xBuilder->weld_entry("tagentry")) , m_xCheckboxFrame(m_xBuilder->weld_frame("checkboxframe")) , m_xCheckedState(m_xBuilder->weld_entry("checkboxcheckedentry")) , m_xCheckedStateBtn(m_xBuilder->weld_button("btncheckboxchecked")) @@ -94,6 +96,18 @@ SwContentControlDlg::SwContentControlDlg(weld::Window* pParent, SwWrtShell& rWrt m_xShowingPlaceHolderCB->set_state(eShowingPlaceHolder); m_xShowingPlaceHolderCB->save_state(); +if (!m_pContentControl->GetAlias().isEmpty()) +{ +m_xAlias->set_text(m_pContentControl->GetAlias()); +m_xAlias->save_value(); +} + +if (!m_pContentControl->GetTag().isEmpty()) +{ +m_xTag->set_text(m_pContentControl->GetTag()); +m_xTag->save_value(); +} + if (m_pContentControl->GetCheckbox()) { m_xCheckedState->set_text(m_pContentControl->GetCheckedState()); @@ -176,6 +190,18 @@ IMPL_LINK_NOARG(SwContentControlDlg, OkHdl, weld::Button&, void) bChanged = true; } +if (m_xAlias->get_value_changed_from_saved()) +{ +m_pContentControl->SetAlias(m_xAlias->get_text()); +bChanged = true; +} + +if (m_xTag->get_value_changed_from_saved()) +{ +m_pContentControl->SetTag(m_xTag->get_text()); +
[Libreoffice-commits] core.git: sw/qa sw/source sw/uiconfig
sw/qa/extras/layout/data/tdf150717.odt |binary sw/qa/extras/layout/data/tdf150790.fodt |9 +++ sw/qa/extras/layout/layout2.cxx | 31 sw/qa/extras/mailmerge/mailmerge.cxx| 17 +- sw/qa/extras/ooxmlexport/ooxmlexport3.cxx |3 + sw/qa/extras/ooxmlimport/ooxmlimport.cxx| 28 +++ sw/source/core/access/accportions.cxx |3 - sw/source/core/inc/scriptinfo.hxx |6 +- sw/source/core/text/itrform2.cxx| 33 ++--- sw/source/core/text/porlay.cxx | 62 - sw/source/core/text/porrst.cxx | 69 +++- sw/source/core/text/porrst.hxx | 23 - sw/uiconfig/swriter/ui/optformataidspage.ui |6 +- 13 files changed, 207 insertions(+), 83 deletions(-) New commits: commit 5e71ec6aa0d4f9971f5e2b6f7091d18668c2f0b9 Author: László Németh AuthorDate: Fri Sep 2 19:50:14 2022 +0200 Commit: László Németh CommitDate: Fri Sep 16 11:32:55 2022 +0200 tdf#150790 tdf#150791 tdf#150947 tdf#150956 sw, a11y: fix visible bookmarks Fix bookmark visibility (see Tools -> Options -> LibreOffice Writer -> Formatting Aids -> Bookmarks): – tdf#150791 Paint I-beam symbol (⌶) for point bookmarks instead of a vertical line (which was overlapped with visible page margin at beginning of the paragraphs, also it was very similar to the NBSP and narrow NBSP shading). Modify associated dialog window label in optformataidspage.ui according to this. – tdf#150790 Neighboring bookmark ranges are shown as ][ instead of a single vertical line (which could not be distinguished from point bookmark symbol and overlapping page border). Note: this has been implemented for bookmarks with metadata colors since commit 412e0ab26618c38f548c340f85ef63bbe73ef6b2 "tdf#150717 sw RDF metadata: add custom color bookmark boundary marks". – Multiple bookmarks at the same character position are visible now, e.g. instead of a single |, neighboring bookmarks with point bookmarks are shown as "] ⌶ [" or "] ] ⌶ ⌶ [ [" etc. – tdf#150956 Do not show hidden _Toc and _Ref bookmarks imported from OOXML, like MSO does. Add bookmark accessibility and layout dump: – Add SwBookmarkPortion::HandlePortion() to return with bookmark names and types, e.g. for ] ⌶ [ as "#Name1 Bookmark End#Name2 Bookmark#Name3 Bookmark Start" (where "Name1"–"Name3" are names of the bookmarks, while "Bookmark", "End" and "Start" are localized versions of these strings), allowing XML layout dump of bookmark data. – tdf#150947 Extend SwAccessiblePortionData::Special() to forward the previous HandlePortion() bookmark data to screen readers depending on bookmark visibility (i.e. SwViewOption::IsShowBookmarks()). – Add unit tests based on the extended XML layout dump, also adjust existing unit tests. More visibility fixes: – multiple start marks of range bookmarks positioned before the character position, multiple end marks of range bookmarks positioned after the character position, i.e. single type boundary marks are there outside of the bookmark text some |text| here [[]] – neighboring end and start marks are centered around the character position: |text1|text2| []] [[] – marks of the same character position are sorted based on their type and metadata color: – mark order: ], ⌶, [, e.g. ] ] ⌶ ⌶ [ [ [ – color order: reversed at bookmark end, e.g. [c1 [c2 [c3 ... c3] c2] c1] Follow-up to commit 412e0ab26618c38f548c340f85ef63bbe73ef6b2 "tdf#150717 sw RDF metadata: add custom color bookmark boundary marks" and commit 4ce8120f1e53f7b81e653b01d141643013bc69ab "tdf#45589 sw: create and paint text portions for bookmarks". Change-Id: Ia53903efbc44a531338b8615d9812d6da270e39f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139817 Tested-by: Jenkins Reviewed-by: László Németh diff --git a/sw/qa/extras/layout/data/tdf150717.odt b/sw/qa/extras/layout/data/tdf150717.odt new file mode 100644 index ..f3a7c4e7d586 Binary files /dev/null and b/sw/qa/extras/layout/data/tdf150717.odt differ diff --git a/sw/qa/extras/layout/data/tdf150790.fodt b/sw/qa/extras/layout/data/tdf150790.fodt new file mode 100644 index ..33ff6fa1054e --- /dev/null +++ b/sw/qa/extras/layout/data/tdf150790.fodt @@ -0,0 +1,9 @@ + +http://openoffice.org/2004/writer; office:mimetype="application/vnd.oasis.opendocument.text"> + + + point bookmark + neighboring range bookmarks + + + diff --git a/sw/qa/extras/layout/layout2.cxx b/sw/qa/extras/layout/layout2.cxx index a9296b900f48..208bdf908d19 100644 ---
[Libreoffice-commits] core.git: sw/qa sw/source sw/uiconfig
sw/qa/extras/ooxmlexport/ooxmlexport13.cxx |2 +- sw/source/filter/ww8/wrtw8sty.cxx |6 +- sw/uiconfig/swriter/ui/optcompatpage.ui|2 +- 3 files changed, 3 insertions(+), 7 deletions(-) New commits: commit d57735bad093d028d69d131672c71308acf02f74 Author: Justin Luth AuthorDate: Thu May 2 21:59:33 2019 +0300 Commit: Justin Luth CommitDate: Sat May 25 07:36:25 2019 +0200 revert tdf#123912 ww8 export: re-protect implicit section Revert LO 6.3 bugfix d9a6eab15a747cf4c8a3d04f4b21fe1a1c3d0721 because LO has changed the behaviour of implicit sections when Protect Forms is enabled. Now they are editable, making the Protect Form compatibility option nearly useless. (tdf#122201 commit d9a6eab15a747cf4c8a3d04f4b21fe1a1c3d0721 which was backported to LO 6.2). Since implicit sections are now editable in LO, they should export as editable. See tdf#124451 for a one-sided discussion about this. Since many people may have used this switch as a simple way to create a protected form in the past, document this change and point to sections as the way to set protection natively. Protect Form is now only good for protecting the form field itself from being deleted while the user is filling out the form, and that is true only for legacy sw::mark::IFieldmark form fields which have no UI in LO for adding them (.doc compatibility forms). Change-Id: I938f015fe63c22e831654e96de77b5809bb924ff Reviewed-on: https://gerrit.libreoffice.org/71716 Tested-by: Jenkins Reviewed-by: Justin Luth diff --git a/sw/qa/extras/ooxmlexport/ooxmlexport13.cxx b/sw/qa/extras/ooxmlexport/ooxmlexport13.cxx index b7d5132c47c2..4254a619e17a 100644 --- a/sw/qa/extras/ooxmlexport/ooxmlexport13.cxx +++ b/sw/qa/extras/ooxmlexport/ooxmlexport13.cxx @@ -135,7 +135,7 @@ DECLARE_OOXMLEXPORT_TEST(tdf123912_protectedForm, "tdf123912_protectedForm.odt") uno::Reference xSections(xTextSectionsSupplier->getTextSections(), uno::UNO_QUERY); uno::Reference xSect(xSections->getByIndex(0), uno::UNO_QUERY); if ( xSect.is() ) -CPPUNIT_ASSERT_EQUAL_MESSAGE("Section1 is protected", true, getProperty(xSect, "IsProtected")); +CPPUNIT_ASSERT_EQUAL_MESSAGE("Section1 is protected", false, getProperty(xSect, "IsProtected")); } DECLARE_OOXMLEXPORT_TEST(testDateControl, "empty-date-control.odt") diff --git a/sw/source/filter/ww8/wrtw8sty.cxx b/sw/source/filter/ww8/wrtw8sty.cxx index 8725e7474278..1ec391a298b8 100644 --- a/sw/source/filter/ww8/wrtw8sty.cxx +++ b/sw/source/filter/ww8/wrtw8sty.cxx @@ -1520,11 +1520,7 @@ void MSWordExportBase::SectionProperties( const WW8_SepInfo& rSepInfo, WW8_PdAtt AttrOutput().SectFootnoteEndnotePr(); // forms -bool bFormProtection = rSepInfo.IsProtected(); -// use document settings when SepInfo has no protect settings (last section fragment or no sections at all) -if ( !rSepInfo.pSectionFormat || (reinterpret_cast(sal_IntPtr(-1)) == rSepInfo.pSectionFormat) ) -bFormProtection |= m_pDoc->getIDocumentSettingAccess().get( DocumentSettingId::PROTECT_FORM ); -AttrOutput().SectionFormProtection( bFormProtection ); +AttrOutput().SectionFormProtection( rSepInfo.IsProtected() ); // line numbers const SwLineNumberInfo& rLnNumInfo = m_pDoc->GetLineNumberInfo(); diff --git a/sw/uiconfig/swriter/ui/optcompatpage.ui b/sw/uiconfig/swriter/ui/optcompatpage.ui index 3965324f43bb..1e2942b79c21 100644 --- a/sw/uiconfig/swriter/ui/optcompatpage.ui +++ b/sw/uiconfig/swriter/ui/optcompatpage.ui @@ -66,7 +66,7 @@ Use OpenOffice.org 1.1 text wrapping around objects Consider wrapping style when positioning objects Expand word space on lines with manual line breaks in justified paragraphs - Protect form + Protect form (no longer protects whole document. Insert write protected section instead) Word-compatible trailing blanks Tolerate white lines of PDF page backgrounds for compatibility with old documents Hide paragraphs of database fields (e.g., mail merge) with an empty value ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: sw/qa sw/source sw/uiconfig
sw/qa/uitest/table/tableProperties.py | 12 ++-- sw/source/ui/table/tabledlg.cxx |2 +- sw/uiconfig/swriter/ui/tabletextflowpage.ui |7 --- 3 files changed, 11 insertions(+), 10 deletions(-) New commits: commit 081b753d4cb4f4a25073ca7de12a7bdaa9fc2be4 Author: Miklos Vajna AuthorDate: Wed Feb 13 18:32:31 2019 +0100 Commit: Miklos Vajna CommitDate: Wed Feb 13 19:52:53 2019 +0100 sw btlr writing mode: add UI for this There was only horizontal and vertical previously, so keep things simple and talk about the BT and TB version of vertical, not mentioning the LR/RL aspect. Also rename the textdirection widget, so it's unique not only within the tab page, but inside the dialog, so we can have uitest coverage for this. Change-Id: Ie396898fde03aca6cd37a29f049099fa4b2c5fc0 Reviewed-on: https://gerrit.libreoffice.org/67789 Reviewed-by: Miklos Vajna Tested-by: Jenkins diff --git a/sw/qa/uitest/table/tableProperties.py b/sw/qa/uitest/table/tableProperties.py index 009a807aa4b0..882ae0976ab2 100644 --- a/sw/qa/uitest/table/tableProperties.py +++ b/sw/qa/uitest/table/tableProperties.py @@ -121,10 +121,10 @@ class tableProperties(UITestCase): keep.executeAction("CLICK", tuple()) headline = xDialog.getChild("headline") headline.executeAction("CLICK", tuple()) -#textdirection = xDialog.getChild("textdirection") #the name of the ui item is not unique -#props = {"TEXT": "Vertical"} -#actionProps = mkPropertyValues(props) -#textdirection.executeAction("SELECT", actionProps) +textdirection = xDialog.getChild("textorientation") +props = {"TEXT": "Vertical (bottom to top)"} +actionProps = mkPropertyValues(props) +textdirection.executeAction("SELECT", actionProps) vertorient = xDialog.getChild("vertorient") props2 = {"TEXT": "Bottom"} actionProps2 = mkPropertyValues(props2) @@ -147,8 +147,8 @@ class tableProperties(UITestCase): self.assertEqual(get_state_as_dict(keep)["Selected"], "true") headline = xDialog.getChild("headline") self.assertEqual(get_state_as_dict(headline)["Selected"], "true") -#textdirection = xDialog.getChild("textdirection") -#self.assertEqual(get_state_as_dict(textdirection)["SelectEntryText"], "Vertical") +textdirection = xDialog.getChild("textorientation") +self.assertEqual(get_state_as_dict(textdirection)["SelectEntryText"], "Vertical (bottom to top)") vertorient = xDialog.getChild("vertorient") self.assertEqual(get_state_as_dict(vertorient)["SelectEntryText"], "Bottom") xOKBtn = xDialog.getChild("ok") diff --git a/sw/source/ui/table/tabledlg.cxx b/sw/source/ui/table/tabledlg.cxx index 3a4f5463b962..88cf8e2d0e11 100644 --- a/sw/source/ui/table/tabledlg.cxx +++ b/sw/source/ui/table/tabledlg.cxx @@ -1226,7 +1226,7 @@ SwTextFlowPage::SwTextFlowPage(TabPageParent pParent, const SfxItemSet& rSet) , m_xHeadLineCB(m_xBuilder->weld_check_button("headline")) , m_xRepeatHeaderCombo(m_xBuilder->weld_widget("repeatheader")) , m_xRepeatHeaderNF(m_xBuilder->weld_spin_button("repeatheadernf")) -, m_xTextDirectionLB(m_xBuilder->weld_combo_box("textdirection")) +, m_xTextDirectionLB(m_xBuilder->weld_combo_box("textorientation")) , m_xVertOrientLB(m_xBuilder->weld_combo_box("vertorient")) { m_xPgBrkCB->connect_toggled(LINK(this, SwTextFlowPage, PageBreakHdl_Impl)); diff --git a/sw/uiconfig/swriter/ui/tabletextflowpage.ui b/sw/uiconfig/swriter/ui/tabletextflowpage.ui index 6ac2c41ab08e..ef46e8eafc96 100644 --- a/sw/uiconfig/swriter/ui/tabletextflowpage.ui +++ b/sw/uiconfig/swriter/ui/tabletextflowpage.ui @@ -283,7 +283,7 @@ False Text _orientation True -textdirection +textorientation 0 @@ -291,13 +291,14 @@ - + True False Horizontal - Vertical + Vertical (top to bottom) Use superordinate object settings + Vertical (bottom to top) ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits