summaryrefslogtreecommitdiff
path: root/sd
diff options
context:
space:
mode:
authorPranav Kant <pranavk@collabora.co.uk>2018-03-15 20:09:26 +0530
committerpranavk <pranavk@collabora.co.uk>2018-03-16 08:29:41 +0100
commit1354bafdc707b87f8db1e89c96382c4f4f460554 (patch)
tree1ced22e5cea53906c45d5dd9f039f1724a3295f0 /sd
parentb2428496de5cd579f4cdb0f149e2cebb8b12dd4d (diff)
sd lok: Set the view size to full page size and hide ruler, scrollbars
... such that during insertion of objects when sd calculates the center of the view to place the object, it is the center of the whole slide, not the center of the default rectangle of 800x600. It's also important to hide rulers, scrollbars so that correct center is calculated; we don't need them anyways in LOK. Change-Id: I1180541c1b8c8a35f39112ca0a670c9d96d1320b Reviewed-on: https://gerrit.libreoffice.org/51347 Reviewed-by: pranavk <pranavk@collabora.co.uk> Tested-by: pranavk <pranavk@collabora.co.uk>
Diffstat (limited to 'sd')
-rw-r--r--sd/source/ui/inc/ViewShell.hxx2
-rw-r--r--sd/source/ui/unoidl/unomodel.cxx14
-rw-r--r--sd/source/ui/view/viewshe2.cxx12
3 files changed, 26 insertions, 2 deletions
diff --git a/sd/source/ui/inc/ViewShell.hxx b/sd/source/ui/inc/ViewShell.hxx
index c3219dd4db52..a3d82ba4f0c6 100644
--- a/sd/source/ui/inc/ViewShell.hxx
+++ b/sd/source/ui/inc/ViewShell.hxx
@@ -197,6 +197,8 @@ public:
bool HasRuler() { return mbHasRulers;}
void SetRuler(bool bRuler);
+ // Hides horizontal, vertical scrollbar as well as scrollbox
+ void SetScrollBarsVisible(bool bVisible);
/** Set internal values of all scroll bars that determine thumb size and
position. The external values like size and position of the scroll
diff --git a/sd/source/ui/unoidl/unomodel.cxx b/sd/source/ui/unoidl/unomodel.cxx
index 8c8569a1a009..afe7ede9bde5 100644
--- a/sd/source/ui/unoidl/unomodel.cxx
+++ b/sd/source/ui/unoidl/unomodel.cxx
@@ -2446,11 +2446,21 @@ void SdXImpressDocument::initializeForTiledRendering(const css::uno::Sequence<cs
SdOptions* pOptions = SD_MOD()->GetSdOptions(mpDoc->GetDocumentType());
pOptions->SetShowComments(comphelper::LibreOfficeKit::isTiledAnnotations());
- // Disable map mode, so that it's possible to send mouse event coordinates
- // in logic units.
+ pViewShell->SetRuler(false);
+ pViewShell->SetScrollBarsVisible(false);
+
if (sd::Window* pWindow = pViewShell->GetActiveWindow())
{
+ // get the full page size in pixels
+ pWindow->EnableMapMode();
+ Size aSize(pWindow->LogicToPixel(pDrawView->GetSdrPageView()->GetPage()->GetSize()));
+ // Disable map mode, so that it's possible to send mouse event
+ // coordinates in logic units
pWindow->EnableMapMode(false);
+
+ // arrange UI elements again with new view size
+ pViewShell->GetParentWindow()->SetSizePixel(aSize);
+ pViewShell->Resize();
}
// Forces all images to be swapped in synchronously, this
diff --git a/sd/source/ui/view/viewshe2.cxx b/sd/source/ui/view/viewshe2.cxx
index 6a2d2eec54e2..aaf69b6775f5 100644
--- a/sd/source/ui/view/viewshe2.cxx
+++ b/sd/source/ui/view/viewshe2.cxx
@@ -939,6 +939,18 @@ void ViewShell::SetRuler(bool bRuler)
GetViewShell()->InvalidateBorder();
}
+void ViewShell::SetScrollBarsVisible(bool bVisible)
+{
+ if (mpVerticalScrollBar.get() != nullptr)
+ mpVerticalScrollBar->Show( bVisible );
+
+ if (mpHorizontalScrollBar.get() != nullptr)
+ mpHorizontalScrollBar->Show( bVisible );
+
+ if (mpScrollBarBox.get() != nullptr)
+ mpScrollBarBox->Show(bVisible);
+}
+
sal_Int8 ViewShell::AcceptDrop (
const AcceptDropEvent& rEvt,
DropTargetHelper& rTargetHelper,