Resolves tdf#160937 - Improve dialog size for document properties

linefragment.ui and documentinfopage.ui modified to keep
the usual dialog dimension

Change-Id: I1777e4094e584d676a48855717827aaed413e251
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168139
Tested-by: Jenkins
Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
diff --git a/include/sfx2/dinfdlg.hxx b/include/sfx2/dinfdlg.hxx
index d4743ed..c602a94 100644
--- a/include/sfx2/dinfdlg.hxx
+++ b/include/sfx2/dinfdlg.hxx
@@ -244,16 +244,31 @@ private:
    std::unique_ptr<weld::Entry> m_xTitleEd;
    std::unique_ptr<weld::Entry> m_xThemaEd;
    std::unique_ptr<weld::Entry> m_xKeywordsEd;
    std::unique_ptr<weld::Entry> m_xContributorEd;
    std::unique_ptr<weld::Entry> m_xCoverageEd;
    std::unique_ptr<weld::Entry> m_xIdentifierEd;
    std::unique_ptr<weld::Entry> m_xPublisherEd;
    std::unique_ptr<weld::Entry> m_xRelationEd;
    std::unique_ptr<weld::Entry> m_xRightsEd;
    std::unique_ptr<weld::Entry> m_xSourceEd;
    std::unique_ptr<weld::Entry> m_xTypeEd;
    std::unique_ptr<weld::ComboBox> m_xMoreTypes;
    std::unique_ptr<weld::Entry> m_xMoreValue;
    std::unique_ptr<weld::TextView> m_xCommentEd;

    DECL_LINK(MoreTypesHdl, weld::ComboBox&, void);
    DECL_LINK(MoreValueHdl, weld::Entry&, void);

    OUString m_sMoreValue_Contributor;
    OUString m_sMoreValue_Coverage;
    OUString m_sMoreValue_Identifier;
    OUString m_sMoreValue_Publisher;
    OUString m_sMoreValue_Relation;
    OUString m_sMoreValue_Rights;
    OUString m_sMoreValue_Source;
    OUString m_sMoreValue_Type;

    OUString m_sMoreValue_Contributor_Stored;
    OUString m_sMoreValue_Coverage_Stored;
    OUString m_sMoreValue_Identifier_Stored;
    OUString m_sMoreValue_Publisher_Stored;
    OUString m_sMoreValue_Relation_Stored;
    OUString m_sMoreValue_Rights_Stored;
    OUString m_sMoreValue_Source_Stored;
    OUString m_sMoreValue_Type_Stored;

    virtual bool            FillItemSet( SfxItemSet* ) override;
    virtual void            Reset( const SfxItemSet* ) override;

diff --git a/sfx2/source/dialog/dinfdlg.cxx b/sfx2/source/dialog/dinfdlg.cxx
index b1e5dbd..80387ea 100644
--- a/sfx2/source/dialog/dinfdlg.cxx
+++ b/sfx2/source/dialog/dinfdlg.cxx
@@ -624,18 +624,14 @@ SfxDocumentDescPage::SfxDocumentDescPage(weld::Container* pPage, weld::DialogCon
    , m_xTitleEd(m_xBuilder->weld_entry(u"title"_ustr))
    , m_xThemaEd(m_xBuilder->weld_entry(u"subject"_ustr))
    , m_xKeywordsEd(m_xBuilder->weld_entry(u"keywords"_ustr))
    , m_xContributorEd(m_xBuilder->weld_entry(u"contributor"_ustr))
    , m_xCoverageEd(m_xBuilder->weld_entry(u"coverage"_ustr))
    , m_xIdentifierEd(m_xBuilder->weld_entry(u"identifier"_ustr))
    , m_xPublisherEd(m_xBuilder->weld_entry(u"publisher"_ustr))
    , m_xRelationEd(m_xBuilder->weld_entry(u"relation"_ustr))
    , m_xRightsEd(m_xBuilder->weld_entry(u"rights"_ustr))
    , m_xSourceEd(m_xBuilder->weld_entry(u"source"_ustr))
    , m_xTypeEd(m_xBuilder->weld_entry(u"type"_ustr))
    , m_xMoreTypes(m_xBuilder->weld_combo_box("cbMoreTypes"))
    , m_xMoreValue(m_xBuilder->weld_entry("edMoreValue"))
    , m_xCommentEd(m_xBuilder->weld_text_view(u"comments"_ustr))
{
    m_xCommentEd->set_size_request(m_xKeywordsEd->get_preferred_size().Width(),
                                   m_xCommentEd->get_height_rows(16));
    m_xCommentEd->set_size_request(-1, //m_xKeywordsEd->get_preferred_size().Width(),
                                   m_xCommentEd->get_height_rows(8));
    m_xMoreTypes->connect_changed(LINK(this, SfxDocumentDescPage, MoreTypesHdl));
    m_xMoreValue->connect_changed(LINK(this, SfxDocumentDescPage, MoreValueHdl));
}

SfxDocumentDescPage::~SfxDocumentDescPage()
@@ -653,14 +649,16 @@ bool SfxDocumentDescPage::FillItemSet(SfxItemSet *rSet)
    const bool bTitleMod = m_xTitleEd->get_value_changed_from_saved();
    const bool bThemeMod = m_xThemaEd->get_value_changed_from_saved();
    const bool bKeywordsMod = m_xKeywordsEd->get_value_changed_from_saved();
    const bool bContributorMod = m_xContributorEd->get_value_changed_from_saved();
    const bool bCoverageMod = m_xCoverageEd->get_value_changed_from_saved();
    const bool bIdentifierMod = m_xIdentifierEd->get_value_changed_from_saved();
    const bool bPublisherMod = m_xPublisherEd->get_value_changed_from_saved();
    const bool bRelationMod = m_xRelationEd->get_value_changed_from_saved();
    const bool bRightsMod = m_xRightsEd->get_value_changed_from_saved();
    const bool bSourceMod = m_xSourceEd->get_value_changed_from_saved();
    const bool bTypeMod = m_xTypeEd->get_value_changed_from_saved();

    const bool bContributorMod = m_sMoreValue_Contributor != m_sMoreValue_Contributor_Stored;
    const bool bCoverageMod = m_sMoreValue_Coverage != m_sMoreValue_Coverage_Stored;
    const bool bIdentifierMod = m_sMoreValue_Identifier != m_sMoreValue_Identifier_Stored;
    const bool bPublisherMod = m_sMoreValue_Publisher != m_sMoreValue_Publisher_Stored;
    const bool bRelationMod = m_sMoreValue_Relation != m_sMoreValue_Relation_Stored;
    const bool bRightsMod = m_sMoreValue_Rights != m_sMoreValue_Rights_Stored;
    const bool bSourceMod = m_sMoreValue_Source != m_sMoreValue_Source_Stored;
    const bool bTypeMod = m_sMoreValue_Type != m_sMoreValue_Type_Stored;

    const bool bCommentMod = m_xCommentEd->get_value_changed_from_saved();
    if (!(bTitleMod || bThemeMod || bKeywordsMod || bTitleMod || bThemeMod || bKeywordsMod
          || bContributorMod || bCoverageMod || bIdentifierMod || bPublisherMod || bRelationMod
@@ -699,35 +697,35 @@ bool SfxDocumentDescPage::FillItemSet(SfxItemSet *rSet)
    }
    if (bContributorMod)
    {
        pInfo->setContributor(m_xContributorEd->get_text());
        pInfo->setContributor(m_sMoreValue_Contributor);
    }
    if (bCoverageMod)
    {
        pInfo->setCoverage(m_xCoverageEd->get_text());
        pInfo->setCoverage(m_sMoreValue_Coverage);
    }
    if (bIdentifierMod)
    {
        pInfo->setIdentifier(m_xIdentifierEd->get_text());
        pInfo->setIdentifier(m_sMoreValue_Identifier);
    }
    if (bPublisherMod)
    {
        pInfo->setPublisher(m_xPublisherEd->get_text());
        pInfo->setPublisher(m_sMoreValue_Publisher);
    }
    if (bRelationMod)
    {
        pInfo->setRelation(m_xRelationEd->get_text());
        pInfo->setRelation(m_sMoreValue_Relation);
    }
    if (bRightsMod)
    {
        pInfo->setRights(m_xRightsEd->get_text());
        pInfo->setRights(m_sMoreValue_Rights);
    }
    if (bSourceMod)
    {
        pInfo->setSource(m_xSourceEd->get_text());
        pInfo->setSource(m_sMoreValue_Source);
    }
    if (bTypeMod)
    {
        pInfo->setType(m_xTypeEd->get_text());
        pInfo->setType(m_sMoreValue_Type);
    }
    if ( bCommentMod )
    {
@@ -750,27 +748,32 @@ void SfxDocumentDescPage::Reset(const SfxItemSet *rSet)
    m_xTitleEd->set_text(m_pInfoItem->getTitle());
    m_xThemaEd->set_text(m_pInfoItem->getSubject());
    m_xKeywordsEd->set_text(m_pInfoItem->getKeywords());
    m_xContributorEd->set_text(m_pInfoItem->getContributor());
    m_xCoverageEd->set_text(m_pInfoItem->getCoverage());
    m_xIdentifierEd->set_text(m_pInfoItem->getIdentifier());
    m_xPublisherEd->set_text(m_pInfoItem->getPublisher());
    m_xRelationEd->set_text(m_pInfoItem->getRelation());
    m_xRightsEd->set_text(m_pInfoItem->getRights());
    m_xSourceEd->set_text(m_pInfoItem->getSource());
    m_xTypeEd->set_text(m_pInfoItem->getType());

    m_sMoreValue_Contributor = m_pInfoItem->getContributor();
    m_sMoreValue_Coverage = m_pInfoItem->getCoverage();
    m_sMoreValue_Identifier = m_pInfoItem->getIdentifier();
    m_sMoreValue_Publisher = m_pInfoItem->getPublisher();
    m_sMoreValue_Relation = m_pInfoItem->getRelation();
    m_sMoreValue_Rights = m_pInfoItem->getRights();
    m_sMoreValue_Source = m_pInfoItem->getSource();
    m_sMoreValue_Type = m_pInfoItem->getType();
    m_xCommentEd->set_text(m_pInfoItem->getDescription());

    MoreTypesHdl(*m_xMoreTypes); //triggers m_xMoreValue update

    m_xTitleEd->save_value();
    m_xThemaEd->save_value();
    m_xKeywordsEd->save_value();
    m_xContributorEd->save_value();
    m_xCoverageEd->save_value();
    m_xIdentifierEd->save_value();
    m_xPublisherEd->save_value();
    m_xRelationEd->save_value();
    m_xRightsEd->save_value();
    m_xSourceEd->save_value();
    m_xTypeEd->save_value();

    m_sMoreValue_Contributor_Stored = m_sMoreValue_Contributor;
    m_sMoreValue_Coverage_Stored = m_sMoreValue_Coverage;
    m_sMoreValue_Identifier_Stored = m_sMoreValue_Identifier;
    m_sMoreValue_Publisher_Stored = m_sMoreValue_Publisher;
    m_sMoreValue_Relation_Stored = m_sMoreValue_Relation;
    m_sMoreValue_Rights_Stored = m_sMoreValue_Rights;
    m_sMoreValue_Source_Stored = m_sMoreValue_Source;
    m_sMoreValue_Type_Stored = m_sMoreValue_Type;

    m_xCommentEd->save_value();

    const SfxBoolItem* pROItem = SfxItemSet::GetItem<SfxBoolItem>(rSet, SID_DOC_READONLY, false);
@@ -779,18 +782,45 @@ void SfxDocumentDescPage::Reset(const SfxItemSet *rSet)
        m_xTitleEd->set_editable(false);
        m_xThemaEd->set_editable(false);
        m_xKeywordsEd->set_editable(false);
        m_xContributorEd->set_editable(false);
        m_xCoverageEd->set_editable(false);
        m_xIdentifierEd->set_editable(false);
        m_xPublisherEd->set_editable(false);
        m_xRelationEd->set_editable(false);
        m_xRightsEd->set_editable(false);
        m_xSourceEd->set_editable(false);
        m_xTypeEd->set_editable(false);
        m_xMoreValue->set_editable(false);
        m_xCommentEd->set_editable(false);
    }
}

IMPL_LINK_NOARG(SfxDocumentDescPage, MoreValueHdl, weld::Entry&, void)
{
    switch (m_xMoreTypes->get_active())
    {
        case 0: m_sMoreValue_Contributor = m_xMoreValue->get_text(); break;
        case 1: m_sMoreValue_Coverage = m_xMoreValue->get_text(); break;
        case 2: m_sMoreValue_Identifier = m_xMoreValue->get_text(); break;
        case 3: m_sMoreValue_Publisher = m_xMoreValue->get_text(); break;
        case 4: m_sMoreValue_Relation = m_xMoreValue->get_text(); break;
        case 5: m_sMoreValue_Rights = m_xMoreValue->get_text(); break;
        case 6: m_sMoreValue_Source = m_xMoreValue->get_text(); break;
        case 7: m_sMoreValue_Type = m_xMoreValue->get_text(); break;
        default:
            DBG_ASSERT(true, "MoreValueHdl out of range");
    }
}

IMPL_LINK_NOARG(SfxDocumentDescPage, MoreTypesHdl, weld::ComboBox&, void)
{
    switch (m_xMoreTypes->get_active())
    {
        case 0: m_xMoreValue->set_text(m_sMoreValue_Contributor); break;
        case 1: m_xMoreValue->set_text(m_sMoreValue_Coverage); break;
        case 2: m_xMoreValue->set_text(m_sMoreValue_Identifier); break;
        case 3: m_xMoreValue->set_text(m_sMoreValue_Publisher); break;
        case 4: m_xMoreValue->set_text(m_sMoreValue_Relation); break;
        case 5: m_xMoreValue->set_text(m_sMoreValue_Rights); break;
        case 6: m_xMoreValue->set_text(m_sMoreValue_Source); break;
        case 7: m_xMoreValue->set_text(m_sMoreValue_Type); break;
        default:
            DBG_ASSERT(true, "MoreTypesHdl out of range");
    }
}

SfxDocumentPage::SfxDocumentPage(weld::Container* pPage, weld::DialogController* pController, const SfxItemSet& rItemSet)
    : SfxTabPage(pPage, pController, u"sfx/ui/documentinfopage.ui"_ustr, u"DocumentInfoPage"_ustr, &rItemSet)
    , bEnableUseUserData( false )
diff --git a/sfx2/uiconfig/ui/descriptioninfopage.ui b/sfx2/uiconfig/ui/descriptioninfopage.ui
index 5f80914..d18910f 100644
--- a/sfx2/uiconfig/ui/descriptioninfopage.ui
+++ b/sfx2/uiconfig/ui/descriptioninfopage.ui
@@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- Generated with glade 3.38.2 -->
<!-- Generated with glade 3.40.0 -->
<interface domain="sfx">
  <requires lib="gtk+" version="3.20"/>
  <!-- n-columns=2 n-rows=12 -->
  <!-- n-columns=2 n-rows=5 -->
  <object class="GtkGrid" id="DescriptionInfoPage">
    <property name="visible">True</property>
    <property name="can-focus">False</property>
@@ -12,20 +12,6 @@
    <property name="row-spacing">6</property>
    <property name="column-spacing">12</property>
    <child>
      <object class="GtkLabel" id="label27">
        <property name="visible">True</property>
        <property name="can-focus">False</property>
        <property name="label" translatable="yes" context="descriptioninfopage|label27">_Title:</property>
        <property name="use-underline">True</property>
        <property name="mnemonic-widget">title</property>
        <property name="xalign">1</property>
      </object>
      <packing>
        <property name="left-attach">0</property>
        <property name="top-attach">0</property>
      </packing>
    </child>
    <child>
      <object class="GtkLabel" id="label28">
        <property name="visible">True</property>
        <property name="can-focus">False</property>
@@ -54,126 +40,6 @@
      </packing>
    </child>
    <child>
      <object class="GtkLabel" id="label31">
        <property name="visible">True</property>
        <property name="can-focus">False</property>
        <property name="valign">start</property>
        <property name="label" translatable="yes" context="descriptioninfopage|label31">Co_ntributor:</property>
        <property name="use-underline">True</property>
        <property name="mnemonic-widget">contributor</property>
        <property name="xalign">1</property>
      </object>
      <packing>
        <property name="left-attach">0</property>
        <property name="top-attach">3</property>
      </packing>
    </child>
    <child>
      <object class="GtkLabel" id="label32">
        <property name="visible">True</property>
        <property name="can-focus">False</property>
        <property name="valign">start</property>
        <property name="label" translatable="yes" context="descriptioninfopage|label32">Co_verage:</property>
        <property name="use-underline">True</property>
        <property name="mnemonic-widget">coverage</property>
        <property name="xalign">1</property>
      </object>
      <packing>
        <property name="left-attach">0</property>
        <property name="top-attach">4</property>
      </packing>
    </child>
    <child>
      <object class="GtkLabel" id="label37">
        <property name="visible">True</property>
        <property name="can-focus">False</property>
        <property name="valign">start</property>
        <property name="label" translatable="yes" context="descriptioninfopage|label37">_Identifier:</property>
        <property name="use-underline">True</property>
        <property name="mnemonic-widget">identifier</property>
        <property name="xalign">1</property>
      </object>
      <packing>
        <property name="left-attach">0</property>
        <property name="top-attach">5</property>
      </packing>
    </child>
    <child>
      <object class="GtkLabel" id="label39">
        <property name="visible">True</property>
        <property name="can-focus">False</property>
        <property name="valign">start</property>
        <property name="label" translatable="yes" context="descriptioninfopage|label39">_Publisher:</property>
        <property name="use-underline">True</property>
        <property name="mnemonic-widget">publisher</property>
        <property name="xalign">1</property>
      </object>
      <packing>
        <property name="left-attach">0</property>
        <property name="top-attach">6</property>
      </packing>
    </child>
    <child>
      <object class="GtkLabel" id="label40">
        <property name="visible">True</property>
        <property name="can-focus">False</property>
        <property name="valign">start</property>
        <property name="label" translatable="yes" context="descriptioninfopage|label40">R_elation:</property>
        <property name="use-underline">True</property>
        <property name="mnemonic-widget">relation</property>
        <property name="xalign">1</property>
      </object>
      <packing>
        <property name="left-attach">0</property>
        <property name="top-attach">7</property>
      </packing>
    </child>
    <child>
      <object class="GtkLabel" id="label41">
        <property name="visible">True</property>
        <property name="can-focus">False</property>
        <property name="valign">start</property>
        <property name="label" translatable="yes" context="descriptioninfopage|label41">Ri_ghts:</property>
        <property name="use-underline">True</property>
        <property name="mnemonic-widget">rights</property>
        <property name="xalign">1</property>
      </object>
      <packing>
        <property name="left-attach">0</property>
        <property name="top-attach">8</property>
      </packing>
    </child>
    <child>
      <object class="GtkLabel" id="label42">
        <property name="visible">True</property>
        <property name="can-focus">False</property>
        <property name="valign">start</property>
        <property name="label" translatable="yes" context="descriptioninfopage|label42">So_urce:</property>
        <property name="use-underline">True</property>
        <property name="mnemonic-widget">source</property>
        <property name="xalign">1</property>
      </object>
      <packing>
        <property name="left-attach">0</property>
        <property name="top-attach">9</property>
      </packing>
    </child>
    <child>
      <object class="GtkLabel" id="label45">
        <property name="visible">True</property>
        <property name="can-focus">False</property>
        <property name="valign">start</property>
        <property name="label" translatable="yes" context="descriptioninfopage|label45">T_ype:</property>
        <property name="use-underline">True</property>
        <property name="mnemonic-widget">type</property>
        <property name="xalign">1</property>
      </object>
      <packing>
        <property name="left-attach">0</property>
        <property name="top-attach">10</property>
      </packing>
    </child>
    <child>
      <object class="GtkLabel" id="label30">
        <property name="visible">True</property>
        <property name="can-focus">False</property>
@@ -185,7 +51,7 @@
      </object>
      <packing>
        <property name="left-attach">0</property>
        <property name="top-attach">11</property>
        <property name="top-attach">4</property>
      </packing>
    </child>
    <child>
@@ -240,13 +106,13 @@
      </packing>
    </child>
    <child>
      <object class="GtkEntry" id="contributor">
      <object class="GtkEntry" id="edMoreValue">
        <property name="visible">True</property>
        <property name="can-focus">True</property>
        <property name="hexpand">True</property>
        <property name="truncate-multiline">True</property>
        <child internal-child="accessible">
          <object class="AtkObject" id="contributor-atkobject">
          <object class="AtkObject" id="edMoreValue-atkobject">
            <property name="AtkObject::accessible-description" translatable="yes" context="descriptioninfopage|extended_tip|contributor">Enter the names of the people, organizations, or other entities that have made contributions to the document.</property>
          </object>
        </child>
@@ -257,125 +123,6 @@
      </packing>
    </child>
    <child>
      <object class="GtkEntry" id="coverage">
        <property name="visible">True</property>
        <property name="can-focus">True</property>
        <property name="hexpand">True</property>
        <property name="truncate-multiline">True</property>
        <child internal-child="accessible">
          <object class="AtkObject" id="coverage-atkobject">
            <property name="AtkObject::accessible-description" translatable="yes" context="descriptioninfopage|extended_tip|coverage">Enter the time, place, or jurisdiction that the document is relevant to.</property>
          </object>
        </child>
      </object>
      <packing>
        <property name="left-attach">1</property>
        <property name="top-attach">4</property>
      </packing>
    </child>
    <child>
      <object class="GtkEntry" id="identifier">
        <property name="visible">True</property>
        <property name="can-focus">True</property>
        <property name="hexpand">True</property>
        <property name="truncate-multiline">True</property>
        <child internal-child="accessible">
          <object class="AtkObject" id="identifier-atkobject">
            <property name="AtkObject::accessible-description" translatable="yes" context="descriptioninfopage|extended_tip|identifier">Enter a unique and unambiguous identifier for the document.</property>
          </object>
        </child>
      </object>
      <packing>
        <property name="left-attach">1</property>
        <property name="top-attach">5</property>
      </packing>
    </child>
    <child>
      <object class="GtkEntry" id="publisher">
        <property name="visible">True</property>
        <property name="can-focus">True</property>
        <property name="hexpand">True</property>
        <property name="truncate-multiline">True</property>
        <child internal-child="accessible">
          <object class="AtkObject" id="publisher-atkobject">
            <property name="AtkObject::accessible-description" translatable="yes" context="descriptioninfopage|extended_tip|publisher">Enter the name of the entity that is making the document available.</property>
          </object>
        </child>
      </object>
      <packing>
        <property name="left-attach">1</property>
        <property name="top-attach">6</property>
      </packing>
    </child>
    <child>
      <object class="GtkEntry" id="relation">
        <property name="visible">True</property>
        <property name="can-focus">True</property>
        <property name="hexpand">True</property>
        <property name="truncate-multiline">True</property>
        <child internal-child="accessible">
          <object class="AtkObject" id="relation-atkobject">
            <property name="AtkObject::accessible-description" translatable="yes" context="descriptioninfopage|extended_tip|relation">Enter information about a resource related to the document.</property>
          </object>
        </child>
      </object>
      <packing>
        <property name="left-attach">1</property>
        <property name="top-attach">7</property>
      </packing>
    </child>
    <child>
      <object class="GtkEntry" id="rights">
        <property name="visible">True</property>
        <property name="can-focus">True</property>
        <property name="hexpand">True</property>
        <property name="truncate-multiline">True</property>
        <child internal-child="accessible">
          <object class="AtkObject" id="rights-atkobject">
            <property name="AtkObject::accessible-description" translatable="yes" context="descriptioninfopage|extended_tip|rights">Enter information about intellectual property rights associated with the document.</property>
          </object>
        </child>
      </object>
      <packing>
        <property name="left-attach">1</property>
        <property name="top-attach">8</property>
      </packing>
    </child>
    <child>
      <object class="GtkEntry" id="source">
        <property name="visible">True</property>
        <property name="can-focus">True</property>
        <property name="hexpand">True</property>
        <property name="truncate-multiline">True</property>
        <child internal-child="accessible">
          <object class="AtkObject" id="source-atkobject">
            <property name="AtkObject::accessible-description" translatable="yes" context="descriptioninfopage|extended_tip|source">Enter information about other resources from which the document is derived.</property>
          </object>
        </child>
      </object>
      <packing>
        <property name="left-attach">1</property>
        <property name="top-attach">9</property>
      </packing>
    </child>
    <child>
      <object class="GtkEntry" id="type">
        <property name="visible">True</property>
        <property name="can-focus">True</property>
        <property name="hexpand">True</property>
        <property name="truncate-multiline">True</property>
        <child internal-child="accessible">
          <object class="AtkObject" id="type-atkobject">
            <property name="AtkObject::accessible-description" translatable="yes" context="descriptioninfopage|extended_tip|type">Enter information about the category or format of the document.</property>
          </object>
        </child>
      </object>
      <packing>
        <property name="left-attach">1</property>
        <property name="top-attach">10</property>
      </packing>
    </child>
    <child>
      <object class="GtkScrolledWindow" id="scrolledwindow1">
        <property name="visible">True</property>
        <property name="can-focus">True</property>
@@ -398,7 +145,41 @@
      </object>
      <packing>
        <property name="left-attach">1</property>
        <property name="top-attach">11</property>
        <property name="top-attach">4</property>
      </packing>
    </child>
    <child>
      <object class="GtkLabel" id="label27">
        <property name="visible">True</property>
        <property name="can-focus">False</property>
        <property name="label" translatable="yes" context="descriptioninfopage|label27">_Title:</property>
        <property name="use-underline">True</property>
        <property name="mnemonic-widget">title</property>
        <property name="xalign">1</property>
      </object>
      <packing>
        <property name="left-attach">0</property>
        <property name="top-attach">0</property>
      </packing>
    </child>
    <child>
      <object class="GtkComboBoxText" id="cbMoreTypes">
        <property name="visible">True</property>
        <property name="can-focus">False</property>
        <items>
          <item translatable="yes" context="descriptioninfopage|type_contributor">Contributor</item>
          <item translatable="yes" context="descriptioninfopage|type_coverage">Coverage</item>
          <item translatable="yes" context="descriptioninfopage|type_identifier">Identifier</item>
          <item translatable="yes" context="descriptioninfopage|type_publisher">Publisher</item>
          <item translatable="yes" context="descriptioninfopage|type_relation">Relation</item>
          <item translatable="yes" context="descriptioninfopage|type_rights">Rights</item>
          <item translatable="yes" context="descriptioninfopage|type_source">Source</item>
          <item translatable="yes" context="descriptioninfopage|type_types">Type</item>
        </items>
      </object>
      <packing>
        <property name="left-attach">0</property>
        <property name="top-attach">3</property>
      </packing>
    </child>
    <child internal-child="accessible">
diff --git a/sfx2/uiconfig/ui/documentinfopage.ui b/sfx2/uiconfig/ui/documentinfopage.ui
index 919fb99..f908e7f 100644
--- a/sfx2/uiconfig/ui/documentinfopage.ui
+++ b/sfx2/uiconfig/ui/documentinfopage.ui
@@ -184,6 +184,7 @@
        <property name="can-focus">True</property>
        <property name="receives-default">False</property>
        <property name="no-show-all">True</property>
        <property name="halign">start</property>
        <property name="use-underline">True</property>
        <property name="draw-indicator">True</property>
      </object>
@@ -399,6 +400,7 @@
        <property name="can-focus">True</property>
        <property name="receives-default">False</property>
        <property name="no-show-all">True</property>
        <property name="halign">start</property>
        <property name="draw-indicator">True</property>
      </object>
      <packing>
@@ -410,65 +412,71 @@
      <object class="GtkBox">
        <property name="visible">True</property>
        <property name="can-focus">False</property>
        <property name="halign">start</property>
        <property name="orientation">vertical</property>
        <property name="spacing">6</property>
        <child>
          <object class="GtkCheckButton" id="image-preferred-dpi-checkbutton">
            <property name="label" translatable="yes" context="documentinfopage|image-preferred-dpi-checkbutton">Preferred resolution for images:</property>
            <property name="visible">True</property>
            <property name="can-focus">True</property>
            <property name="receives-default">False</property>
            <property name="halign">start</property>
            <property name="margin-end">6</property>
            <property name="draw-indicator">True</property>
            <accessibility>
              <relation type="label-for" target="image-preferred-dpi-combobox"/>
            </accessibility>
          </object>
          <packing>
            <property name="expand">True</property>
            <property name="expand">False</property>
            <property name="fill">True</property>
            <property name="position">0</property>
          </packing>
        </child>
        <child>
          <object class="GtkComboBoxText" id="image-preferred-dpi-combobox">
          <object class="GtkBox">
            <property name="visible">True</property>
            <property name="can-focus">False</property>
            <property name="has-entry">True</property>
            <items>
              <item>96</item>
              <item>150</item>
              <item>200</item>
              <item>300</item>
              <item>600</item>
            </items>
            <child internal-child="entry">
              <object class="GtkEntry">
                <property name="truncate-multiline">True</property>
            <property name="halign">start</property>
            <property name="margin-start">24</property>
            <property name="spacing">3</property>
            <child>
              <object class="GtkComboBoxText" id="image-preferred-dpi-combobox">
                <property name="visible">True</property>
                <property name="can-focus">False</property>
                <property name="halign">start</property>
                <property name="has-entry">True</property>
                <items>
                  <item>96</item>
                  <item>150</item>
                  <item>200</item>
                  <item>300</item>
                  <item>600</item>
                </items>
              </object>
              <packing>
                <property name="expand">False</property>
                <property name="fill">True</property>
                <property name="position">0</property>
              </packing>
            </child>
            <accessibility>
              <relation type="labelled-by" target="image-preferred-dpi-checkbutton"/>
            </accessibility>
          </object>
          <packing>
            <property name="expand">False</property>
            <property name="fill">False</property>
            <property name="position">1</property>
          </packing>
        </child>
        <child>
          <object class="GtkLabel" id="lbUnit">
            <property name="visible">True</property>
            <property name="can-focus">False</property>
            <property name="margin-start">6</property>
            <property name="margin-end">6</property>
            <property name="label" translatable="yes" context="documentinfopage|image-preferred-ppi-unit">ppi</property>
            <child>
              <object class="GtkLabel" id="lbUnit">
                <property name="visible">True</property>
                <property name="can-focus">False</property>
                <property name="halign">start</property>
                <property name="margin-start">6</property>
                <property name="margin-end">6</property>
                <property name="label" translatable="yes" context="documentinfopage|image-preferred-ppi-unit">ppi</property>
              </object>
              <packing>
                <property name="expand">False</property>
                <property name="fill">True</property>
                <property name="position">1</property>
              </packing>
            </child>
          </object>
          <packing>
            <property name="expand">False</property>
            <property name="fill">True</property>
            <property name="position">2</property>
            <property name="position">1</property>
          </packing>
        </child>
      </object>
diff --git a/sfx2/uiconfig/ui/linefragment.ui b/sfx2/uiconfig/ui/linefragment.ui
index 422a3324..1c29650 100644
--- a/sfx2/uiconfig/ui/linefragment.ui
+++ b/sfx2/uiconfig/ui/linefragment.ui
@@ -1,80 +1,80 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- Generated with glade 3.22.1 -->
<!-- Generated with glade 3.40.0 -->
<interface domain="sfx">
  <requires lib="gtk+" version="3.20"/>
  <object class="GtkAdjustment" id="adjustment1">
    <property name="upper">86400000</property>
    <property name="step_increment">1000</property>
    <property name="page_increment">60000</property>
    <property name="step-increment">1000</property>
    <property name="page-increment">60000</property>
  </object>
  <object class="GtkImage" id="image1">
    <property name="visible">True</property>
    <property name="can_focus">False</property>
    <property name="icon_name">sfx2/res/deleterow.png</property>
    <property name="can-focus">False</property>
    <property name="icon-name">sfx2/res/deleterow.png</property>
  </object>
  <!-- n-columns=1 n-rows=1 -->
  <!-- n-columns=4 n-rows=1 -->
  <object class="GtkGrid" id="lineentry">
    <property name="visible">True</property>
    <property name="can_focus">False</property>
    <property name="no_show_all">True</property>
    <property name="can-focus">False</property>
    <property name="no-show-all">True</property>
    <property name="valign">start</property>
    <property name="hexpand">True</property>
    <property name="vexpand">True</property>
    <property name="column_spacing">4</property>
    <property name="column-spacing">4</property>
    <child>
      <object class="GtkComboBoxText" id="namebox">
        <property name="visible">True</property>
        <property name="can_focus">False</property>
        <property name="has_entry">True</property>
        <property name="can-focus">False</property>
        <property name="has-entry">True</property>
        <child internal-child="entry">
          <object class="GtkEntry">
            <property name="can_focus">True</property>
            <property name="can-focus">True</property>
            <property name="width-chars">0</property>
            <property name="truncate-multiline">True</property>
            <property name="width_chars">27</property>
          </object>
        </child>
      </object>
      <packing>
        <property name="left_attach">0</property>
        <property name="top_attach">0</property>
        <property name="left-attach">0</property>
        <property name="top-attach">0</property>
      </packing>
    </child>
    <child>
      <object class="GtkComboBoxText" id="typebox">
        <property name="visible">True</property>
        <property name="can_focus">False</property>
        <property name="can-focus">False</property>
      </object>
      <packing>
        <property name="left_attach">1</property>
        <property name="top_attach">0</property>
        <property name="left-attach">1</property>
        <property name="top-attach">0</property>
      </packing>
    </child>
    <child>
      <object class="GtkButton" id="remove">
        <property name="visible">True</property>
        <property name="can_focus">True</property>
        <property name="receives_default">True</property>
        <property name="tooltip_text" translatable="yes" context="linefragment|STR_SFX_REMOVE_PROPERTY">Remove Property</property>
        <property name="can-focus">True</property>
        <property name="receives-default">True</property>
        <property name="tooltip-text" translatable="yes" context="linefragment|STR_SFX_REMOVE_PROPERTY">Remove Property</property>
        <property name="image">image1</property>
        <property name="always-show-image">True</property>
      </object>
      <packing>
        <property name="left_attach">3</property>
        <property name="top_attach">0</property>
        <property name="left-attach">3</property>
        <property name="top-attach">0</property>
      </packing>
    </child>
    <child>
      <object class="GtkBox">
        <property name="visible">True</property>
        <property name="can_focus">False</property>
        <property name="can-focus">False</property>
        <property name="hexpand">True</property>
        <property name="orientation">vertical</property>
        <child>
          <object class="GtkEntry" id="valueedit">
            <property name="visible">True</property>
            <property name="can_focus">True</property>
            <property name="can-focus">True</property>
            <property name="width-chars">0</property>
            <property name="truncate-multiline">True</property>
            <property name="width_chars">32</property>
          </object>
          <packing>
            <property name="expand">True</property>
@@ -84,16 +84,16 @@
        </child>
        <child>
          <object class="GtkBox" id="datetimebox">
            <property name="can_focus">False</property>
            <property name="no_show_all">True</property>
            <property name="can-focus">False</property>
            <property name="no-show-all">True</property>
            <property name="hexpand">True</property>
            <property name="spacing">3</property>
            <child>
              <object class="GtkMenuButton" id="date">
                <property name="visible">True</property>
                <property name="can_focus">True</property>
                <property name="receives_default">False</property>
                <property name="draw_indicator">True</property>
                <property name="can-focus">True</property>
                <property name="receives-default">False</property>
                <property name="draw-indicator">True</property>
                <property name="label" translatable="no"></property>
                <child>
                  <placeholder/>
@@ -108,7 +108,7 @@
            <child>
              <object class="GtkSpinButton" id="time">
                <property name="visible">True</property>
                <property name="can_focus">True</property>
                <property name="can-focus">True</property>
                <property name="truncate-multiline">True</property>
                <property name="adjustment">adjustment1</property>
              </object>
@@ -127,16 +127,16 @@
        </child>
        <child>
          <object class="GtkBox" id="durationbox">
            <property name="can_focus">False</property>
            <property name="no_show_all">True</property>
            <property name="can-focus">False</property>
            <property name="no-show-all">True</property>
            <property name="spacing">3</property>
            <child>
              <object class="GtkEntry" id="duration">
                <property name="visible">True</property>
                <property name="can_focus">True</property>
                <property name="can-focus">True</property>
                <property name="hexpand">True</property>
                <property name="truncate-multiline">True</property>
                <property name="editable">False</property>
                <property name="truncate-multiline">True</property>
              </object>
              <packing>
                <property name="expand">False</property>
@@ -148,8 +148,8 @@
              <object class="GtkButton" id="durationbutton">
                <property name="label" translatable="yes" context="linefragment|SFX_ST_EDIT">...</property>
                <property name="visible">True</property>
                <property name="can_focus">True</property>
                <property name="receives_default">True</property>
                <property name="can-focus">True</property>
                <property name="receives-default">True</property>
              </object>
              <packing>
                <property name="expand">False</property>
@@ -166,28 +166,28 @@
        </child>
        <child>
          <object class="GtkScrolledWindow" id="yesno">
            <property name="can_focus">True</property>
            <property name="no_show_all">True</property>
            <property name="hscrollbar_policy">never</property>
            <property name="vscrollbar_policy">never</property>
            <property name="shadow_type">in</property>
            <property name="can-focus">True</property>
            <property name="no-show-all">True</property>
            <property name="hscrollbar-policy">never</property>
            <property name="vscrollbar-policy">never</property>
            <property name="shadow-type">in</property>
            <child>
              <object class="GtkViewport">
                <property name="visible">True</property>
                <property name="can_focus">False</property>
                <property name="can-focus">False</property>
                <child>
                  <object class="GtkBox">
                    <property name="visible">True</property>
                    <property name="can_focus">False</property>
                    <property name="can-focus">False</property>
                    <property name="homogeneous">True</property>
                    <child>
                      <object class="GtkRadioButton" id="yes">
                        <property name="label" translatable="yes" context="linefragment|yes">Yes</property>
                        <property name="visible">True</property>
                        <property name="can_focus">True</property>
                        <property name="receives_default">False</property>
                        <property name="can-focus">True</property>
                        <property name="receives-default">False</property>
                        <property name="active">True</property>
                        <property name="draw_indicator">True</property>
                        <property name="draw-indicator">True</property>
                      </object>
                      <packing>
                        <property name="expand">False</property>
@@ -199,9 +199,9 @@
                      <object class="GtkRadioButton" id="no">
                        <property name="label" translatable="yes" context="linefragment|no">No</property>
                        <property name="visible">True</property>
                        <property name="can_focus">True</property>
                        <property name="receives_default">False</property>
                        <property name="draw_indicator">True</property>
                        <property name="can-focus">True</property>
                        <property name="receives-default">False</property>
                        <property name="draw-indicator">True</property>
                        <property name="group">yes</property>
                      </object>
                      <packing>
@@ -223,8 +223,8 @@
        </child>
      </object>
      <packing>
        <property name="left_attach">2</property>
        <property name="top_attach">0</property>
        <property name="left-attach">2</property>
        <property name="top-attach">0</property>
      </packing>
    </child>
  </object>