[Libreoffice-commits] core.git: sw/inc sw/source
Jan Holesovsky
kendy at collabora.com
Tue Sep 15 11:31:57 PDT 2015
sw/inc/viewsh.hxx | 3 ++-
sw/source/core/view/viewsh.cxx | 7 +++++++
2 files changed, 9 insertions(+), 1 deletion(-)
New commits:
commit 12e3b51abe883202af09769873f87b27d7de118b
Author: Jan Holesovsky <kendy at collabora.com>
Date: Tue Sep 15 20:22:08 2015 +0200
tdf#94237 tiled rendering: Use the entire document as the visual area.
Many places were already adapted for the tiled rendering, and the conditions
checking for the VisArea() were changed so that the checks are ignored when
tiled rendering is active.
Unfortunately there are still some places left, and they are causing that
various areas are invalidated only partially. Let's sort it out for good, and
report the entire document as the VisArea() when the tiled rendering is
active, and if there are performance problems, let's profile that & act
accordingly.
Change-Id: I53f18915ed0aec898704dd1350a9534cfc3f001b
diff --git a/sw/inc/viewsh.hxx b/sw/inc/viewsh.hxx
index ff8c36c..2ae2a2b 100644
--- a/sw/inc/viewsh.hxx
+++ b/sw/inc/viewsh.hxx
@@ -31,6 +31,7 @@
#include <vcl/mapmod.hxx>
#include <vcl/print.hxx>
#include <vcl/vclptr.hxx>
+
#define LOK_USE_UNSTABLE_API
#include <LibreOfficeKit/LibreOfficeKitTypes.h>
@@ -262,7 +263,7 @@ public:
bool SmoothScroll( long lXDiff, long lYDiff, const Rectangle* );//Browser
void EnableSmooth( bool b ) { mbEnableSmooth = b; }
- const SwRect& VisArea() const { return maVisArea; }
+ const SwRect& VisArea() const;
// If necessary scroll until passed Rect is situated in visible sector.
void MakeVisible( const SwRect & );
diff --git a/sw/source/core/view/viewsh.cxx b/sw/source/core/view/viewsh.cxx
index aaf026c..3c294c4 100644
--- a/sw/source/core/view/viewsh.cxx
+++ b/sw/source/core/view/viewsh.cxx
@@ -569,6 +569,13 @@ void SwViewShell::InvalidateWindows( const SwRect &rRect )
}
}
+const SwRect& SwViewShell::VisArea() const
+{
+ // when using the tiled rendering, consider the entire document as our
+ // visible area
+ return isTiledRendering()? GetLayout()->Frm(): maVisArea;
+}
+
void SwViewShell::MakeVisible( const SwRect &rRect )
{
if ( !VisArea().IsInside( rRect ) || IsScrollMDI( this, rRect ) || GetCareWin(*this) )
More information about the Libreoffice-commits
mailing list