svx/uiconfig/ui/themedialog.ui     |   56 ++++++++++++-------------------------
 sw/source/uibase/shells/basesh.cxx |   15 +++++++++
 2 files changed, 34 insertions(+), 37 deletions(-)

New commits:
commit 7aee92f3a378ccb13d07fc62ed4955a248a03c9d
Author:     Tomaž Vajngerl <tomaz.vajng...@collabora.co.uk>
AuthorDate: Mon Jan 23 22:19:30 2023 +0900
Commit:     Tomaž Vajngerl <qui...@gmail.com>
CommitDate: Tue Jan 24 11:34:31 2023 +0000

    sw: disable theme dialog if the theme is not set to the draw page
    
    Change-Id: I3d60e9b82dfd59b5afc7769a7895acfcc5c3417c
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146049
    Tested-by: Tomaž Vajngerl <qui...@gmail.com>
    Reviewed-by: Tomaž Vajngerl <qui...@gmail.com>

diff --git a/sw/source/uibase/shells/basesh.cxx 
b/sw/source/uibase/shells/basesh.cxx
index ff578e6d46df..6d6b388512dd 100644
--- a/sw/source/uibase/shells/basesh.cxx
+++ b/sw/source/uibase/shells/basesh.cxx
@@ -2087,6 +2087,21 @@ void SwBaseShell::GetState( SfxItemSet &rSet )
             break;
             case SID_THEME_DIALOG:
             {
+                bool bDisable = true;
+                auto* pDocument = rSh.GetDoc();
+                auto* pDocumentShell = pDocument->GetDocShell();
+                if (pDocumentShell)
+                {
+                    SdrPage* pPage = 
pDocument->getIDocumentDrawModelAccess().GetDrawModel()->GetPage(0);
+                    if (pPage)
+                    {
+                        svx::Theme* pTheme = 
pPage->getSdrPageProperties().GetTheme();
+                        if (pTheme)
+                            bDisable = false;
+                    }
+                }
+                if (bDisable)
+                    rSet.DisableItem(nWhich);
             }
             break;
         }
commit 99975ff38432921db0d96666d0235cf7b33c865d
Author:     Tomaž Vajngerl <tomaz.vajng...@collabora.co.uk>
AuthorDate: Mon Jan 23 22:18:00 2023 +0900
Commit:     Tomaž Vajngerl <qui...@gmail.com>
CommitDate: Tue Jan 24 11:34:19 2023 +0000

    sw: remove tab pages from theme dialog - crashes online
    
    Remove the tab pages for now, as they crash the dialog in online,
    and the tab pages aren't used currently anyway.
    
    Change-Id: I35a2875510fd74b6a3060edf83c7190ba80a4eef
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146048
    Tested-by: Tomaž Vajngerl <qui...@gmail.com>
    Reviewed-by: Tomaž Vajngerl <qui...@gmail.com>

diff --git a/svx/uiconfig/ui/themedialog.ui b/svx/uiconfig/ui/themedialog.ui
index 90aecc8ad1c9..78d226d15ad3 100644
--- a/svx/uiconfig/ui/themedialog.ui
+++ b/svx/uiconfig/ui/themedialog.ui
@@ -75,63 +75,45 @@
           </packing>
         </child>
         <child>
-          <object class="GtkNotebook">
+          <!-- n-columns=1 n-rows=1 -->
+          <object class="GtkGrid">
             <property name="visible">True</property>
-            <property name="can-focus">True</property>
-            <property name="hexpand">False</property>
-            <property name="vexpand">True</property>
+            <property name="can-focus">False</property>
             <child>
-              <!-- n-columns=1 n-rows=1 -->
-              <object class="GtkGrid">
+              <object class="GtkScrolledWindow" id="scroll_window">
                 <property name="visible">True</property>
-                <property name="can-focus">False</property>
+                <property name="can-focus">True</property>
+                <property name="hexpand">False</property>
+                <property name="vexpand">False</property>
+                <property name="hscrollbar-policy">never</property>
+                <property name="vscrollbar-policy">never</property>
+                <property name="shadow-type">in</property>
                 <child>
-                  <object class="GtkScrolledWindow" id="scroll_window">
+                  <object class="GtkViewport">
                     <property name="visible">True</property>
-                    <property name="can-focus">True</property>
-                    <property name="hexpand">False</property>
-                    <property name="vexpand">False</property>
-                    <property name="hscrollbar-policy">never</property>
-                    <property name="vscrollbar-policy">never</property>
-                    <property name="shadow-type">in</property>
+                    <property name="can-focus">False</property>
                     <child>
-                      <object class="GtkViewport">
+                      <object class="GtkDrawingArea" 
id="valueset_theme_colors">
                         <property name="visible">True</property>
                         <property name="can-focus">False</property>
-                        <child>
-                          <object class="GtkDrawingArea" 
id="valueset_theme_colors">
-                            <property name="visible">True</property>
-                            <property name="can-focus">False</property>
-                            <property name="events">GDK_BUTTON_PRESS_MASK | 
GDK_BUTTON_RELEASE_MASK | GDK_KEY_PRESS_MASK | GDK_KEY_RELEASE_MASK | 
GDK_STRUCTURE_MASK</property>
-                            <property name="hexpand">True</property>
-                            <property name="vexpand">True</property>
-                          </object>
-                        </child>
+                        <property name="events">GDK_BUTTON_PRESS_MASK | 
GDK_BUTTON_RELEASE_MASK | GDK_KEY_PRESS_MASK | GDK_KEY_RELEASE_MASK | 
GDK_STRUCTURE_MASK</property>
+                        <property name="hexpand">True</property>
+                        <property name="vexpand">True</property>
                       </object>
                     </child>
                   </object>
-                  <packing>
-                    <property name="left-attach">0</property>
-                    <property name="top-attach">0</property>
-                  </packing>
                 </child>
               </object>
-            </child>
-            <child type="tab">
-              <object class="GtkLabel">
-                <property name="visible">True</property>
-                <property name="can-focus">False</property>
-                <property name="label" translatable="yes" 
context="themedialog|tab-label">Colors</property>
-              </object>
               <packing>
-                <property name="tab-fill">False</property>
+                <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">1</property>
+            <property name="position">0</property>
           </packing>
         </child>
       </object>

Reply via email to