summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMiklos Vajna <vmiklos@collabora.co.uk>2015-05-27 17:12:00 +0200
committerMiklos Vajna <vmiklos@collabora.co.uk>2015-05-27 17:33:05 +0200
commit63a40c45018ad2e6f4a660a520a5907beb1d7801 (patch)
tree0dc26225ed896f60036cb0c5ec6a9c59bb48a562
parent0f95f8ffd7a3685ca53876005a9c96f2e2e7bc99 (diff)
LOK: change PAGE_COUNT to a more generic DOCUMENT_SIZE
Change-Id: If94af4072c321358d7bd4d678eeed181dc0f44db
-rw-r--r--include/LibreOfficeKit/LibreOfficeKitEnums.h8
-rw-r--r--sw/source/core/view/viewsh.cxx10
-rw-r--r--sw/source/uibase/uiview/view2.cxx2
3 files changed, 14 insertions, 6 deletions
diff --git a/include/LibreOfficeKit/LibreOfficeKitEnums.h b/include/LibreOfficeKit/LibreOfficeKitEnums.h
index bbcd5b90c239..66237e4512cf 100644
--- a/include/LibreOfficeKit/LibreOfficeKitEnums.h
+++ b/include/LibreOfficeKit/LibreOfficeKitEnums.h
@@ -143,12 +143,12 @@ typedef enum
LOK_CALLBACK_SEARCH_NOT_FOUND,
/**
- * Number of pages changed in the document.
+ * Size of the document changed.
*
- * Clients should assume that data returned by an earlier
- * lok::Document::getDocumentSize() call is no longer valid.
+ * Payload format is "width, height", i.e. clients get the new size without
+ * having to do an explicit lok::Document::getDocumentSize() call.
*/
- LOK_CALLBACK_PAGE_COUNT_CHANGED,
+ LOK_CALLBACK_DOCUMENT_SIZE_CHANGED,
/**
* The current part number is changed.
diff --git a/sw/source/core/view/viewsh.cxx b/sw/source/core/view/viewsh.cxx
index 3c163d9d314f..32fe22253ee1 100644
--- a/sw/source/core/view/viewsh.cxx
+++ b/sw/source/core/view/viewsh.cxx
@@ -78,6 +78,7 @@
#include <vcl/virdev.hxx>
#include <vcl/svapp.hxx>
#include <svx/sdrpaintwindow.hxx>
+#include <LibreOfficeKit/LibreOfficeKitEnums.h>
#if !HAVE_FEATURE_DESKTOP
#include <vcl/sysdata.hxx>
@@ -989,6 +990,15 @@ void SwViewShell::SizeChgNotify()
const SvxNumberType& rNum = pPage->GetPageDesc()->GetNumType();
OUString sDisplay = rNum.GetNumStr( nVirtNum );
PageNumNotify( this, pCnt->GetPhyPageNum(), nVirtNum, sDisplay );
+
+ if (isTiledRendering())
+ {
+ Size aDocSize = GetDocSize();
+ std::stringstream ss;
+ ss << aDocSize.Width() + 2L * DOCUMENTBORDER << ", " << aDocSize.Height() + 2L * DOCUMENTBORDER;
+ OString sRect = ss.str().c_str();
+ libreOfficeKitCallback(LOK_CALLBACK_DOCUMENT_SIZE_CHANGED, sRect.getStr());
+ }
}
}
}
diff --git a/sw/source/uibase/uiview/view2.cxx b/sw/source/uibase/uiview/view2.cxx
index a8ce619391b6..b6f947ddfb5f 100644
--- a/sw/source/uibase/uiview/view2.cxx
+++ b/sw/source/uibase/uiview/view2.cxx
@@ -147,7 +147,6 @@
#include <vcl/settings.hxx>
#include <boost/scoped_ptr.hpp>
-#include <LibreOfficeKit/LibreOfficeKitEnums.h>
const char sStatusDelim[] = " : ";
const char sStatusComma[] = " , ";
@@ -1281,7 +1280,6 @@ void SwView::Execute(SfxRequest &rReq)
/// invalidate page numbering field
void SwView::UpdatePageNums(sal_uInt16 nPhyNum, sal_uInt16 nVirtNum, const OUString& rPgStr)
{
- GetWrtShell().libreOfficeKitCallback(LOK_CALLBACK_PAGE_COUNT_CHANGED, 0);
OUString sTemp(GetPageStr( nPhyNum, nVirtNum, rPgStr ));
const SfxStringItem aTmp( FN_STAT_PAGE, sTemp );
// Used to distinguish which tooltip to show