diff --git a/icon-themes/colibre/sd/res/nextslide_extralarge.png b/icon-themes/colibre/sd/res/nextslide_extralarge.png
new file mode 100644
index 000000000000..4b86301c93cc
Binary files /dev/null and b/icon-themes/colibre/sd/res/nextslide_extralarge.png differ
diff --git a/icon-themes/colibre/sd/res/nextslide_large.png b/icon-themes/colibre/sd/res/nextslide_large.png
new file mode 100644
index 000000000000..4138f3d8bd8b
Binary files /dev/null and b/icon-themes/colibre/sd/res/nextslide_large.png differ
diff --git a/icon-themes/colibre/sd/res/nextslide_mouseover.png b/icon-themes/colibre/sd/res/nextslide_mouseover.png
deleted file mode 100644
index 56b105438d58..000000000000
Binary files a/icon-themes/colibre/sd/res/nextslide_mouseover.png and /dev/null differ
diff --git a/icon-themes/colibre/sd/res/nextslide.png b/icon-themes/colibre/sd/res/nextslide_small.png
similarity index 100%
rename from icon-themes/colibre/sd/res/nextslide.png
rename to icon-themes/colibre/sd/res/nextslide_small.png
diff --git a/icon-themes/colibre/sd/res/prevslide_extralarge.png b/icon-themes/colibre/sd/res/prevslide_extralarge.png
new file mode 100644
index 000000000000..6b8feb9f8a1e
Binary files /dev/null and b/icon-themes/colibre/sd/res/prevslide_extralarge.png differ
diff --git a/icon-themes/colibre/sd/res/prevslide_large.png b/icon-themes/colibre/sd/res/prevslide_large.png
new file mode 100644
index 000000000000..62f33a098b33
Binary files /dev/null and b/icon-themes/colibre/sd/res/prevslide_large.png differ
diff --git a/icon-themes/colibre/sd/res/prevslide_mouseover.png b/icon-themes/colibre/sd/res/prevslide_mouseover.png
deleted file mode 100644
index 547a9a25c956..000000000000
Binary files a/icon-themes/colibre/sd/res/prevslide_mouseover.png and /dev/null differ
diff --git a/icon-themes/colibre/sd/res/prevslide.png b/icon-themes/colibre/sd/res/prevslide_small.png
similarity index 100%
rename from icon-themes/colibre/sd/res/prevslide.png
rename to icon-themes/colibre/sd/res/prevslide_small.png
diff --git a/icon-themes/colibre/sd/res/slideshowmenu_extralarge.png b/icon-themes/colibre/sd/res/slideshowmenu_extralarge.png
new file mode 100644
index 000000000000..c5c5aa235a5c
Binary files /dev/null and b/icon-themes/colibre/sd/res/slideshowmenu_extralarge.png differ
diff --git a/icon-themes/colibre/sd/res/slideshowmenu_large.png b/icon-themes/colibre/sd/res/slideshowmenu_large.png
new file mode 100644
index 000000000000..f053d68226d5
Binary files /dev/null and b/icon-themes/colibre/sd/res/slideshowmenu_large.png differ
diff --git a/icon-themes/colibre/sd/res/slideshowmenu_mouseover.png b/icon-themes/colibre/sd/res/slideshowmenu_mouseover.png
deleted file mode 100644
index 4dfa5588db37..000000000000
Binary files a/icon-themes/colibre/sd/res/slideshowmenu_mouseover.png and /dev/null differ
diff --git a/icon-themes/colibre/sd/res/slideshowmenu.png b/icon-themes/colibre/sd/res/slideshowmenu_small.png
similarity index 100%
rename from icon-themes/colibre/sd/res/slideshowmenu.png
rename to icon-themes/colibre/sd/res/slideshowmenu_small.png
diff --git a/icon-themes/colibre_dark/sd/res/nextslide_extralarge.png b/icon-themes/colibre_dark/sd/res/nextslide_extralarge.png
new file mode 100644
index 000000000000..35d71c44ecdf
Binary files /dev/null and b/icon-themes/colibre_dark/sd/res/nextslide_extralarge.png differ
diff --git a/icon-themes/colibre_dark/sd/res/nextslide_large.png b/icon-themes/colibre_dark/sd/res/nextslide_large.png
new file mode 100644
index 000000000000..5e5b7b5543fc
Binary files /dev/null and b/icon-themes/colibre_dark/sd/res/nextslide_large.png differ
diff --git a/icon-themes/colibre_dark/sd/res/nextslide_mouseover.png b/icon-themes/colibre_dark/sd/res/nextslide_mouseover.png
deleted file mode 100644
index 1a3224d435fc..000000000000
Binary files a/icon-themes/colibre_dark/sd/res/nextslide_mouseover.png and /dev/null differ
diff --git a/icon-themes/colibre_dark/sd/res/nextslide.png b/icon-themes/colibre_dark/sd/res/nextslide_small.png
similarity index 100%
rename from icon-themes/colibre_dark/sd/res/nextslide.png
rename to icon-themes/colibre_dark/sd/res/nextslide_small.png
diff --git a/icon-themes/colibre_dark/sd/res/prevslide_extralarge.png b/icon-themes/colibre_dark/sd/res/prevslide_extralarge.png
new file mode 100644
index 000000000000..77cd5aa56a67
Binary files /dev/null and b/icon-themes/colibre_dark/sd/res/prevslide_extralarge.png differ
diff --git a/icon-themes/colibre_dark/sd/res/prevslide_large.png b/icon-themes/colibre_dark/sd/res/prevslide_large.png
new file mode 100644
index 000000000000..f3a349d64428
Binary files /dev/null and b/icon-themes/colibre_dark/sd/res/prevslide_large.png differ
diff --git a/icon-themes/colibre_dark/sd/res/prevslide_mouseover.png b/icon-themes/colibre_dark/sd/res/prevslide_mouseover.png
deleted file mode 100644
index 94bb1c82f246..000000000000
Binary files a/icon-themes/colibre_dark/sd/res/prevslide_mouseover.png and /dev/null differ
diff --git a/icon-themes/colibre_dark/sd/res/prevslide.png b/icon-themes/colibre_dark/sd/res/prevslide_small.png
similarity index 100%
rename from icon-themes/colibre_dark/sd/res/prevslide.png
rename to icon-themes/colibre_dark/sd/res/prevslide_small.png
diff --git a/icon-themes/colibre_dark/sd/res/slideshowmenu_extralarge.png b/icon-themes/colibre_dark/sd/res/slideshowmenu_extralarge.png
new file mode 100644
index 000000000000..315801145769
Binary files /dev/null and b/icon-themes/colibre_dark/sd/res/slideshowmenu_extralarge.png differ
diff --git a/icon-themes/colibre_dark/sd/res/slideshowmenu_large.png b/icon-themes/colibre_dark/sd/res/slideshowmenu_large.png
new file mode 100644
index 000000000000..49f62fd136a5
Binary files /dev/null and b/icon-themes/colibre_dark/sd/res/slideshowmenu_large.png differ
diff --git a/icon-themes/colibre_dark/sd/res/slideshowmenu_mouseover.png b/icon-themes/colibre_dark/sd/res/slideshowmenu_mouseover.png
deleted file mode 100644
index 4278b2254946..000000000000
Binary files a/icon-themes/colibre_dark/sd/res/slideshowmenu_mouseover.png and /dev/null differ
diff --git a/icon-themes/colibre_dark/sd/res/slideshowmenu.png b/icon-themes/colibre_dark/sd/res/slideshowmenu_small.png
similarity index 100%
rename from icon-themes/colibre_dark/sd/res/slideshowmenu.png
rename to icon-themes/colibre_dark/sd/res/slideshowmenu_small.png
diff --git a/icon-themes/colibre_dark_svg/sd/res/nextslide_extralarge.svg b/icon-themes/colibre_dark_svg/sd/res/nextslide_extralarge.svg
new file mode 100644
index 000000000000..6766bd7c8d41
--- /dev/null
+++ b/icon-themes/colibre_dark_svg/sd/res/nextslide_extralarge.svg
@@ -0,0 +1,47 @@
+
+
diff --git a/icon-themes/colibre_dark_svg/sd/res/nextslide_large.svg b/icon-themes/colibre_dark_svg/sd/res/nextslide_large.svg
new file mode 100644
index 000000000000..fad4590a8b95
--- /dev/null
+++ b/icon-themes/colibre_dark_svg/sd/res/nextslide_large.svg
@@ -0,0 +1,47 @@
+
+
diff --git a/icon-themes/colibre_dark_svg/sd/res/nextslide_mouseover.svg b/icon-themes/colibre_dark_svg/sd/res/nextslide_mouseover.svg
deleted file mode 100644
index b4c5b5ae2845..000000000000
--- a/icon-themes/colibre_dark_svg/sd/res/nextslide_mouseover.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/icon-themes/colibre_dark_svg/sd/res/nextslide.svg b/icon-themes/colibre_dark_svg/sd/res/nextslide_small.svg
similarity index 100%
rename from icon-themes/colibre_dark_svg/sd/res/nextslide.svg
rename to icon-themes/colibre_dark_svg/sd/res/nextslide_small.svg
diff --git a/icon-themes/colibre_dark_svg/sd/res/prevslide_extralarge.svg b/icon-themes/colibre_dark_svg/sd/res/prevslide_extralarge.svg
new file mode 100644
index 000000000000..0f3d16c2da89
--- /dev/null
+++ b/icon-themes/colibre_dark_svg/sd/res/prevslide_extralarge.svg
@@ -0,0 +1,47 @@
+
+
diff --git a/icon-themes/colibre_dark_svg/sd/res/prevslide_large.svg b/icon-themes/colibre_dark_svg/sd/res/prevslide_large.svg
new file mode 100644
index 000000000000..382a68d303e2
--- /dev/null
+++ b/icon-themes/colibre_dark_svg/sd/res/prevslide_large.svg
@@ -0,0 +1,47 @@
+
+
diff --git a/icon-themes/colibre_dark_svg/sd/res/prevslide_mouseover.svg b/icon-themes/colibre_dark_svg/sd/res/prevslide_mouseover.svg
deleted file mode 100644
index da295a2f32d6..000000000000
--- a/icon-themes/colibre_dark_svg/sd/res/prevslide_mouseover.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/icon-themes/colibre_dark_svg/sd/res/prevslide.svg b/icon-themes/colibre_dark_svg/sd/res/prevslide_small.svg
similarity index 100%
rename from icon-themes/colibre_dark_svg/sd/res/prevslide.svg
rename to icon-themes/colibre_dark_svg/sd/res/prevslide_small.svg
diff --git a/icon-themes/colibre_dark_svg/sd/res/slideshowmenu_extralarge.svg b/icon-themes/colibre_dark_svg/sd/res/slideshowmenu_extralarge.svg
new file mode 100644
index 000000000000..129fb8836a53
--- /dev/null
+++ b/icon-themes/colibre_dark_svg/sd/res/slideshowmenu_extralarge.svg
@@ -0,0 +1,62 @@
+
+
diff --git a/icon-themes/colibre_dark_svg/sd/res/slideshowmenu_large.svg b/icon-themes/colibre_dark_svg/sd/res/slideshowmenu_large.svg
new file mode 100644
index 000000000000..36db17eaa9d3
--- /dev/null
+++ b/icon-themes/colibre_dark_svg/sd/res/slideshowmenu_large.svg
@@ -0,0 +1,62 @@
+
+
diff --git a/icon-themes/colibre_dark_svg/sd/res/slideshowmenu_mouseover.svg b/icon-themes/colibre_dark_svg/sd/res/slideshowmenu_mouseover.svg
deleted file mode 100644
index 8a87f9821870..000000000000
--- a/icon-themes/colibre_dark_svg/sd/res/slideshowmenu_mouseover.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/icon-themes/colibre_dark_svg/sd/res/slideshowmenu.svg b/icon-themes/colibre_dark_svg/sd/res/slideshowmenu_small.svg
similarity index 100%
rename from icon-themes/colibre_dark_svg/sd/res/slideshowmenu.svg
rename to icon-themes/colibre_dark_svg/sd/res/slideshowmenu_small.svg
diff --git a/icon-themes/colibre_svg/sd/res/nextslide_extralarge.svg b/icon-themes/colibre_svg/sd/res/nextslide_extralarge.svg
new file mode 100644
index 000000000000..eab7d0edf0f7
--- /dev/null
+++ b/icon-themes/colibre_svg/sd/res/nextslide_extralarge.svg
@@ -0,0 +1,47 @@
+
+
diff --git a/icon-themes/colibre_svg/sd/res/nextslide_large.svg b/icon-themes/colibre_svg/sd/res/nextslide_large.svg
new file mode 100644
index 000000000000..5613b70764ef
--- /dev/null
+++ b/icon-themes/colibre_svg/sd/res/nextslide_large.svg
@@ -0,0 +1,47 @@
+
+
diff --git a/icon-themes/colibre_svg/sd/res/nextslide_mouseover.svg b/icon-themes/colibre_svg/sd/res/nextslide_mouseover.svg
deleted file mode 100644
index 710af1886222..000000000000
--- a/icon-themes/colibre_svg/sd/res/nextslide_mouseover.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/icon-themes/colibre_svg/sd/res/nextslide.svg b/icon-themes/colibre_svg/sd/res/nextslide_small.svg
similarity index 100%
rename from icon-themes/colibre_svg/sd/res/nextslide.svg
rename to icon-themes/colibre_svg/sd/res/nextslide_small.svg
diff --git a/icon-themes/colibre_svg/sd/res/prevslide_extralarge.svg b/icon-themes/colibre_svg/sd/res/prevslide_extralarge.svg
new file mode 100644
index 000000000000..4d9a299dd765
--- /dev/null
+++ b/icon-themes/colibre_svg/sd/res/prevslide_extralarge.svg
@@ -0,0 +1,47 @@
+
+
diff --git a/icon-themes/colibre_svg/sd/res/prevslide_large.svg b/icon-themes/colibre_svg/sd/res/prevslide_large.svg
new file mode 100644
index 000000000000..9d48d879a7b0
--- /dev/null
+++ b/icon-themes/colibre_svg/sd/res/prevslide_large.svg
@@ -0,0 +1,47 @@
+
+
diff --git a/icon-themes/colibre_svg/sd/res/prevslide_mouseover.svg b/icon-themes/colibre_svg/sd/res/prevslide_mouseover.svg
deleted file mode 100644
index 7d5f7edd1980..000000000000
--- a/icon-themes/colibre_svg/sd/res/prevslide_mouseover.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/icon-themes/colibre_svg/sd/res/prevslide.svg b/icon-themes/colibre_svg/sd/res/prevslide_small.svg
similarity index 100%
rename from icon-themes/colibre_svg/sd/res/prevslide.svg
rename to icon-themes/colibre_svg/sd/res/prevslide_small.svg
diff --git a/icon-themes/colibre_svg/sd/res/slideshowmenu_extralarge.svg b/icon-themes/colibre_svg/sd/res/slideshowmenu_extralarge.svg
new file mode 100644
index 000000000000..3efb7d99264a
--- /dev/null
+++ b/icon-themes/colibre_svg/sd/res/slideshowmenu_extralarge.svg
@@ -0,0 +1,62 @@
+
+
diff --git a/icon-themes/colibre_svg/sd/res/slideshowmenu_large.svg b/icon-themes/colibre_svg/sd/res/slideshowmenu_large.svg
new file mode 100644
index 000000000000..d52c9a61399d
--- /dev/null
+++ b/icon-themes/colibre_svg/sd/res/slideshowmenu_large.svg
@@ -0,0 +1,62 @@
+
+
diff --git a/icon-themes/colibre_svg/sd/res/slideshowmenu_mouseover.svg b/icon-themes/colibre_svg/sd/res/slideshowmenu_mouseover.svg
deleted file mode 100644
index 68c74478bd1b..000000000000
--- a/icon-themes/colibre_svg/sd/res/slideshowmenu_mouseover.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/icon-themes/colibre_svg/sd/res/slideshowmenu.svg b/icon-themes/colibre_svg/sd/res/slideshowmenu_small.svg
similarity index 100%
rename from icon-themes/colibre_svg/sd/res/slideshowmenu.svg
rename to icon-themes/colibre_svg/sd/res/slideshowmenu_small.svg
diff --git a/include/vcl/vclenum.hxx b/include/vcl/vclenum.hxx
index 5ea0c77127d6..c8f27fb9da52 100644
--- a/include/vcl/vclenum.hxx
+++ b/include/vcl/vclenum.hxx
@@ -270,6 +270,15 @@ enum class ToolBoxButtonSize
Size32,
};
+// available button sizes for navigation bar
+enum class NavbarButtonSize
+{
+ Auto,
+ Small,
+ Large,
+ XLarge,
+};
+
namespace vcl
{
// The exact sizes of the icons in each size grouping are not necessarily
diff --git a/officecfg/registry/schema/org/openoffice/Office/Impress.xcs b/officecfg/registry/schema/org/openoffice/Office/Impress.xcs
index baafb0972c94..88166cc197ef 100644
--- a/officecfg/registry/schema/org/openoffice/Office/Impress.xcs
+++ b/officecfg/registry/schema/org/openoffice/Office/Impress.xcs
@@ -142,6 +142,36 @@
true
+
+
+
+ Specifies which size of the icons is used for the
+ navigation bar.
+
+
+
+
+ automatic (small) icons
+
+
+
+
+ small icons
+
+
+
+
+ large icons
+
+
+
+
+ extralarge icons
+
+
+
+ 0
+
diff --git a/sd/inc/bitmaps.hlst b/sd/inc/bitmaps.hlst
index 87dbab4e4a7c..52b90058993d 100644
--- a/sd/inc/bitmaps.hlst
+++ b/sd/inc/bitmaps.hlst
@@ -208,9 +208,17 @@ inline constexpr OUString BMP_MENU_PREV = u"cmd/sc_prevrecord.png"_ustr;
inline constexpr OUString BMP_MENU_FIRST = u"cmd/sc_firstrecord.png"_ustr;
inline constexpr OUString BMP_MENU_LAST = u"cmd/sc_lastrecord.png"_ustr;
-inline constexpr OUString BMP_PREV_SLIDE = u"sd/res/prevslide.png"_ustr;
-inline constexpr OUString BMP_NEXT_SLIDE = u"sd/res/nextslide.png"_ustr;
-inline constexpr OUString BMP_MENU_SLIDE = u"sd/res/slideshowmenu.png"_ustr;
+inline constexpr OUString BMP_PREV_SLIDE_SMALL = u"sd/res/prevslide_small.png"_ustr;
+inline constexpr OUString BMP_NEXT_SLIDE_SMALL = u"sd/res/nextslide_small.png"_ustr;
+inline constexpr OUString BMP_MENU_SLIDE_SMALL = u"sd/res/slideshowmenu_small.png"_ustr;
+
+inline constexpr OUString BMP_PREV_SLIDE_LARGE = u"sd/res/prevslide_large.png"_ustr;
+inline constexpr OUString BMP_NEXT_SLIDE_LARGE = u"sd/res/nextslide_large.png"_ustr;
+inline constexpr OUString BMP_MENU_SLIDE_LARGE = u"sd/res/slideshowmenu_large.png"_ustr;
+
+inline constexpr OUString BMP_PREV_SLIDE_EXTRALARGE = u"sd/res/prevslide_extralarge.png"_ustr;
+inline constexpr OUString BMP_NEXT_SLIDE_EXTRALARGE = u"sd/res/nextslide_extralarge.png"_ustr;
+inline constexpr OUString BMP_MENU_SLIDE_EXTRALARGE = u"sd/res/slideshowmenu_extralarge.png"_ustr;
inline constexpr OUString SFX_BMP_CLOSE_DOC = u"sfx2/res/closedoc.png"_ustr;
diff --git a/sd/source/ui/dlg/present.cxx b/sd/source/ui/dlg/present.cxx
index 85d234bfcab9..0c2e4619dd7e 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_xLbNavigationButtonsSize(m_xBuilder->weld_combo_box("navigation_buttons_size_cb"))
+ , m_xFtNavigationButtonsSize(m_xBuilder->weld_label("navbar_btn_size_label"))
, m_xFrameEnableRemote(m_xBuilder->weld_frame("frameremote"))
, m_xCbxEnableRemote(m_xBuilder->weld_check_button("enableremote"))
, m_xLbConsole(m_xBuilder->weld_combo_box("console_cb"))
@@ -89,6 +91,7 @@ SdStartPresentationDlg::SdStartPresentationDlg(weld::Window* pWindow, const SfxI
m_xRbtStandard->connect_toggled( aLink );
m_xRbtWindow->connect_toggled( aLink );
m_xRbtAuto->connect_toggled( aLink );
+ m_xCbxShowNavigationButton->connect_toggled( aLink );
m_xTmfPause->connect_value_changed( LINK( this, SdStartPresentationDlg, ChangePauseHdl ) );
@@ -127,7 +130,16 @@ SdStartPresentationDlg::SdStartPresentationDlg(weld::Window* pWindow, const SfxI
m_xCbxAnimationAllowed->set_active( static_cast( rOutAttrs.Get( ATTR_PRESENT_ANIMATION_ALLOWED ) ).GetValue() );
m_xCbxChangePage->set_active( static_cast( rOutAttrs.Get( ATTR_PRESENT_CHANGE_PAGE ) ).GetValue() );
m_xCbxAlwaysOnTop->set_active( static_cast( rOutAttrs.Get( ATTR_PRESENT_ALWAYS_ON_TOP ) ).GetValue() );
- m_xCbxShowNavigationButton->set_active(officecfg::Office::Impress::Misc::Start::ShowNavigationPanel::get());
+
+ const sal_Int32 nActiveNavigationBtnScale = officecfg::Office::Impress::Layout::Display::NavigationBtnScale::get();
+ const bool bShowNavbar = officecfg::Office::Impress::Misc::Start::ShowNavigationPanel::get();
+ m_xCbxShowNavigationButton->set_active( bShowNavbar );
+ if (nActiveNavigationBtnScale != -1)
+ {
+ m_xLbNavigationButtonsSize->set_active(nActiveNavigationBtnScale);
+ }
+ m_xLbNavigationButtonsSize->set_sensitive( bShowNavbar );
+ m_xFtNavigationButtonsSize->set_sensitive( bShowNavbar );
const bool bEndless = static_cast( rOutAttrs.Get( ATTR_PRESENT_ENDLESS ) ).GetValue();
const bool bWindow = !static_cast( rOutAttrs.Get( ATTR_PRESENT_FULLSCREEN ) ).GetValue();
@@ -188,6 +200,9 @@ short SdStartPresentationDlg::run()
}
officecfg::Office::Impress::Misc::Start::ShowNavigationPanel::set(
m_xCbxShowNavigationButton->get_active(), batch);
+ officecfg::Office::Impress::Layout::Display::NavigationBtnScale::set(
+ m_xLbNavigationButtonsSize->get_active(), batch);
+
#ifdef ENABLE_SDREMOTE
officecfg::Office::Impress::Misc::Start::EnableSdremote::set(m_xCbxEnableRemote->get_active(), batch);
#endif
@@ -348,6 +363,10 @@ IMPL_LINK_NOARG(SdStartPresentationDlg, ClickWindowPresentationHdl, weld::Toggle
m_xFtMonitor->set_sensitive( bDisplay );
m_xLBMonitor->set_sensitive( bDisplay );
+ const bool bShowNavbar = m_xCbxShowNavigationButton->get_active();
+ m_xLbNavigationButtonsSize->set_sensitive( bShowNavbar );
+ m_xFtNavigationButtonsSize->set_sensitive( bShowNavbar );
+
if( bWindow )
{
m_xCbxAlwaysOnTop->set_sensitive(false);
diff --git a/sd/source/ui/inc/present.hxx b/sd/source/ui/inc/present.hxx
index 155e267d4e08..e7cc165f4c4e 100644
--- a/sd/source/ui/inc/present.hxx
+++ b/sd/source/ui/inc/present.hxx
@@ -55,6 +55,8 @@ private:
std::unique_ptr m_xCbxChangePage;
std::unique_ptr m_xCbxAlwaysOnTop;
std::unique_ptr m_xCbxShowNavigationButton;
+ std::unique_ptr m_xLbNavigationButtonsSize;
+ std::unique_ptr m_xFtNavigationButtonsSize;
std::unique_ptr m_xFrameEnableRemote;
std::unique_ptr m_xCbxEnableRemote;
diff --git a/sd/source/ui/slideshow/slideshowimpl.cxx b/sd/source/ui/slideshow/slideshowimpl.cxx
index 531e8b09bcb6..97216f9bec79 100644
--- a/sd/source/ui/slideshow/slideshowimpl.cxx
+++ b/sd/source/ui/slideshow/slideshowimpl.cxx
@@ -1091,7 +1091,37 @@ bool SlideshowImpl::startShowImpl( const Sequence< beans::PropertyValue >& aProp
}
if (officecfg::Office::Impress::Misc::Start::ShowNavigationPanel::get())
{
- BitmapEx prevSlideBm(BMP_PREV_SLIDE);
+ NavbarButtonSize btnScale = static_cast(officecfg::Office::Impress::Layout::Display::NavigationBtnScale::get());
+ OUString prevSlidePath = "";
+ OUString nextSlidePath = "";
+ OUString menuPath = "";
+ switch (btnScale)
+ {
+ case NavbarButtonSize::Large:
+ {
+ prevSlidePath = BMP_PREV_SLIDE_LARGE;
+ nextSlidePath = BMP_NEXT_SLIDE_LARGE;
+ menuPath = BMP_MENU_SLIDE_LARGE;
+ break;
+ }
+ case NavbarButtonSize::XLarge:
+ {
+ prevSlidePath = BMP_PREV_SLIDE_EXTRALARGE;
+ nextSlidePath = BMP_NEXT_SLIDE_EXTRALARGE;
+ menuPath = BMP_MENU_SLIDE_EXTRALARGE;
+ break;
+ }
+ case NavbarButtonSize::Auto:
+ case NavbarButtonSize::Small:
+ default:
+ {
+ prevSlidePath = BMP_PREV_SLIDE_SMALL;
+ nextSlidePath = BMP_NEXT_SLIDE_SMALL;
+ menuPath = BMP_MENU_SLIDE_SMALL;
+ break;
+ }
+ }
+ BitmapEx prevSlideBm(prevSlidePath);
const Reference xPrevSBitmap(
vcl::unotools::xBitmapFromBitmapEx(prevSlideBm));
if (xPrevSBitmap.is())
@@ -1100,7 +1130,7 @@ bool SlideshowImpl::startShowImpl( const Sequence< beans::PropertyValue >& aProp
Any(xPrevSBitmap),
beans::PropertyState_DIRECT_VALUE));
}
- BitmapEx menuSlideBm(BMP_MENU_SLIDE);
+ BitmapEx menuSlideBm(menuPath);
const Reference xMenuSBitmap(
vcl::unotools::xBitmapFromBitmapEx(menuSlideBm));
if (xMenuSBitmap.is())
@@ -1109,7 +1139,7 @@ bool SlideshowImpl::startShowImpl( const Sequence< beans::PropertyValue >& aProp
Any(xMenuSBitmap),
beans::PropertyState_DIRECT_VALUE));
}
- BitmapEx nextSlideBm(BMP_NEXT_SLIDE);
+ BitmapEx nextSlideBm(nextSlidePath);
const Reference xNextSBitmap(
vcl::unotools::xBitmapFromBitmapEx(nextSlideBm));
if (xNextSBitmap.is())
diff --git a/sd/uiconfig/simpress/ui/presentationdialog.ui b/sd/uiconfig/simpress/ui/presentationdialog.ui
index 75ad453f9093..9829dc38a43f 100644
--- a/sd/uiconfig/simpress/ui/presentationdialog.ui
+++ b/sd/uiconfig/simpress/ui/presentationdialog.ui
@@ -1,5 +1,5 @@
-
+
0
diff --git a/slideshow/source/engine/slideshowimpl.cxx b/slideshow/source/engine/slideshowimpl.cxx
index 34cb4418db9d..5e0dbbb8074e 100644
--- a/slideshow/source/engine/slideshowimpl.cxx
+++ b/slideshow/source/engine/slideshowimpl.cxx
@@ -1828,7 +1828,7 @@ sal_Bool SlideShowImpl::setProperty( beans::PropertyValue const& rProperty )
return false;
mpNavigationMenu = SlideOverlayButton::create(
- xBitmap, { 80, 10 },
+ xBitmap, { xBitmap->getSize().Width + 48, 10 },
[this](basegfx::B2DPoint pos) {
maListenerContainer.forEach(
[pos](const uno::Reference& xListener) {
@@ -1852,7 +1852,7 @@ sal_Bool SlideShowImpl::setProperty( beans::PropertyValue const& rProperty )
return false;
mpNavigationNext = SlideOverlayButton::create(
- xBitmap, { 140, 10 }, [this](basegfx::B2DPoint) { notifySlideEnded(false); },
+ xBitmap, { 2 * xBitmap->getSize().Width + 76, 10 }, [this](basegfx::B2DPoint) { notifySlideEnded(false); },
maScreenUpdater, maEventMultiplexer, maViewContainer);
return true;