sd/source/ui/app/optsitem.cxx                    |   15 
 sd/source/ui/dlg/present.cxx                     |   11 
 sd/source/ui/dlg/tpoption.cxx                    |   19 
 sd/source/ui/inc/present.hxx                     |    3 
 sd/source/ui/inc/tpoption.hxx                    |    9 
 sd/uiconfig/simpress/ui/optimpressgeneralpage.ui | 1052 +++++++++++------------
 sd/uiconfig/simpress/ui/presentationdialog.ui    |   68 +
 7 files changed, 599 insertions(+), 578 deletions(-)

New commits:
commit 28245ae37723223c93fb0f915a599bb547c391f0
Author:     Samuel Mehrbrodt <samuel.mehrbr...@allotropia.de>
AuthorDate: Thu Nov 2 15:59:47 2023 +0100
Commit:     Samuel Mehrbrodt <samuel.mehrbr...@allotropia.de>
CommitDate: Thu Nov 9 08:15:55 2023 +0100

    Reorganize Impress Options page
    
    Use Boxes instead of tables to avoid blank space when rows have
    different heights.
    
    Change-Id: I2befac16fda006ad2694f33a4ab8dcaadb8c9093
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158835
    Tested-by: Jenkins
    Reviewed-by: Samuel Mehrbrodt <samuel.mehrbr...@allotropia.de>

diff --git a/sd/uiconfig/simpress/ui/optimpressgeneralpage.ui 
b/sd/uiconfig/simpress/ui/optimpressgeneralpage.ui
index f560493f0191..ea7f7234c20f 100644
--- a/sd/uiconfig/simpress/ui/optimpressgeneralpage.ui
+++ b/sd/uiconfig/simpress/ui/optimpressgeneralpage.ui
@@ -2,199 +2,105 @@
 <!-- Generated with glade 3.40.0 -->
 <interface domain="sd">
   <requires lib="gtk+" version="3.20"/>
-  <object class="GtkAdjustment" id="adjustment1">
-    <property name="lower">5</property>
-    <property name="upper">200</property>
-    <property name="value">5</property>
-    <property name="step-increment">1</property>
-    <property name="page-increment">5</property>
-  </object>
-  <object class="GtkAdjustment" id="adjustment2">
-    <property name="upper">100</property>
-    <property name="step-increment">1</property>
-    <property name="page-increment">10</property>
-  </object>
-  <object class="GtkAdjustment" id="adjustment3">
-    <property name="upper">100</property>
-    <property name="step-increment">1</property>
-    <property name="page-increment">10</property>
-  </object>
-  <object class="GtkAdjustment" id="adjustment4">
-    <property name="upper">100</property>
-    <property name="step-increment">1</property>
-    <property name="page-increment">10</property>
-  </object>
-  <object class="GtkAdjustment" id="adjustment5">
-    <property name="upper">100</property>
-    <property name="step-increment">1</property>
-    <property name="page-increment">10</property>
-  </object>
-  <!-- n-columns=2 n-rows=4 -->
-  <object class="GtkGrid" id="OptSavePage">
+  <object class="GtkBox" id="OptSavePage">
     <property name="visible">True</property>
     <property name="can-focus">False</property>
-    <property name="border-width">6</property>
-    <property name="row-spacing">12</property>
-    <property name="column-spacing">24</property>
+    <property name="margin-start">6</property>
+    <property name="margin-end">6</property>
+    <property name="margin-top">6</property>
+    <property name="margin-bottom">6</property>
     <child>
-      <object class="GtkFrame" id="newdocumentframe">
+      <object class="GtkBox" id="box_left">
         <property name="visible">True</property>
         <property name="can-focus">False</property>
-        <property name="label-xalign">0</property>
-        <property name="shadow-type">none</property>
+        <property name="margin-end">24</property>
+        <property name="orientation">vertical</property>
         <child>
-          <!-- n-columns=1 n-rows=1 -->
-          <object class="GtkGrid" id="grid2">
+          <object class="GtkFrame" id="newdocumentframe">
             <property name="visible">True</property>
             <property name="can-focus">False</property>
-            <property name="margin-start">12</property>
-            <property name="margin-top">6</property>
-            <property name="hexpand">True</property>
-            <property name="row-spacing">6</property>
-            <property name="column-spacing">12</property>
+            <property name="margin-bottom">12</property>
+            <property name="label-xalign">0</property>
+            <property name="shadow-type">none</property>
             <child>
-              <object class="GtkCheckButton" id="startwithwizard">
-                <property name="label" translatable="yes" 
context="optimpressgeneralpage|startwithwizard">Start with _Template 
Selection</property>
+              <!-- n-columns=1 n-rows=1 -->
+              <object class="GtkGrid" id="grid2">
                 <property name="visible">True</property>
-                <property name="can-focus">True</property>
-                <property name="receives-default">False</property>
-                <property name="use-underline">True</property>
-                <property name="draw-indicator">True</property>
-                <child internal-child="accessible">
-                  <object class="AtkObject" id="startwithwizard-atkobject">
-                    <property name="AtkObject::accessible-description" 
translatable="yes" context="extended_tip|startwithwizard">Specifies whether to 
activate the Select a Template window when opening a presentation with File - 
New - Presentation.</property>
+                <property name="can-focus">False</property>
+                <property name="margin-start">12</property>
+                <property name="margin-top">6</property>
+                <property name="hexpand">True</property>
+                <property name="row-spacing">6</property>
+                <property name="column-spacing">12</property>
+                <child>
+                  <object class="GtkCheckButton" id="startwithwizard">
+                    <property name="label" translatable="yes" 
context="optimpressgeneralpage|startwithwizard">Start with _Template 
Selection</property>
+                    <property name="visible">True</property>
+                    <property name="can-focus">True</property>
+                    <property name="receives-default">False</property>
+                    <property name="use-underline">True</property>
+                    <property name="draw-indicator">True</property>
+                    <child internal-child="accessible">
+                      <object class="AtkObject" id="startwithwizard-atkobject">
+                        <property name="AtkObject::accessible-description" 
translatable="yes" context="extended_tip|startwithwizard">Specifies whether to 
activate the Select a Template window when opening a presentation with File - 
New - Presentation.</property>
+                      </object>
+                    </child>
                   </object>
+                  <packing>
+                    <property name="left-attach">0</property>
+                    <property name="top-attach">0</property>
+                  </packing>
                 </child>
               </object>
-              <packing>
-                <property name="left-attach">0</property>
-                <property name="top-attach">0</property>
-              </packing>
             </child>
-          </object>
-        </child>
-        <child type="label">
-          <object class="GtkLabel" id="newdoclbl">
-            <property name="visible">True</property>
-            <property name="can-focus">False</property>
-            <property name="label" translatable="yes" 
context="optimpressgeneralpage|newdoclbl">New Document</property>
-            <attributes>
-              <attribute name="weight" value="bold"/>
-            </attributes>
-          </object>
-        </child>
-      </object>
-      <packing>
-        <property name="left-attach">0</property>
-        <property name="top-attach">0</property>
-      </packing>
-    </child>
-    <child>
-      <object class="GtkFrame" id="frame1">
-        <property name="visible">True</property>
-        <property name="can-focus">False</property>
-        <property name="label-xalign">0</property>
-        <property name="shadow-type">none</property>
-        <child>
-          <!-- n-columns=1 n-rows=1 -->
-          <object class="GtkGrid" id="grid6">
-            <property name="visible">True</property>
-            <property name="can-focus">False</property>
-            <property name="margin-start">12</property>
-            <property name="margin-top">6</property>
-            <property name="row-spacing">6</property>
-            <property name="column-spacing">12</property>
-            <child>
-              <object class="GtkCheckButton" id="cbCompatibility">
-                <property name="label" translatable="yes" 
context="optimpressgeneralpage|cbCompatibility">Add _spacing between paragraphs 
and tables</property>
+            <child type="label">
+              <object class="GtkLabel" id="newdoclbl">
                 <property name="visible">True</property>
-                <property name="can-focus">True</property>
-                <property name="receives-default">False</property>
-                <property name="use-underline">True</property>
-                <property name="draw-indicator">True</property>
-                <child internal-child="accessible">
-                  <object class="AtkObject" id="cbCompatibility-atkobject">
-                    <property name="AtkObject::accessible-description" 
translatable="yes" context="extended_tip|cbCompatibility">Specifies that 
Impress calculates the paragraph spacing exactly like Microsoft 
PowerPoint.</property>
-                  </object>
-                </child>
+                <property name="can-focus">False</property>
+                <property name="label" translatable="yes" 
context="optimpressgeneralpage|newdoclbl">New Document</property>
+                <attributes>
+                  <attribute name="weight" value="bold"/>
+                </attributes>
               </object>
-              <packing>
-                <property name="left-attach">0</property>
-                <property name="top-attach">0</property>
-              </packing>
             </child>
           </object>
+          <packing>
+            <property name="expand">False</property>
+            <property name="fill">True</property>
+            <property name="position">0</property>
+          </packing>
         </child>
-        <child type="label">
-          <object class="GtkLabel" id="label1">
-            <property name="visible">True</property>
-            <property name="can-focus">False</property>
-            <property name="label" translatable="yes" 
context="optimpressgeneralpage|label1">Compatibility</property>
-            <property name="xalign">0.5</property>
-            <property name="yalign">0.5</property>
-            <attributes>
-              <attribute name="weight" value="bold"/>
-            </attributes>
-          </object>
-        </child>
-      </object>
-      <packing>
-        <property name="left-attach">0</property>
-        <property name="top-attach">3</property>
-        <property name="width">2</property>
-      </packing>
-    </child>
-    <child>
-      <object class="GtkFrame" id="frame4">
-        <property name="visible">True</property>
-        <property name="can-focus">False</property>
-        <property name="hexpand">True</property>
-        <property name="label-xalign">0</property>
-        <property name="shadow-type">none</property>
         <child>
-          <!-- n-columns=1 n-rows=6 -->
-          <object class="GtkGrid" id="grid3">
+          <object class="GtkFrame" id="frame4">
             <property name="visible">True</property>
             <property name="can-focus">False</property>
-            <property name="margin-start">12</property>
-            <property name="margin-top">6</property>
             <property name="hexpand">True</property>
-            <property name="row-spacing">6</property>
-            <property name="column-spacing">12</property>
-            <child>
-              <object class="GtkCheckButton" id="copywhenmove">
-                <property name="label" translatable="yes" 
context="optimpressgeneralpage|copywhenmove">Copy when moving</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="use-underline">True</property>
-                <property name="draw-indicator">True</property>
-                <child internal-child="accessible">
-                  <object class="AtkObject" id="copywhenmove-atkobject">
-                    <property name="AtkObject::accessible-description" 
translatable="yes" context="extended_tip|copywhenmove">If enabled, a copy is 
created when you move an object while holding down the Ctrl key.</property>
-                  </object>
-                </child>
-              </object>
-              <packing>
-                <property name="left-attach">0</property>
-                <property name="top-attach">0</property>
-              </packing>
-            </child>
+            <property name="label-xalign">0</property>
+            <property name="shadow-type">none</property>
             <child>
-              <!-- n-columns=2 n-rows=1 -->
-              <object class="GtkGrid" id="grid4">
+              <!-- n-columns=1 n-rows=6 -->
+              <object class="GtkGrid" id="grid3">
                 <property name="visible">True</property>
                 <property name="can-focus">False</property>
+                <property name="margin-start">12</property>
+                <property name="margin-top">6</property>
+                <property name="hexpand">True</property>
+                <property name="row-spacing">6</property>
                 <property name="column-spacing">12</property>
                 <child>
-                  <object class="GtkLabel" id="label6">
+                  <object class="GtkCheckButton" id="copywhenmove">
+                    <property name="label" translatable="yes" 
context="optimpressgeneralpage|copywhenmove">Copy when moving</property>
                     <property name="visible">True</property>
-                    <property name="can-focus">False</property>
-                    <property name="label" translatable="yes" 
context="optimpressgeneralpage|label6">Unit of _measurement:</property>
+                    <property name="can-focus">True</property>
+                    <property name="receives-default">False</property>
+                    <property name="halign">start</property>
                     <property name="use-underline">True</property>
-                    <property name="mnemonic-widget">units</property>
-                    <property name="xalign">0</property>
+                    <property name="draw-indicator">True</property>
+                    <child internal-child="accessible">
+                      <object class="AtkObject" id="copywhenmove-atkobject">
+                        <property name="AtkObject::accessible-description" 
translatable="yes" context="extended_tip|copywhenmove">If enabled, a copy is 
created when you move an object while holding down the Ctrl key.</property>
+                      </object>
+                    </child>
                   </object>
                   <packing>
                     <property name="left-attach">0</property>
@@ -202,421 +108,542 @@
                   </packing>
                 </child>
                 <child>
-                  <object class="GtkComboBoxText" id="units">
+                  <!-- n-columns=2 n-rows=1 -->
+                  <object class="GtkGrid" id="grid4">
                     <property name="visible">True</property>
                     <property name="can-focus">False</property>
-                    <child internal-child="accessible">
-                      <object class="AtkObject" id="units-atkobject">
-                        <property name="AtkObject::accessible-description" 
translatable="yes" context="extended_tip|units">Determines the Unit of 
measurement for presentations.</property>
+                    <property name="column-spacing">12</property>
+                    <child>
+                      <object class="GtkLabel" id="label6">
+                        <property name="visible">True</property>
+                        <property name="can-focus">False</property>
+                        <property name="label" translatable="yes" 
context="optimpressgeneralpage|label6">Unit of _measurement:</property>
+                        <property name="use-underline">True</property>
+                        <property name="mnemonic-widget">units</property>
+                        <property name="xalign">0</property>
                       </object>
+                      <packing>
+                        <property name="left-attach">0</property>
+                        <property name="top-attach">0</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkComboBoxText" id="units">
+                        <property name="visible">True</property>
+                        <property name="can-focus">False</property>
+                        <child internal-child="accessible">
+                          <object class="AtkObject" id="units-atkobject">
+                            <property name="AtkObject::accessible-description" 
translatable="yes" context="extended_tip|units">Determines the Unit of 
measurement for presentations.</property>
+                          </object>
+                        </child>
+                      </object>
+                      <packing>
+                        <property name="left-attach">1</property>
+                        <property name="top-attach">0</property>
+                      </packing>
                     </child>
                   </object>
                   <packing>
-                    <property name="left-attach">1</property>
-                    <property name="top-attach">0</property>
+                    <property name="left-attach">0</property>
+                    <property name="top-attach">4</property>
                   </packing>
                 </child>
-              </object>
-              <packing>
-                <property name="left-attach">0</property>
-                <property name="top-attach">4</property>
-              </packing>
-            </child>
-            <child>
-              <!-- n-columns=2 n-rows=1 -->
-              <object class="GtkGrid" id="grid8">
-                <property name="visible">True</property>
-                <property name="can-focus">False</property>
-                <property name="column-spacing">12</property>
                 <child>
-                  <object class="GtkLabel" id="tabstoplabel">
+                  <!-- n-columns=2 n-rows=1 -->
+                  <object class="GtkGrid" id="grid8">
                     <property name="visible">True</property>
                     <property name="can-focus">False</property>
-                    <property name="label" translatable="yes" 
context="optimpressgeneralpage|tabstoplabel">Ta_b stops:</property>
-                    <property name="use-underline">True</property>
-                    <property name="justify">fill</property>
-                    <property name="mnemonic-widget">metricFields</property>
-                    <property name="xalign">0</property>
+                    <property name="column-spacing">12</property>
+                    <child>
+                      <object class="GtkLabel" id="tabstoplabel">
+                        <property name="visible">True</property>
+                        <property name="can-focus">False</property>
+                        <property name="label" translatable="yes" 
context="optimpressgeneralpage|tabstoplabel">Ta_b stops:</property>
+                        <property name="use-underline">True</property>
+                        <property name="justify">fill</property>
+                        <property 
name="mnemonic-widget">metricFields</property>
+                        <property name="xalign">0</property>
+                      </object>
+                      <packing>
+                        <property name="left-attach">0</property>
+                        <property name="top-attach">0</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkSpinButton" id="metricFields">
+                        <property name="visible">True</property>
+                        <property name="can-focus">True</property>
+                        <property name="activates-default">True</property>
+                        <property name="text">5,00</property>
+                        <property name="truncate-multiline">True</property>
+                        <property name="adjustment">adjustment1</property>
+                        <property name="digits">2</property>
+                        <property name="value">5</property>
+                        <child internal-child="accessible">
+                          <object class="AtkObject" 
id="metricFields-atkobject">
+                            <property name="AtkObject::accessible-description" 
translatable="yes" context="extended_tip|metricFields">Defines the spacing 
between tab stops.</property>
+                          </object>
+                        </child>
+                      </object>
+                      <packing>
+                        <property name="left-attach">1</property>
+                        <property name="top-attach">0</property>
+                      </packing>
+                    </child>
                   </object>
                   <packing>
                     <property name="left-attach">0</property>
-                    <property name="top-attach">0</property>
+                    <property name="top-attach">5</property>
                   </packing>
                 </child>
                 <child>
-                  <object class="GtkSpinButton" id="metricFields">
+                  <object class="GtkCheckButton" id="objalwymov">
+                    <property name="label" translatable="yes" 
context="optimpressgeneralpage|objalwymov">Objects always moveable</property>
                     <property name="visible">True</property>
                     <property name="can-focus">True</property>
-                    <property name="activates-default">True</property>
-                    <property name="text">5,00</property>
-                    <property name="truncate-multiline">True</property>
-                    <property name="adjustment">adjustment1</property>
-                    <property name="digits">2</property>
-                    <property name="value">5</property>
+                    <property name="receives-default">False</property>
+                    <property name="halign">start</property>
+                    <property name="use-underline">True</property>
+                    <property name="draw-indicator">True</property>
                     <child internal-child="accessible">
-                      <object class="AtkObject" id="metricFields-atkobject">
-                        <property name="AtkObject::accessible-description" 
translatable="yes" context="extended_tip|metricFields">Defines the spacing 
between tab stops.</property>
+                      <object class="AtkObject" id="objalwymov-atkobject">
+                        <property name="AtkObject::accessible-description" 
translatable="yes" context="extended_tip|objalwymov">Specifies that you want to 
move an object with the Rotate tool enabled. If Objects always moveable is not 
marked, the Rotate tool can only be used to rotate an object.</property>
                       </object>
                     </child>
                   </object>
                   <packing>
-                    <property name="left-attach">1</property>
-                    <property name="top-attach">0</property>
+                    <property name="left-attach">0</property>
+                    <property name="top-attach">2</property>
                   </packing>
                 </child>
-              </object>
-              <packing>
-                <property name="left-attach">0</property>
-                <property name="top-attach">5</property>
-              </packing>
-            </child>
-            <child>
-              <object class="GtkCheckButton" id="objalwymov">
-                <property name="label" translatable="yes" 
context="optimpressgeneralpage|objalwymov">Objects always moveable</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="use-underline">True</property>
-                <property name="draw-indicator">True</property>
-                <child internal-child="accessible">
-                  <object class="AtkObject" id="objalwymov-atkobject">
-                    <property name="AtkObject::accessible-description" 
translatable="yes" context="extended_tip|objalwymov">Specifies that you want to 
move an object with the Rotate tool enabled. If Objects always moveable is not 
marked, the Rotate tool can only be used to rotate an object.</property>
+                <child>
+                  <object class="GtkCheckButton" id="distortcb">
+                    <property name="label" translatable="yes" 
context="optimpressgeneralpage|distortcb">Do not distort objects in 
curve</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="use-underline">True</property>
+                    <property name="draw-indicator">True</property>
                   </object>
+                  <packing>
+                    <property name="left-attach">0</property>
+                    <property name="top-attach">3</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkCheckButton" id="backgroundback">
+                    <property name="label" translatable="yes" 
context="optimpressgeneralpage|backgroundback">Use background cache</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="use-underline">True</property>
+                    <property name="draw-indicator">True</property>
+                    <child internal-child="accessible">
+                      <object class="AtkObject" id="backgroundback-atkobject">
+                        <property name="AtkObject::accessible-description" 
translatable="yes" context="extended_tip|backgroundback">Specifies whether to 
use the cache for displaying objects on the master slide.</property>
+                      </object>
+                    </child>
+                  </object>
+                  <packing>
+                    <property name="left-attach">0</property>
+                    <property name="top-attach">1</property>
+                  </packing>
                 </child>
               </object>
-              <packing>
-                <property name="left-attach">0</property>
-                <property name="top-attach">2</property>
-              </packing>
-            </child>
-            <child>
-              <object class="GtkCheckButton" id="distortcb">
-                <property name="label" translatable="yes" 
context="optimpressgeneralpage|distortcb">Do not distort objects in 
curve</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="use-underline">True</property>
-                <property name="draw-indicator">True</property>
-              </object>
-              <packing>
-                <property name="left-attach">0</property>
-                <property name="top-attach">3</property>
-              </packing>
             </child>
-            <child>
-              <object class="GtkCheckButton" id="backgroundback">
-                <property name="label" translatable="yes" 
context="optimpressgeneralpage|backgroundback">Use background cache</property>
+            <child type="label">
+              <object class="GtkLabel" id="label4">
                 <property name="visible">True</property>
-                <property name="can-focus">True</property>
-                <property name="receives-default">False</property>
-                <property name="halign">start</property>
-                <property name="use-underline">True</property>
-                <property name="draw-indicator">True</property>
-                <child internal-child="accessible">
-                  <object class="AtkObject" id="backgroundback-atkobject">
-                    <property name="AtkObject::accessible-description" 
translatable="yes" context="extended_tip|backgroundback">Specifies whether to 
use the cache for displaying objects on the master slide.</property>
-                  </object>
-                </child>
+                <property name="can-focus">False</property>
+                <property name="margin-bottom">3</property>
+                <property name="label" translatable="yes" 
context="optimpressgeneralpage|label4">Settings</property>
+                <attributes>
+                  <attribute name="weight" value="bold"/>
+                </attributes>
               </object>
-              <packing>
-                <property name="left-attach">0</property>
-                <property name="top-attach">1</property>
-              </packing>
             </child>
           </object>
-        </child>
-        <child type="label">
-          <object class="GtkLabel" id="label4">
-            <property name="visible">True</property>
-            <property name="can-focus">False</property>
-            <property name="margin-bottom">3</property>
-            <property name="label" translatable="yes" 
context="optimpressgeneralpage|label4">Settings</property>
-            <attributes>
-              <attribute name="weight" value="bold"/>
-            </attributes>
-          </object>
+          <packing>
+            <property name="expand">False</property>
+            <property name="fill">True</property>
+            <property name="position">1</property>
+          </packing>
         </child>
       </object>
       <packing>
-        <property name="left-attach">0</property>
-        <property name="top-attach">1</property>
-        <property name="height">2</property>
+        <property name="expand">False</property>
+        <property name="fill">True</property>
+        <property name="position">0</property>
       </packing>
     </child>
     <child>
-      <object class="GtkFrame" id="frame2">
+      <object class="GtkBox" id="box_right">
         <property name="visible">True</property>
         <property name="can-focus">False</property>
-        <property name="hexpand">True</property>
-        <property name="label-xalign">0</property>
-        <property name="shadow-type">none</property>
+        <property name="orientation">vertical</property>
         <child>
-          <!-- n-columns=1 n-rows=2 -->
-          <object class="GtkGrid" id="grid1">
+          <object class="GtkFrame" id="frame2">
             <property name="visible">True</property>
             <property name="can-focus">False</property>
-            <property name="margin-start">12</property>
-            <property name="margin-top">6</property>
-            <property name="row-spacing">6</property>
-            <property name="column-spacing">12</property>
+            <property name="margin-bottom">12</property>
+            <property name="hexpand">True</property>
+            <property name="label-xalign">0</property>
+            <property name="shadow-type">none</property>
             <child>
-              <object class="GtkCheckButton" id="qickedit">
-                <property name="label" translatable="yes" 
context="optimpressgeneralpage|qickedit">Allow quick editing</property>
+              <!-- n-columns=1 n-rows=2 -->
+              <object class="GtkGrid" id="grid1">
                 <property name="visible">True</property>
-                <property name="can-focus">True</property>
-                <property name="receives-default">False</property>
-                <property name="halign">start</property>
-                <property name="use-underline">True</property>
-                <property name="draw-indicator">True</property>
-                <child internal-child="accessible">
-                  <object class="AtkObject" id="qickedit-atkobject">
-                    <property name="AtkObject::accessible-description" 
translatable="yes" context="extended_tip|qickedit">If on, you can edit text 
immediately after clicking a text object. If off, you must double-click to edit 
text.</property>
+                <property name="can-focus">False</property>
+                <property name="margin-start">12</property>
+                <property name="margin-top">6</property>
+                <property name="row-spacing">6</property>
+                <property name="column-spacing">12</property>
+                <child>
+                  <object class="GtkCheckButton" id="qickedit">
+                    <property name="label" translatable="yes" 
context="optimpressgeneralpage|qickedit">Allow quick editing</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="use-underline">True</property>
+                    <property name="draw-indicator">True</property>
+                    <child internal-child="accessible">
+                      <object class="AtkObject" id="qickedit-atkobject">
+                        <property name="AtkObject::accessible-description" 
translatable="yes" context="extended_tip|qickedit">If on, you can edit text 
immediately after clicking a text object. If off, you must double-click to edit 
text.</property>
+                      </object>
+                    </child>
+                  </object>
+                  <packing>
+                    <property name="left-attach">0</property>
+                    <property name="top-attach">0</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkCheckButton" id="textselected">
+                    <property name="label" translatable="yes" 
context="optimpressgeneralpage|textselected">Only text area 
selectable</property>
+                    <property name="visible">True</property>
+                    <property name="can-focus">True</property>
+                    <property name="receives-default">False</property>
+                    <property name="use-underline">True</property>
+                    <property name="draw-indicator">True</property>
+                    <child internal-child="accessible">
+                      <object class="AtkObject" id="textselected-atkobject">
+                        <property name="AtkObject::accessible-description" 
translatable="yes" context="extended_tip|textselected">Specifies whether to 
select a text box by clicking the text.</property>
+                      </object>
+                    </child>
                   </object>
+                  <packing>
+                    <property name="left-attach">0</property>
+                    <property name="top-attach">1</property>
+                  </packing>
                 </child>
               </object>
-              <packing>
-                <property name="left-attach">0</property>
-                <property name="top-attach">0</property>
-              </packing>
             </child>
-            <child>
-              <object class="GtkCheckButton" id="textselected">
-                <property name="label" translatable="yes" 
context="optimpressgeneralpage|textselected">Only text area 
selectable</property>
+            <child type="label">
+              <object class="GtkLabel" id="label2">
                 <property name="visible">True</property>
-                <property name="can-focus">True</property>
-                <property name="receives-default">False</property>
-                <property name="use-underline">True</property>
-                <property name="draw-indicator">True</property>
-                <child internal-child="accessible">
-                  <object class="AtkObject" id="textselected-atkobject">
-                    <property name="AtkObject::accessible-description" 
translatable="yes" context="extended_tip|textselected">Specifies whether to 
select a text box by clicking the text.</property>
-                  </object>
-                </child>
+                <property name="can-focus">False</property>
+                <property name="label" translatable="yes" 
context="optimpressgeneralpage|label2">Text Objects</property>
+                <attributes>
+                  <attribute name="weight" value="bold"/>
+                </attributes>
               </object>
-              <packing>
-                <property name="left-attach">0</property>
-                <property name="top-attach">1</property>
-              </packing>
             </child>
           </object>
+          <packing>
+            <property name="expand">False</property>
+            <property name="fill">True</property>
+            <property name="position">0</property>
+          </packing>
         </child>
-        <child type="label">
-          <object class="GtkLabel" id="label2">
-            <property name="visible">True</property>
-            <property name="can-focus">False</property>
-            <property name="label" translatable="yes" 
context="optimpressgeneralpage|label2">Text Objects</property>
-            <attributes>
-              <attribute name="weight" value="bold"/>
-            </attributes>
-          </object>
-        </child>
-      </object>
-      <packing>
-        <property name="left-attach">1</property>
-        <property name="top-attach">0</property>
-      </packing>
-    </child>
-    <child>
-      <object class="GtkFrame" id="scaleframe">
-        <property name="visible">True</property>
-        <property name="can-focus">False</property>
-        <property name="label-xalign">0</property>
-        <property name="shadow-type">none</property>
         <child>
-          <!-- n-columns=4 n-rows=3 -->
-          <object class="GtkGrid" id="grid7">
+          <object class="GtkFrame" id="scaleframe">
             <property name="visible">True</property>
             <property name="can-focus">False</property>
-            <property name="margin-start">12</property>
-            <property name="margin-top">6</property>
-            <property name="row-spacing">6</property>
-            <property name="column-spacing">12</property>
+            <property name="margin-bottom">12</property>
+            <property name="label-xalign">0</property>
+            <property name="shadow-type">none</property>
             <child>
-              <object class="GtkLabel" id="label8">
+              <!-- n-columns=4 n-rows=3 -->
+              <object class="GtkGrid" id="grid7">
                 <property name="visible">True</property>
                 <property name="can-focus">False</property>
-                <property name="margin-end">3</property>
-                <property name="label" translatable="yes" 
context="optimpressgeneralpage|label8">_Drawing scale:</property>
-                <property name="use-underline">True</property>
-                <property name="mnemonic-widget">scaleBox</property>
-                <property name="xalign">0</property>
-              </object>
-              <packing>
-                <property name="left-attach">0</property>
-                <property name="top-attach">0</property>
-              </packing>
-            </child>
-            <child>
-              <object class="GtkLabel" id="widthlbl">
-                <property name="can-focus">False</property>
-                <property name="no-show-all">True</property>
-                <property name="label" translatable="yes" 
context="optimpressgeneralpage|widthlbl">Page _width:</property>
-                <property name="use-underline">True</property>
-                <property name="mnemonic-widget">metricWidthFields</property>
-                <property name="xalign">0</property>
-              </object>
-              <packing>
-                <property name="left-attach">0</property>
-                <property name="top-attach">1</property>
-              </packing>
-            </child>
-            <child>
-              <object class="GtkLabel" id="heightlbl">
-                <property name="can-focus">False</property>
-                <property name="no-show-all">True</property>
-                <property name="label" translatable="yes" 
context="optimpressgeneralpage|heightlbl">Page _height:</property>
-                <property name="use-underline">True</property>
-                <property name="mnemonic-widget">metricHeightFields</property>
-                <property name="xalign">0</property>
-              </object>
-              <packing>
-                <property name="left-attach">2</property>
-                <property name="top-attach">1</property>
-              </packing>
-            </child>
-            <child>
-              <object class="GtkSpinButton" id="metricWidthFields">
-                <property name="can-focus">True</property>
-                <property name="no-show-all">True</property>
-                <property name="activates-default">True</property>
-                <property name="text">0.00</property>
-                <property name="truncate-multiline">True</property>
-                <property name="adjustment">adjustment2</property>
-                <property name="digits">2</property>
-              </object>
-              <packing>
-                <property name="left-attach">1</property>
-                <property name="top-attach">1</property>
-              </packing>
-            </child>
-            <child>
-              <object class="GtkSpinButton" id="metricHeightFields">
-                <property name="can-focus">True</property>
-                <property name="no-show-all">True</property>
-                <property name="activates-default">True</property>
-                <property name="text">0.00</property>
-                <property name="truncate-multiline">True</property>
-                <property name="adjustment">adjustment4</property>
-                <property name="digits">2</property>
-              </object>
-              <packing>
-                <property name="left-attach">3</property>
-                <property name="top-attach">1</property>
-              </packing>
-            </child>
-            <child>
-              <object class="GtkLabel" id="info1">
-                <property name="can-focus">False</property>
-                <property name="no-show-all">True</property>
-                <property name="label">info1</property>
-                <property name="use-underline">True</property>
-                <property name="mnemonic-widget">metricInfo1Fields</property>
-                <property name="xalign">0</property>
-              </object>
-              <packing>
-                <property name="left-attach">0</property>
-                <property name="top-attach">2</property>
-              </packing>
-            </child>
-            <child>
-              <object class="GtkSpinButton" id="metricInfo1Fields">
-                <property name="can-focus">True</property>
-                <property name="no-show-all">True</property>
-                <property name="activates-default">True</property>
-                <property name="text">0</property>
-                <property name="truncate-multiline">True</property>
-                <property name="adjustment">adjustment3</property>
-              </object>
-              <packing>
-                <property name="left-attach">1</property>
-                <property name="top-attach">2</property>
-              </packing>
-            </child>
-            <child>
-              <object class="GtkLabel" id="info2">
-                <property name="can-focus">False</property>
-                <property name="no-show-all">True</property>
-                <property name="label">info2</property>
-                <property name="use-underline">True</property>
-                <property name="mnemonic-widget">metricInfo2Fields</property>
-                <property name="xalign">0</property>
-              </object>
-              <packing>
-                <property name="left-attach">2</property>
-                <property name="top-attach">2</property>
-              </packing>
-            </child>
-            <child>
-              <object class="GtkSpinButton" id="metricInfo2Fields">
-                <property name="can-focus">True</property>
-                <property name="no-show-all">True</property>
-                <property name="activates-default">True</property>
-                <property name="text">0</property>
-                <property name="truncate-multiline">True</property>
-                <property name="adjustment">adjustment5</property>
-              </object>
-              <packing>
-                <property name="left-attach">3</property>
-                <property name="top-attach">2</property>
-              </packing>
-            </child>
-            <child>
-              <object class="GtkComboBoxText" id="scaleBox">
-                <property name="visible">True</property>
-                <property name="can-focus">False</property>
-                <property name="has-entry">True</property>
-                <child internal-child="entry">
-                  <object class="GtkEntry">
+                <property name="margin-start">12</property>
+                <property name="margin-top">6</property>
+                <property name="row-spacing">6</property>
+                <property name="column-spacing">12</property>
+                <child>
+                  <object class="GtkLabel" id="label8">
+                    <property name="visible">True</property>
+                    <property name="can-focus">False</property>
+                    <property name="margin-end">3</property>
+                    <property name="label" translatable="yes" 
context="optimpressgeneralpage|label8">_Drawing scale:</property>
+                    <property name="use-underline">True</property>
+                    <property name="mnemonic-widget">scaleBox</property>
+                    <property name="xalign">0</property>
+                  </object>
+                  <packing>
+                    <property name="left-attach">0</property>
+                    <property name="top-attach">0</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkLabel" id="widthlbl">
+                    <property name="can-focus">False</property>
+                    <property name="no-show-all">True</property>
+                    <property name="label" translatable="yes" 
context="optimpressgeneralpage|widthlbl">Page _width:</property>
+                    <property name="use-underline">True</property>
+                    <property 
name="mnemonic-widget">metricWidthFields</property>
+                    <property name="xalign">0</property>
+                  </object>
+                  <packing>
+                    <property name="left-attach">0</property>
+                    <property name="top-attach">1</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkLabel" id="heightlbl">
+                    <property name="can-focus">False</property>
+                    <property name="no-show-all">True</property>
+                    <property name="label" translatable="yes" 
context="optimpressgeneralpage|heightlbl">Page _height:</property>
+                    <property name="use-underline">True</property>
+                    <property 
name="mnemonic-widget">metricHeightFields</property>
+                    <property name="xalign">0</property>
+                  </object>
+                  <packing>
+                    <property name="left-attach">2</property>
+                    <property name="top-attach">1</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkSpinButton" id="metricWidthFields">
+                    <property name="can-focus">True</property>
+                    <property name="no-show-all">True</property>
+                    <property name="activates-default">True</property>
+                    <property name="text">0,00</property>
+                    <property name="truncate-multiline">True</property>
+                    <property name="adjustment">adjustment2</property>
+                    <property name="digits">2</property>
+                  </object>
+                  <packing>
+                    <property name="left-attach">1</property>
+                    <property name="top-attach">1</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkSpinButton" id="metricHeightFields">
+                    <property name="can-focus">True</property>
+                    <property name="no-show-all">True</property>
+                    <property name="activates-default">True</property>
+                    <property name="text">0,00</property>
+                    <property name="truncate-multiline">True</property>
+                    <property name="adjustment">adjustment4</property>
+                    <property name="digits">2</property>
+                  </object>
+                  <packing>
+                    <property name="left-attach">3</property>
+                    <property name="top-attach">1</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkLabel" id="info1">
+                    <property name="can-focus">False</property>
+                    <property name="no-show-all">True</property>
+                    <property name="label">info1</property>
+                    <property name="use-underline">True</property>
+                    <property 
name="mnemonic-widget">metricInfo1Fields</property>
+                    <property name="xalign">0</property>
+                  </object>
+                  <packing>
+                    <property name="left-attach">0</property>
+                    <property name="top-attach">2</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkSpinButton" id="metricInfo1Fields">
+                    <property name="can-focus">True</property>
+                    <property name="no-show-all">True</property>
+                    <property name="activates-default">True</property>
+                    <property name="text">0</property>
+                    <property name="truncate-multiline">True</property>
+                    <property name="adjustment">adjustment3</property>
+                  </object>
+                  <packing>
+                    <property name="left-attach">1</property>
+                    <property name="top-attach">2</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkLabel" id="info2">
                     <property name="can-focus">False</property>
+                    <property name="no-show-all">True</property>
+                    <property name="label">info2</property>
+                    <property name="use-underline">True</property>
+                    <property 
name="mnemonic-widget">metricInfo2Fields</property>
+                    <property name="xalign">0</property>
+                  </object>
+                  <packing>
+                    <property name="left-attach">2</property>
+                    <property name="top-attach">2</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkSpinButton" id="metricInfo2Fields">
+                    <property name="can-focus">True</property>
+                    <property name="no-show-all">True</property>
+                    <property name="activates-default">True</property>
+                    <property name="text">0</property>
                     <property name="truncate-multiline">True</property>
+                    <property name="adjustment">adjustment5</property>
                   </object>
+                  <packing>
+                    <property name="left-attach">3</property>
+                    <property name="top-attach">2</property>
+                  </packing>
                 </child>
-                <child internal-child="accessible">
-                  <object class="AtkObject" id="scaleBox-atkobject">
-                    <property name="AtkObject::accessible-description" 
translatable="yes" context="extended_tip|scaleBox">Determines the drawing scale 
on the status bar.</property>
+                <child>
+                  <object class="GtkComboBoxText" id="scaleBox">
+                    <property name="visible">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">False</property>
+                      </object>
+                    </child>
+                    <child internal-child="accessible">
+                      <object class="AtkObject" id="scaleBox-atkobject">
+                        <property name="AtkObject::accessible-description" 
translatable="yes" context="extended_tip|scaleBox">Determines the drawing scale 
on the status bar.</property>
+                      </object>
+                    </child>
                   </object>
+                  <packing>
+                    <property name="left-attach">1</property>
+                    <property name="top-attach">0</property>
+                  </packing>
+                </child>
+                <child>
+                  <placeholder/>
+                </child>
+                <child>
+                  <placeholder/>
                 </child>
               </object>
-              <packing>
-                <property name="left-attach">1</property>
-                <property name="top-attach">0</property>
-              </packing>
-            </child>
-            <child>
-              <placeholder/>
             </child>
-            <child>
-              <placeholder/>
+            <child type="label">
+              <object class="GtkLabel" id="label5">
+                <property name="visible">True</property>
+                <property name="can-focus">False</property>
+                <property name="label" translatable="yes" 
context="optimpressgeneralpage|label5">Scale</property>
+                <attributes>
+                  <attribute name="weight" value="bold"/>
+                </attributes>
+              </object>
             </child>
           </object>
+          <packing>
+            <property name="expand">False</property>
+            <property name="fill">True</property>
+            <property name="position">1</property>
+          </packing>
         </child>
-        <child type="label">
-          <object class="GtkLabel" id="label5">
+        <child>
+          <object class="GtkFrame" id="frame1">
             <property name="visible">True</property>
             <property name="can-focus">False</property>
-            <property name="label" translatable="yes" 
context="optimpressgeneralpage|label5">Scale</property>
-            <attributes>
-              <attribute name="weight" value="bold"/>
-            </attributes>
+            <property name="label-xalign">0</property>
+            <property name="shadow-type">none</property>
+            <child>
+              <!-- n-columns=1 n-rows=1 -->
+              <object class="GtkGrid" id="grid6">
+                <property name="visible">True</property>
+                <property name="can-focus">False</property>
+                <property name="margin-start">12</property>
+                <property name="margin-top">6</property>
+                <property name="row-spacing">6</property>
+                <property name="column-spacing">12</property>
+                <child>
+                  <object class="GtkCheckButton" id="cbCompatibility">
+                    <property name="label" translatable="yes" 
context="optimpressgeneralpage|cbCompatibility">Add _spacing between paragraphs 
and tables</property>
+                    <property name="visible">True</property>
+                    <property name="can-focus">True</property>
+                    <property name="receives-default">False</property>
+                    <property name="use-underline">True</property>
+                    <property name="draw-indicator">True</property>
+                    <child internal-child="accessible">
+                      <object class="AtkObject" id="cbCompatibility-atkobject">
+                        <property name="AtkObject::accessible-description" 
translatable="yes" context="extended_tip|cbCompatibility">Specifies that 
Impress calculates the paragraph spacing exactly like Microsoft 
PowerPoint.</property>
+                      </object>
+                    </child>
+                  </object>
+                  <packing>
+                    <property name="left-attach">0</property>
+                    <property name="top-attach">0</property>
+                  </packing>
+                </child>
+              </object>
+            </child>
+            <child type="label">
+              <object class="GtkLabel" id="label1">
+                <property name="visible">True</property>
+                <property name="can-focus">False</property>
+                <property name="label" translatable="yes" 
context="optimpressgeneralpage|label1">Compatibility</property>
+                <property name="xalign">0.5</property>
+                <property name="yalign">0.5</property>
+                <attributes>
+                  <attribute name="weight" value="bold"/>
+                </attributes>
+              </object>
+            </child>
           </object>
+          <packing>
+            <property name="expand">False</property>
+            <property name="fill">True</property>
+            <property name="position">2</property>
+          </packing>
         </child>
       </object>
       <packing>
-        <property name="left-attach">1</property>
-        <property name="top-attach">1</property>
+        <property name="expand">False</property>
+        <property name="fill">True</property>
+        <property name="position">1</property>
       </packing>
     </child>
-    <child>
-      <placeholder/>
-    </child>
     <child internal-child="accessible">
       <object class="AtkObject" id="OptSavePage-atkobject">
         <property name="AtkObject::accessible-description" translatable="yes" 
context="extended_tip|OptSavePage">Defines the general options for drawing or 
presentation documents.</property>
       </object>
     </child>
   </object>
+  <object class="GtkAdjustment" id="adjustment1">
+    <property name="lower">5</property>
+    <property name="upper">200</property>
+    <property name="value">5</property>
+    <property name="step-increment">1</property>
+    <property name="page-increment">5</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment2">
+    <property name="upper">100</property>
+    <property name="step-increment">1</property>
+    <property name="page-increment">10</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment3">
+    <property name="upper">100</property>
+    <property name="step-increment">1</property>
+    <property name="page-increment">10</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment4">
+    <property name="upper">100</property>
+    <property name="step-increment">1</property>
+    <property name="page-increment">10</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment5">
+    <property name="upper">100</property>
+    <property name="step-increment">1</property>
+    <property name="page-increment">10</property>
+  </object>
   <object class="GtkSizeGroup" id="sizegroupLabel">
     <widgets>
       <widget name="label6"/>
commit 7ca9c5bd2e2e3cda5686b7b8f5b657161eb52cdd
Author:     Samuel Mehrbrodt <samuel.mehrbr...@allotropia.de>
AuthorDate: Thu Nov 2 15:49:49 2023 +0100
Commit:     Samuel Mehrbrodt <samuel.mehrbr...@allotropia.de>
CommitDate: Thu Nov 9 08:15:48 2023 +0100

    Move "Enable Impress Remote" setting to presentation settings
    
    Instead of hiding it in the generic options dialog.
    
    This moves the last presentation related option to the presentation 
settings.
    
    Change-Id: I7056b43378c982f9ba496b59490ed762c1f4d21d
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158834
    Tested-by: Jenkins
    Reviewed-by: Samuel Mehrbrodt <samuel.mehrbr...@allotropia.de>

diff --git a/sd/source/ui/app/optsitem.cxx b/sd/source/ui/app/optsitem.cxx
index 74e410383c00..97a2f824af57 100644
--- a/sd/source/ui/app/optsitem.cxx
+++ b/sd/source/ui/app/optsitem.cxx
@@ -408,7 +408,6 @@ SdOptionsMisc::SdOptionsMisc( bool bImpress, bool 
bUseConfig ) :
     bPickThrough( true ),
     bDoubleClickTextEdit( true ),
     bClickChangeRotation( false ),
-    bEnableSdremote( false ),
     bSolidDragging( true ),
     bSummationOfParagraphs( false ),
     bTabBarVisible( true ),
@@ -442,7 +441,6 @@ bool SdOptionsMisc::operator==( const SdOptionsMisc& rOpt ) 
const
             IsPickThrough() == rOpt.IsPickThrough() &&
             IsDoubleClickTextEdit() == rOpt.IsDoubleClickTextEdit() &&
             IsClickChangeRotation() == rOpt.IsClickChangeRotation() &&
-            IsEnableSdremote() == rOpt.IsEnableSdremote() &&
             IsSummationOfParagraphs() == rOpt.IsSummationOfParagraphs() &&
             IsTabBarVisible() == rOpt.IsTabBarVisible() &&
             IsSolidDragging() == rOpt.IsSolidDragging() &&
@@ -499,7 +497,6 @@ void SdOptionsMisc::GetPropNameArray( const char**& 
ppNames, sal_uLong& rCount )
 
         "PenColor",
         "PenWidth",
-        "Start/EnableSdremote",
         "TabBarVisible"
     };
 
@@ -558,11 +555,8 @@ bool SdOptionsMisc::ReadData( const Any* pValues )
         if( pValues[24].hasValue() )
             SetPresentationPenWidth( getSafeValue< double >( pValues[ 24 ] ) );
 
-        if( pValues[25].hasValue() )
-            SetEnableSdremote( *o3tl::doAccess<bool>(pValues[ 25 ]) );
-
-        if( pValues[26].hasValue() ) {
-            SetTabBarVisible( *o3tl::doAccess<bool>(pValues[ 26 ]) );
+        if( pValues[25].hasValue() ) {
+            SetTabBarVisible( *o3tl::doAccess<bool>(pValues[ 25 ]) );
         }
     }
 
@@ -604,8 +598,7 @@ bool SdOptionsMisc::WriteData( Any* pValues ) const
 
         pValues[ 23 ] <<= GetPresentationPenColor();
         pValues[ 24 ] <<= GetPresentationPenWidth();
-        pValues[ 25 ] <<= IsEnableSdremote();
-        pValues[ 26 ] <<= IsTabBarVisible();
+        pValues[ 25 ] <<= IsTabBarVisible();
     }
 
     return true;
@@ -630,7 +623,6 @@ SdOptionsMiscItem::SdOptionsMiscItem( SdOptions const * 
pOpts, ::sd::FrameView c
     if( pOpts )
     {
         maOptionsMisc.SetStartWithTemplate( pOpts->IsStartWithTemplate() );
-        maOptionsMisc.SetEnableSdremote( pOpts->IsEnableSdremote() );
         maOptionsMisc.SetSummationOfParagraphs( 
pOpts->IsSummationOfParagraphs() );
         maOptionsMisc.SetTabBarVisible( pOpts->IsTabBarVisible() );
         maOptionsMisc.SetShowUndoDeleteWarning( 
pOpts->IsShowUndoDeleteWarning() );
@@ -708,7 +700,6 @@ void SdOptionsMiscItem::SetOptions( SdOptions* pOpts ) const
     pOpts->SetPickThrough( maOptionsMisc.IsPickThrough() );
     pOpts->SetDoubleClickTextEdit( maOptionsMisc.IsDoubleClickTextEdit() );
     pOpts->SetClickChangeRotation( maOptionsMisc.IsClickChangeRotation() );
-    pOpts->SetEnableSdremote( maOptionsMisc.IsEnableSdremote() );
     pOpts->SetSummationOfParagraphs( maOptionsMisc.IsSummationOfParagraphs() );
     pOpts->SetTabBarVisible( maOptionsMisc.IsTabBarVisible() );
 
diff --git a/sd/source/ui/dlg/present.cxx b/sd/source/ui/dlg/present.cxx
index 34b0befd2a7f..85d234bfcab9 100644
--- a/sd/source/ui/dlg/present.cxx
+++ b/sd/source/ui/dlg/present.cxx
@@ -66,6 +66,8 @@ SdStartPresentationDlg::SdStartPresentationDlg(weld::Window* 
pWindow, const SfxI
     , m_xCbxChangePage(m_xBuilder->weld_check_button("changeslidesbyclick"))
     , m_xCbxAlwaysOnTop(m_xBuilder->weld_check_button("alwaysontop"))
     , 
m_xCbxShowNavigationButton(m_xBuilder->weld_check_button("shownavigationbutton"))
+    , m_xFrameEnableRemote(m_xBuilder->weld_frame("frameremote"))
+    , m_xCbxEnableRemote(m_xBuilder->weld_check_button("enableremote"))
     , m_xLbConsole(m_xBuilder->weld_combo_box("console_cb"))
     , m_xFtMonitor(m_xBuilder->weld_label("presdisplay_label"))
     , m_xLBMonitor(m_xBuilder->weld_combo_box("presdisplay_cb"))
@@ -151,6 +153,12 @@ 
SdStartPresentationDlg::SdStartPresentationDlg(weld::Window* pWindow, const SfxI
     else
         m_xLbConsole->set_active(PresenterConsoleMode::Windowed);
 
+#ifdef ENABLE_SDREMOTE
+    
m_xCbxEnableRemote->set_active(officecfg::Office::Impress::Misc::Start::EnableSdremote::get());
+#else
+    m_xFrameEnableRemote->hide();
+#endif
+
     InitMonitorSettings();
 
     ChangeRangeHdl(*m_xRbtCustomshow);
@@ -180,6 +188,9 @@ short SdStartPresentationDlg::run()
         }
         officecfg::Office::Impress::Misc::Start::ShowNavigationPanel::set(
             m_xCbxShowNavigationButton->get_active(), batch);
+#ifdef ENABLE_SDREMOTE
+    
officecfg::Office::Impress::Misc::Start::EnableSdremote::set(m_xCbxEnableRemote->get_active(),
 batch);
+#endif
         batch->commit();
     }
     return nRet;
diff --git a/sd/source/ui/dlg/tpoption.cxx b/sd/source/ui/dlg/tpoption.cxx
index 3e92ceb08cd5..a028d0e08d58 100644
--- a/sd/source/ui/dlg/tpoption.cxx
+++ b/sd/source/ui/dlg/tpoption.cxx
@@ -206,7 +206,6 @@ SdTpOptionsMisc::SdTpOptionsMisc(weld::Container* pPage, 
weld::DialogController*
     , m_xPresentationFrame(m_xBuilder->weld_frame("presentationframe"))
     , m_xLbMetric(m_xBuilder->weld_combo_box("units"))
     , m_xMtrFldTabstop(m_xBuilder->weld_metric_spin_button("metricFields", 
FieldUnit::MM))
-    , m_xCbxEnableSdremote(m_xBuilder->weld_check_button("enremotcont"))
     , m_xCbxCompatibility(m_xBuilder->weld_check_button("cbCompatibility"))
     , m_xScaleFrame(m_xBuilder->weld_frame("scaleframe"))
     , m_xCbScale(m_xBuilder->weld_combo_box("scaleBox"))
@@ -361,7 +360,7 @@ OUString SdTpOptionsMisc::GetAllStrings()
 
     OUString checkButton[] = { "startwithwizard", "copywhenmove", 
"backgroundback",
                                "objalwymov",      "distortcb",    
"cbCompatibility",
-                               "enremotcont",     "qickedit",     
"textselected"};
+                               "qickedit",     "textselected"};
 
     for (const auto& check : checkButton)
     {
@@ -382,7 +381,6 @@ bool SdTpOptionsMisc::FillItemSet( SfxItemSet* rAttrs )
         m_xCbxPickThrough->get_state_changed_from_saved()               ||
         m_xCbxMasterPageCache->get_state_changed_from_saved()           ||
         m_xCbxCopy->get_state_changed_from_saved()                      ||
-        m_xCbxEnableSdremote->get_state_changed_from_saved()            ||
         m_xCbxCompatibility->get_state_changed_from_saved()             ||
         m_xCbxDistort->get_state_changed_from_saved())
     {
@@ -394,7 +392,6 @@ bool SdTpOptionsMisc::FillItemSet( SfxItemSet* rAttrs )
         aOptsItem.GetOptionsMisc().SetPickThrough( 
m_xCbxPickThrough->get_active() );
         aOptsItem.GetOptionsMisc().SetMasterPagePaintCaching( 
m_xCbxMasterPageCache->get_active() );
         aOptsItem.GetOptionsMisc().SetDragWithCopy( m_xCbxCopy->get_active() );
-        aOptsItem.GetOptionsMisc().SetEnableSdremote( 
m_xCbxEnableSdremote->get_active() );
         aOptsItem.GetOptionsMisc().SetSummationOfParagraphs( 
m_xCbxCompatibility->get_active() );
         aOptsItem.GetOptionsMisc().SetCrookNoContortion( 
m_xCbxDistort->get_active() );
         rAttrs->Put( aOptsItem );
@@ -442,7 +439,6 @@ void SdTpOptionsMisc::Reset( const SfxItemSet* rAttrs )
     m_xCbxPickThrough->set_active( aOptsItem.GetOptionsMisc().IsPickThrough() 
);
     m_xCbxMasterPageCache->set_active( 
aOptsItem.GetOptionsMisc().IsMasterPagePaintCaching() );
     m_xCbxCopy->set_active( aOptsItem.GetOptionsMisc().IsDragWithCopy() );
-    m_xCbxEnableSdremote->set_active( 
aOptsItem.GetOptionsMisc().IsEnableSdremote() );
     m_xCbxCompatibility->set_active( 
aOptsItem.GetOptionsMisc().IsSummationOfParagraphs() );
     m_xCbxDistort->set_active( 
aOptsItem.GetOptionsMisc().IsCrookNoContortion() );
     m_xCbxStartWithTemplate->save_state();
@@ -452,7 +448,6 @@ void SdTpOptionsMisc::Reset( const SfxItemSet* rAttrs )
 
     m_xCbxMasterPageCache->save_state();
     m_xCbxCopy->save_state();
-    m_xCbxEnableSdremote->save_state();
     m_xCbxCompatibility->save_state();
     m_xCbxDistort->save_state();
 
@@ -522,20 +517,10 @@ IMPL_LINK_NOARG(SdTpOptionsMisc, SelectMetricHdl_Impl, 
weld::ComboBox&, void)
     }
 }
 
-void SdTpOptionsMisc::SetImpressMode()
-{
-#ifndef ENABLE_SDREMOTE
-    m_xCbxEnableSdremote->hide();
-#else
-    (void) this; // loplugin:staticmethods
-#endif
-}
-
 void SdTpOptionsMisc::SetDrawMode()
 {
     m_xScaleFrame->show();
     m_xNewDocumentFrame->hide();
-    m_xCbxEnableSdremote->hide();
     m_xCbxCompatibility->hide();
     m_xNewDocLb->hide();
     m_xCbScale->show();
@@ -641,8 +626,6 @@ void SdTpOptionsMisc::PageCreated(const SfxAllItemSet& aSet)
         sal_uInt32 nFlags=pFlagItem->GetValue();
         if ( ( nFlags & SD_DRAW_MODE ) == SD_DRAW_MODE )
             SetDrawMode();
-        if ( ( nFlags & SD_IMPRESS_MODE ) == SD_IMPRESS_MODE )
-            SetImpressMode();
     }
 }
 
diff --git a/sd/source/ui/inc/present.hxx b/sd/source/ui/inc/present.hxx
index 0f59f860e4b2..155e267d4e08 100644
--- a/sd/source/ui/inc/present.hxx
+++ b/sd/source/ui/inc/present.hxx
@@ -55,7 +55,8 @@ private:
     std::unique_ptr<weld::CheckButton> m_xCbxChangePage;
     std::unique_ptr<weld::CheckButton> m_xCbxAlwaysOnTop;
     std::unique_ptr<weld::CheckButton> m_xCbxShowNavigationButton;
-
+    std::unique_ptr<weld::Frame> m_xFrameEnableRemote;
+    std::unique_ptr<weld::CheckButton> m_xCbxEnableRemote;
 
     std::unique_ptr<weld::ComboBox> m_xLbConsole;
 
diff --git a/sd/source/ui/inc/tpoption.hxx b/sd/source/ui/inc/tpoption.hxx
index c798f957b10b..c974ccda07e6 100644
--- a/sd/source/ui/inc/tpoption.hxx
+++ b/sd/source/ui/inc/tpoption.hxx
@@ -88,7 +88,6 @@ private:
     std::unique_ptr<weld::ComboBox> m_xLbMetric;
     std::unique_ptr<weld::MetricSpinButton> m_xMtrFldTabstop;
 
-    std::unique_ptr<weld::CheckButton> m_xCbxEnableSdremote;
     std::unique_ptr<weld::CheckButton> m_xCbxCompatibility;
 
     //Scale
@@ -130,16 +129,10 @@ public:
     virtual void Reset( const SfxItemSet * ) override;
 
     /** Hide Impress specific controls, make Draw specific controls visible
-        and arrange the visible controls.  Do not call this method or the
-        <member>SetImpressMode()</member> method more than once.
+        and arrange the visible controls.  Do not call this method more than 
once.
     */
     void SetDrawMode();
 
-    /** Hide Draw specific controls, make Impress specific controls visible
-        and arrange the visible controls.  Do not call this method or the
-        <member>SetDrawMode()</member> method more than once.
-    */
-    void SetImpressMode();
     virtual void        PageCreated(const SfxAllItemSet& aSet) override;
 };
 
diff --git a/sd/uiconfig/simpress/ui/optimpressgeneralpage.ui 
b/sd/uiconfig/simpress/ui/optimpressgeneralpage.ui
index 99e1839c5582..f560493f0191 100644
--- a/sd/uiconfig/simpress/ui/optimpressgeneralpage.ui
+++ b/sd/uiconfig/simpress/ui/optimpressgeneralpage.ui
@@ -89,60 +89,6 @@
         <property name="top-attach">0</property>
       </packing>
     </child>
-    <child>
-      <object class="GtkFrame" id="presentationframe">
-        <property name="visible">True</property>
-        <property name="can-focus">False</property>
-        <property name="label-xalign">0</property>
-        <property name="shadow-type">none</property>
-        <child>
-          <!-- n-columns=1 n-rows=1 -->
-          <object class="GtkGrid" id="grid5">
-            <property name="visible">True</property>
-            <property name="can-focus">False</property>
-            <property name="margin-start">12</property>
-            <property name="margin-top">6</property>
-            <property name="hexpand">True</property>
-            <property name="row-spacing">6</property>
-            <property name="column-spacing">12</property>
-            <child>
-              <object class="GtkCheckButton" id="enremotcont">
-                <property name="label" translatable="yes" 
context="optimpressgeneralpage|enremotcont">Enable remote control</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="use-underline">True</property>
-                <property name="draw-indicator">True</property>
-                <child internal-child="accessible">
-                  <object class="AtkObject" id="enremotcont-atkobject">
-                    <property name="AtkObject::accessible-description" 
translatable="yes" context="extended_tip|enremotcont">Specifies that you want 
to enable Bluetooth remote control while Impress is running.</property>
-                  </object>
-                </child>
-              </object>
-              <packing>
-                <property name="left-attach">0</property>
-                <property name="top-attach">0</property>
-              </packing>
-            </child>
-          </object>
-        </child>
-        <child type="label">
-          <object class="GtkLabel" id="label7">
-            <property name="visible">True</property>
-            <property name="can-focus">False</property>
-            <property name="label" translatable="yes" 
context="optimpressgeneralpage|label7">Presentation</property>
-            <attributes>
-              <attribute name="weight" value="bold"/>
-            </attributes>
-          </object>
-        </child>
-      </object>
-      <packing>
-        <property name="left-attach">1</property>
-        <property name="top-attach">0</property>
-      </packing>
-    </child>
     <child>
       <object class="GtkFrame" id="frame1">
         <property name="visible">True</property>
@@ -469,7 +415,7 @@
       </object>
       <packing>
         <property name="left-attach">1</property>
-        <property name="top-attach">1</property>
+        <property name="top-attach">0</property>
       </packing>
     </child>
     <child>
@@ -659,9 +605,12 @@
       </object>
       <packing>
         <property name="left-attach">1</property>
-        <property name="top-attach">2</property>
+        <property name="top-attach">1</property>
       </packing>
     </child>
+    <child>
+      <placeholder/>
+    </child>
     <child internal-child="accessible">
       <object class="AtkObject" id="OptSavePage-atkobject">
         <property name="AtkObject::accessible-description" translatable="yes" 
context="extended_tip|OptSavePage">Defines the general options for drawing or 
presentation documents.</property>
diff --git a/sd/uiconfig/simpress/ui/presentationdialog.ui 
b/sd/uiconfig/simpress/ui/presentationdialog.ui
index a6b97b886932..9ca601e5c645 100644
--- a/sd/uiconfig/simpress/ui/presentationdialog.ui
+++ b/sd/uiconfig/simpress/ui/presentationdialog.ui
@@ -80,7 +80,7 @@
           </packing>
         </child>
         <child>
-          <!-- n-columns=1 n-rows=3 -->
+          <!-- n-columns=1 n-rows=4 -->
           <object class="GtkGrid" id="grid1">
             <property name="visible">True</property>
             <property name="can-focus">False</property>
@@ -733,6 +733,72 @@
                 <property name="top-attach">1</property>
               </packing>
             </child>
+            <child>
+              <object class="GtkFrame" id="frameremote">
+                <property name="visible">True</property>
+                <property name="can-focus">False</property>
+                <property name="hexpand">True</property>
+                <property name="vexpand">True</property>
+                <property name="label-xalign">0</property>
+                <property name="shadow-type">none</property>
+                <child>
+                  <!-- n-columns=2 n-rows=1 -->
+                  <object class="GtkGrid" id="grid10">
+                    <property name="visible">True</property>
+                    <property name="can-focus">False</property>
+                    <property name="margin-start">12</property>
+                    <property name="margin-top">6</property>
+                    <property name="hexpand">True</property>
+                    <property name="vexpand">True</property>
+                    <child>
+                      <object class="GtkCheckButton" id="enableremote">
+                        <property name="label" translatable="yes" 
context="presentationdialog|enableremote">Enable remote control</property>
+                        <property name="visible">True</property>
+                        <property name="can-focus">True</property>
+                        <property name="receives-default">False</property>
+                        <property name="use-underline">True</property>
+                        <property name="draw-indicator">True</property>
+                      </object>
+                      <packing>
+                        <property name="left-attach">0</property>
+                        <property name="top-attach">0</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkLinkButton" id="learnmore">
+                        <property name="label" translatable="yes" 
context="presentationdialog|learnmore">Download App ...</property>
+                        <property name="visible">True</property>
+                        <property name="can-focus">True</property>
+                        <property name="receives-default">True</property>
+                        <property name="tooltip-text" translatable="yes" 
context="presentationdialog|learnmore|tooltip_text">Download LibreOffice 
Impress Remote to remotely control the presentation from your smartphone or 
smartwatch.</property>
+                        <property name="halign">end</property>
+                        <property name="hexpand">True</property>
+                        <property name="relief">none</property>
+                        <property 
name="uri">https://www.libreoffice.org/download/impress-remote-2/</property>
+                      </object>
+                      <packing>
+                        <property name="left-attach">1</property>
+                        <property name="top-attach">0</property>
+                      </packing>
+                    </child>
+                  </object>
+                </child>
+                <child type="label">
+                  <object class="GtkLabel" id="label5">
+                    <property name="visible">True</property>
+                    <property name="can-focus">False</property>
+                    <property name="label" translatable="yes" 
context="presentationdialog|label3">Remote control</property>
+                    <attributes>
+                      <attribute name="weight" value="bold"/>
+                    </attributes>
+                  </object>
+                </child>
+              </object>
+              <packing>
+                <property name="left-attach">0</property>
+                <property name="top-attach">3</property>
+              </packing>
+            </child>
           </object>
           <packing>
             <property name="expand">False</property>

Reply via email to