include/sfx2/templatelocalview.hxx           |    2 -
 include/sfx2/thumbnailview.hxx               |    3 +-
 sfx2/inc/recentdocsview.hxx                  |    2 -
 sfx2/source/control/recentdocsview.cxx       |    4 +-
 sfx2/source/control/templatedefaultview.cxx  |    4 +-
 sfx2/source/control/templatedlglocalview.cxx |   40 +++++++++++++--------------
 sfx2/source/control/templatelocalview.cxx    |   24 ++++++++--------
 sfx2/source/dialog/backingwindow.cxx         |    3 --
 sfx2/uiconfig/ui/startcenter.ui              |    4 --
 9 files changed, 41 insertions(+), 45 deletions(-)

New commits:
commit 789a25399fda1c013185be4a0d4f287e373b8e44
Author:     Michael Weghorn <[email protected]>
AuthorDate: Wed Dec 31 13:45:13 2025 +0100
Commit:     Michael Weghorn <[email protected]>
CommitDate: Sat Jan 3 08:11:08 2026 +0100

    sfx2: Drop unused menu for recent files view in start center
    
    For RecentDocsView, the base class member
    ThumbnailView::mxContextMenu is set but unused.
    
    Drop the menu altogether and have a default param
    in the ThumbnailView ctor for the menu instead to
    not have to explicitly pass a null one.
    
    Change-Id: I46528a662aaf7dc738eb97a7aa81aa32fc04ae79
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/196384
    Reviewed-by: Michael Weghorn <[email protected]>
    Tested-by: Jenkins

diff --git a/include/sfx2/thumbnailview.hxx b/include/sfx2/thumbnailview.hxx
index f67eeddb05e5..657b1048bab6 100644
--- a/include/sfx2/thumbnailview.hxx
+++ b/include/sfx2/thumbnailview.hxx
@@ -162,7 +162,8 @@ class SFX2_DLLPUBLIC ThumbnailView : public 
weld::CustomWidgetController
     friend class ThumbnailViewItemAcc;
 
 public:
-    ThumbnailView(std::unique_ptr<weld::ScrolledWindow> xWindow, 
std::unique_ptr<weld::Menu> xMenu);
+    ThumbnailView(std::unique_ptr<weld::ScrolledWindow> xWindow,
+                  std::unique_ptr<weld::Menu> xMenu = {});
 
     virtual ~ThumbnailView() override;
 
diff --git a/sfx2/inc/recentdocsview.hxx b/sfx2/inc/recentdocsview.hxx
index 42b57497ed9e..11cae9ffa63d 100644
--- a/sfx2/inc/recentdocsview.hxx
+++ b/sfx2/inc/recentdocsview.hxx
@@ -60,7 +60,7 @@ namespace sfx2
 class RecentDocsView final : public ThumbnailView
 {
 public:
-    RecentDocsView(std::unique_ptr<weld::ScrolledWindow> xWindow, 
std::unique_ptr<weld::Menu> xMenu);
+    RecentDocsView(std::unique_ptr<weld::ScrolledWindow> xWindow);
     virtual ~RecentDocsView() override;
 
     void insertItem(const OUString& rURL, const OUString& rTitle, const 
OUString& rThumbnail,
diff --git a/sfx2/source/control/recentdocsview.cxx 
b/sfx2/source/control/recentdocsview.cxx
index dc4f415acf4d..a55cc03cd2c2 100644
--- a/sfx2/source/control/recentdocsview.cxx
+++ b/sfx2/source/control/recentdocsview.cxx
@@ -58,8 +58,8 @@ namespace sfx2
 constexpr tools::Long gnTextHeight = 30;
 constexpr tools::Long gnItemPadding = 5;
 
-RecentDocsView::RecentDocsView(std::unique_ptr<weld::ScrolledWindow> xWindow, 
std::unique_ptr<weld::Menu> xMenu)
-    : ThumbnailView(std::move(xWindow), std::move(xMenu))
+RecentDocsView::RecentDocsView(std::unique_ptr<weld::ScrolledWindow> xWindow)
+    : ThumbnailView(std::move(xWindow))
     , mnFileTypes(ApplicationType::TYPE_NONE)
     , mnLastMouseDownItem(THUMBNAILVIEW_ITEM_NOTFOUND)
     , maWelcomeLine1(SfxResId(STR_WELCOME_LINE1))
diff --git a/sfx2/source/dialog/backingwindow.cxx 
b/sfx2/source/dialog/backingwindow.cxx
index b1e5c7e81bdc..29a9753e4ec1 100644
--- a/sfx2/source/dialog/backingwindow.cxx
+++ b/sfx2/source/dialog/backingwindow.cxx
@@ -172,8 +172,7 @@ BackingWindow::BackingWindow(vcl::Window* i_pParent)
     , mxAllButtonsBox(m_xBuilder->weld_container(u"all_buttons_box"_ustr))
     , mxButtonsBox(m_xBuilder->weld_container(u"buttons_box"_ustr))
     , mxSmallButtonsBox(m_xBuilder->weld_container(u"small_buttons_box"_ustr))
-    , mxAllRecentThumbnails(new 
sfx2::RecentDocsView(m_xBuilder->weld_scrolled_window(u"scrollrecent"_ustr, 
true),
-                                                     
m_xBuilder->weld_menu(u"recentmenu"_ustr)))
+    , mxAllRecentThumbnails(new 
sfx2::RecentDocsView(m_xBuilder->weld_scrolled_window(u"scrollrecent"_ustr, 
true)))
     , mxAllRecentThumbnailsWin(new weld::CustomWeld(*m_xBuilder, 
u"all_recent"_ustr, *mxAllRecentThumbnails))
     , mxLocalView(new 
TemplateDefaultView(m_xBuilder->weld_scrolled_window(u"scrolllocal"_ustr, true),
                                           
m_xBuilder->weld_menu(u"localmenu"_ustr)))
diff --git a/sfx2/uiconfig/ui/startcenter.ui b/sfx2/uiconfig/ui/startcenter.ui
index 1d829413bb3a..19c3bd7b250e 100644
--- a/sfx2/uiconfig/ui/startcenter.ui
+++ b/sfx2/uiconfig/ui/startcenter.ui
@@ -70,10 +70,6 @@
     <property name="can-focus">False</property>
     <property name="icon-name">framework/res/remote-documents.png</property>
   </object>
-  <object class="GtkMenu" id="recentmenu">
-    <property name="visible">True</property>
-    <property name="can-focus">False</property>
-  </object>
   <object class="GtkImage" id="templates_all_image">
     <property name="visible">True</property>
     <property name="can-focus">False</property>
commit 0a0548872c1ee9db6deca4917563658105a5cc86
Author:     Michael Weghorn <[email protected]>
AuthorDate: Wed Dec 31 13:13:34 2025 +0100
Commit:     Michael Weghorn <[email protected]>
CommitDate: Sat Jan 3 08:11:00 2026 +0100

    Use "p" prefix for TemplateDlgLocalView pointer member
    
    Adhere to naming conventions to make more obvious
    this is a pointer.
    
    Change-Id: I0ee2be3e19b222845bb3ab3c0f164ebd82ab3755
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/196383
    Reviewed-by: Michael Weghorn <[email protected]>
    Tested-by: Jenkins

diff --git a/include/sfx2/templatelocalview.hxx 
b/include/sfx2/templatelocalview.hxx
index c88ee0bd22b2..ebe5e4f303c0 100644
--- a/include/sfx2/templatelocalview.hxx
+++ b/include/sfx2/templatelocalview.hxx
@@ -166,7 +166,7 @@ protected:
 
     sal_uInt16 mnCurRegionId;
 
-    TemplateViewItem *maSelectedItem;
+    TemplateViewItem* mpSelectedItem;
 
     tools::Long mnThumbnailWidth;
     tools::Long mnThumbnailHeight;
diff --git a/sfx2/source/control/templatedefaultview.cxx 
b/sfx2/source/control/templatedefaultview.cxx
index fa253daf7544..d4c2d0fb7893 100644
--- a/sfx2/source/control/templatedefaultview.cxx
+++ b/sfx2/source/control/templatedefaultview.cxx
@@ -81,8 +81,8 @@ void TemplateDefaultView::createContextMenu()
     mxContextMenu->append(u"open"_ustr,SfxResId(STR_OPEN));
     mxContextMenu->append(u"edit"_ustr,SfxResId(STR_EDIT_TEMPLATE));
     deselectItems();
-    maSelectedItem->setSelection(true);
-    maItemStateHdl.Call(maSelectedItem);
+    mpSelectedItem->setSelection(true);
+    maItemStateHdl.Call(mpSelectedItem);
     ContextMenuSelectHdl(mxContextMenu->popup_at_rect(GetDrawingArea(), 
tools::Rectangle(maPosition, Size(1,1))));
     Invalidate();
 }
diff --git a/sfx2/source/control/templatedlglocalview.cxx 
b/sfx2/source/control/templatedlglocalview.cxx
index 8103c9dc15e5..fa6c6eea09b0 100644
--- a/sfx2/source/control/templatedlglocalview.cxx
+++ b/sfx2/source/control/templatedlglocalview.cxx
@@ -149,22 +149,22 @@ void TemplateDlgLocalView::createContextMenu(const bool 
bIsDefault, const bool b
 void TemplateDlgLocalView::ContextMenuSelectHdl(std::u16string_view rIdent)
 {
     if (rIdent == u"open")
-        maOpenTemplateHdl.Call(maSelectedItem->getPath());
+        maOpenTemplateHdl.Call(mpSelectedItem->getPath());
     else if (rIdent == u"edit")
-        maEditTemplateHdl.Call(maSelectedItem->getPath());
+        maEditTemplateHdl.Call(mpSelectedItem->getPath());
     else if (rIdent == u"rename")
     {
         InputDialog aTitleEditDlg(GetDrawingArea(), 
SfxResId(STR_RENAME_TEMPLATE));
         aTitleEditDlg.set_title(SfxResId(STR_WINDOW_TITLE_RENAME_TEMPLATE));
-        OUString sOldTitle = maSelectedItem->getTitle();
+        OUString sOldTitle = mpSelectedItem->getTitle();
         aTitleEditDlg.SetEntryText(sOldTitle);
         aTitleEditDlg.HideHelpBtn();
 
         auto aCurRegionItems = getFilteredItems([&](const 
TemplateItemProperties& rItem) {
-            return rItem.aRegionName == 
getRegionName(maSelectedItem->mnRegionId);
+            return rItem.aRegionName == 
getRegionName(mpSelectedItem->mnRegionId);
         });
         OUString sTooltip(SfxResId(STR_TOOLTIP_ERROR_RENAME_TEMPLATE));
-        sTooltip = sTooltip.replaceFirst("$2", 
getRegionName(maSelectedItem->mnRegionId));
+        sTooltip = sTooltip.replaceFirst("$2", 
getRegionName(mpSelectedItem->mnRegionId));
         aTitleEditDlg.setCheckEntry([&](OUString sNewTitle) {
             if (sNewTitle.isEmpty() || sNewTitle == sOldTitle)
                 return true;
@@ -184,8 +184,8 @@ void 
TemplateDlgLocalView::ContextMenuSelectHdl(std::u16string_view rIdent)
 
         if (!sNewTitle.isEmpty() && sNewTitle != sOldTitle)
         {
-            maSelectedItem->setTitle(sNewTitle);
-            ListView::rename(OUString::number(maSelectedItem->mnId), 
maSelectedItem->maTitle);
+            mpSelectedItem->setTitle(sNewTitle);
+            ListView::rename(OUString::number(mpSelectedItem->mnId), 
mpSelectedItem->maTitle);
         }
     }
     else if (rIdent == u"delete")
@@ -196,21 +196,21 @@ void 
TemplateDlgLocalView::ContextMenuSelectHdl(std::u16string_view rIdent)
         if (xQueryDlg->run() != RET_YES)
             return;
 
-        maDeleteTemplateHdl.Call(maSelectedItem);
+        maDeleteTemplateHdl.Call(mpSelectedItem);
         reload();
     }
     else if (rIdent == u"default")
     {
-        maDefaultTemplateHdl.Call(maSelectedItem);
+        maDefaultTemplateHdl.Call(mpSelectedItem);
         ListView::refreshDefaultColumn();
     }
     else if (rIdent == u"move")
     {
-        maMoveTemplateHdl.Call(maSelectedItem);
+        maMoveTemplateHdl.Call(mpSelectedItem);
     }
     else if (rIdent == u"export")
     {
-        maExportTemplateHdl.Call(maSelectedItem);
+        maExportTemplateHdl.Call(mpSelectedItem);
     }
 }
 
@@ -309,7 +309,7 @@ void TemplateDlgLocalView::syncCursor()
         size_t nPos = GetItemPos(nCursorId);
         ThumbnailViewItem* pItem = ImplGetItem(nPos);
         if (TemplateViewItem* pViewItem = 
dynamic_cast<TemplateViewItem*>(pItem))
-            maSelectedItem = pViewItem;
+            mpSelectedItem = pViewItem;
     }
 }
 
@@ -329,12 +329,12 @@ void TemplateDlgLocalView::updateSelection()
     size_t nPos = GetItemPos(nCursorId);
     ThumbnailViewItem* pItem = ImplGetItem(nPos);
     if (TemplateViewItem* pViewItem = dynamic_cast<TemplateViewItem*>(pItem))
-        maSelectedItem = pViewItem;
+        mpSelectedItem = pViewItem;
 }
 
 IMPL_LINK_NOARG(TemplateDlgLocalView, RowActivatedHdl, weld::TreeView&, bool)
 {
-    maOpenTemplateHdl.Call(maSelectedItem->getPath());
+    maOpenTemplateHdl.Call(mpSelectedItem->getPath());
     return true;
 }
 
@@ -350,8 +350,8 @@ IMPL_LINK(TemplateDlgLocalView, PopupMenuHdl, const 
CommandEvent&, rCEvt, bool)
         Point aPosition(rCEvt.GetMousePosPixel());
         maPosition = aPosition;
         updateSelection();
-        if (maSelectedItem)
-            maCreateContextMenuHdl.Call(maSelectedItem);
+        if (mpSelectedItem)
+            maCreateContextMenuHdl.Call(mpSelectedItem);
         return true;
     }
     else
@@ -360,8 +360,8 @@ IMPL_LINK(TemplateDlgLocalView, PopupMenuHdl, const 
CommandEvent&, rCEvt, bool)
             return true;
         maPosition = Point(0, 0);
         updateSelection();
-        if (maSelectedItem)
-            maCreateContextMenuHdl.Call(maSelectedItem);
+        if (mpSelectedItem)
+            maCreateContextMenuHdl.Call(mpSelectedItem);
         return true;
     }
 }
@@ -398,7 +398,7 @@ bool TemplateDlgLocalView::KeyInput(const KeyEvent& rKEvt)
         if (xQueryDlg->run() != RET_YES)
             return true;
 
-        maDeleteTemplateHdl.Call(maSelectedItem);
+        maDeleteTemplateHdl.Call(mpSelectedItem);
         reload();
     }
 
@@ -418,7 +418,7 @@ IMPL_LINK(TemplateDlgLocalView, KeyPressHdl, const 
KeyEvent&, rKEvt, bool)
         if (xQueryDlg->run() != RET_YES)
             return true;
 
-        maDeleteTemplateHdl.Call(maSelectedItem);
+        maDeleteTemplateHdl.Call(mpSelectedItem);
         reload();
     }
     return false;
diff --git a/sfx2/source/control/templatelocalview.cxx 
b/sfx2/source/control/templatelocalview.cxx
index f69a48a6d255..a21c00fdb673 100644
--- a/sfx2/source/control/templatelocalview.cxx
+++ b/sfx2/source/control/templatelocalview.cxx
@@ -86,7 +86,7 @@ 
TemplateLocalView::TemplateLocalView(std::unique_ptr<weld::ScrolledWindow> xWind
                                            std::unique_ptr<weld::Menu> xMenu)
     : ThumbnailView(std::move(xWindow), std::move(xMenu))
     , mnCurRegionId(0)
-    , maSelectedItem(nullptr)
+    , mpSelectedItem(nullptr)
     , mnThumbnailWidth(TEMPLATE_THUMBNAIL_MAX_WIDTH)
     , mnThumbnailHeight(TEMPLATE_THUMBNAIL_MAX_HEIGHT)
     , maPosition(0,0)
@@ -193,21 +193,21 @@ TemplateContainerItem* 
TemplateLocalView::getRegion(std::u16string_view rName)
 void TemplateLocalView::ContextMenuSelectHdl(std::u16string_view  rIdent)
 {
     if (rIdent == u"open")
-        maOpenTemplateHdl.Call(maSelectedItem->getPath());
+        maOpenTemplateHdl.Call(mpSelectedItem->getPath());
     else if (rIdent == u"edit")
-        maEditTemplateHdl.Call(maSelectedItem->getPath());
+        maEditTemplateHdl.Call(mpSelectedItem->getPath());
     else if (rIdent == u"rename")
     {
         InputDialog aTitleEditDlg(GetDrawingArea(), 
SfxResId(STR_RENAME_TEMPLATE));
-        OUString sOldTitle = maSelectedItem->getTitle();
+        OUString sOldTitle = mpSelectedItem->getTitle();
         aTitleEditDlg.SetEntryText(sOldTitle);
         aTitleEditDlg.HideHelpBtn();
 
         auto aCurRegionItems = getFilteredItems([&](const 
TemplateItemProperties& rItem) {
-            return rItem.aRegionName == 
getRegionName(maSelectedItem->mnRegionId);
+            return rItem.aRegionName == 
getRegionName(mpSelectedItem->mnRegionId);
         });
         OUString sTooltip(SfxResId(STR_TOOLTIP_ERROR_RENAME_TEMPLATE));
-        sTooltip = sTooltip.replaceFirst("$2", 
getRegionName(maSelectedItem->mnRegionId));
+        sTooltip = sTooltip.replaceFirst("$2", 
getRegionName(mpSelectedItem->mnRegionId));
         aTitleEditDlg.setCheckEntry([&](OUString sNewTitle) {
             if (sNewTitle.isEmpty() || sNewTitle == sOldTitle)
                 return true;
@@ -227,7 +227,7 @@ void 
TemplateLocalView::ContextMenuSelectHdl(std::u16string_view  rIdent)
 
         if ( !sNewTitle.isEmpty() && sNewTitle != sOldTitle )
         {
-            maSelectedItem->setTitle(sNewTitle);
+            mpSelectedItem->setTitle(sNewTitle);
         }
     }
     else if (rIdent == u"delete")
@@ -237,11 +237,11 @@ void 
TemplateLocalView::ContextMenuSelectHdl(std::u16string_view  rIdent)
         if (xQueryDlg->run() != RET_YES)
             return;
 
-        maDeleteTemplateHdl.Call(maSelectedItem);
+        maDeleteTemplateHdl.Call(mpSelectedItem);
         reload();
     }
     else if (rIdent == u"default")
-        maDefaultTemplateHdl.Call(maSelectedItem);
+        maDefaultTemplateHdl.Call(mpSelectedItem);
 }
 
 sal_uInt16 TemplateLocalView::getRegionId(size_t pos) const
@@ -713,7 +713,7 @@ bool TemplateLocalView::Command(const CommandEvent& rCEvt)
                 pViewItem->setSelection(true);
                 maItemStateHdl.Call(pViewItem);
             }
-            maSelectedItem = pViewItem;
+            mpSelectedItem = pViewItem;
             maCreateContextMenuHdl.Call(pViewItem);
         }
     }
@@ -725,8 +725,8 @@ bool TemplateLocalView::Command(const CommandEvent& rCEvt)
             {
                 tools::Rectangle aRect = pItem->getDrawArea();
                 maPosition = aRect.Center();
-                maSelectedItem = dynamic_cast<TemplateViewItem*>(pItem);
-                maCreateContextMenuHdl.Call(maSelectedItem);
+                mpSelectedItem = dynamic_cast<TemplateViewItem*>(pItem);
+                maCreateContextMenuHdl.Call(mpSelectedItem);
                 break;
             }
         }

Reply via email to