|
 |
f325b2 |
From 54cbf52419e6318c2cdf19232f79a515ffb6e7f6 Mon Sep 17 00:00:00 2001
|
|
 |
f325b2 |
From: Pranav Kant <pranavk@gnome.org>
|
|
 |
f325b2 |
Date: Thu, 24 Sep 2015 18:47:01 +0200
|
|
 |
f325b2 |
Subject: [PATCH 166/398] lokdocview: Reset view completely
|
|
 |
f325b2 |
|
|
 |
f325b2 |
Resetting tiles only is not enough. We need to empty stale
|
|
 |
f325b2 |
selection rectangles, handle bars, cursor positions etc., so that
|
|
 |
f325b2 |
they do not interfere with next view to be opened using same
|
|
 |
f325b2 |
widget instance.
|
|
 |
f325b2 |
|
|
 |
f325b2 |
We are not destroying the document here, so the widget would
|
|
 |
f325b2 |
still point to the same document unless it is made to point to
|
|
 |
f325b2 |
another document by subsequent lok_doc_view_open_document calls.
|
|
 |
f325b2 |
|
|
 |
f325b2 |
Change-Id: I3c7cc789c8c7393b3793b4edf6aa96d54bc0b1a3
|
|
 |
f325b2 |
Reviewed-on: https://gerrit.libreoffice.org/18866
|
|
 |
f325b2 |
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
|
|
 |
f325b2 |
Tested-by: Miklos Vajna <vmiklos@collabora.co.uk>
|
|
 |
f325b2 |
(cherry picked from commit c3ce35f0a12af2887b10987f76675174563487d7)
|
|
 |
f325b2 |
---
|
|
 |
f325b2 |
libreofficekit/source/gtk/lokdocview.cxx | 37 ++++++++++++++++++++++++++++++++
|
|
 |
f325b2 |
1 file changed, 37 insertions(+)
|
|
 |
f325b2 |
|
|
 |
f325b2 |
diff --git a/libreofficekit/source/gtk/lokdocview.cxx b/libreofficekit/source/gtk/lokdocview.cxx
|
|
 |
f325b2 |
index 6679cee56cd3..99476764e69d 100644
|
|
 |
f325b2 |
--- a/libreofficekit/source/gtk/lokdocview.cxx
|
|
 |
f325b2 |
+++ b/libreofficekit/source/gtk/lokdocview.cxx
|
|
 |
f325b2 |
@@ -1986,6 +1986,43 @@ lok_doc_view_reset_view(LOKDocView* pDocView)
|
|
 |
f325b2 |
{
|
|
 |
f325b2 |
LOKDocViewPrivate *priv = static_cast<LOKDocViewPrivate*>(lok_doc_view_get_instance_private (pDocView));
|
|
 |
f325b2 |
priv->m_aTileBuffer.resetAllTiles();
|
|
 |
f325b2 |
+ priv->m_nLoadProgress = 0.0;
|
|
 |
f325b2 |
+
|
|
 |
f325b2 |
+ memset(&priv->m_aVisibleCursor, 0, sizeof(priv->m_aVisibleCursor));
|
|
 |
f325b2 |
+ priv->m_bCursorOverlayVisible = false;
|
|
 |
f325b2 |
+ priv->m_bCursorVisible = false;
|
|
 |
f325b2 |
+
|
|
 |
f325b2 |
+ priv->m_nLastButtonPressTime = 0;
|
|
 |
f325b2 |
+ priv->m_nLastButtonReleaseTime = 0;
|
|
 |
f325b2 |
+ priv->m_aTextSelectionRectangles.clear();
|
|
 |
f325b2 |
+
|
|
 |
f325b2 |
+ memset(&priv->m_aTextSelectionStart, 0, sizeof(priv->m_aTextSelectionStart));
|
|
 |
f325b2 |
+ memset(&priv->m_aTextSelectionEnd, 0, sizeof(priv->m_aTextSelectionEnd));
|
|
 |
f325b2 |
+ memset(&priv->m_aGraphicSelection, 0, sizeof(priv->m_aGraphicSelection));
|
|
 |
f325b2 |
+ priv->m_bInDragGraphicSelection = false;
|
|
 |
f325b2 |
+
|
|
 |
f325b2 |
+ cairo_surface_destroy(priv->m_pHandleStart);
|
|
 |
f325b2 |
+ priv->m_pHandleStart = 0;
|
|
 |
f325b2 |
+ memset(&priv->m_aHandleStartRect, 0, sizeof(priv->m_aHandleStartRect));
|
|
 |
f325b2 |
+ priv->m_bInDragStartHandle = false;
|
|
 |
f325b2 |
+
|
|
 |
f325b2 |
+ cairo_surface_destroy(priv->m_pHandleMiddle);
|
|
 |
f325b2 |
+ priv->m_pHandleMiddle = 0;
|
|
 |
f325b2 |
+ memset(&priv->m_aHandleMiddleRect, 0, sizeof(priv->m_aHandleMiddleRect));
|
|
 |
f325b2 |
+ priv->m_bInDragMiddleHandle = false;
|
|
 |
f325b2 |
+
|
|
 |
f325b2 |
+ cairo_surface_destroy(priv->m_pHandleEnd);
|
|
 |
f325b2 |
+ priv->m_pHandleEnd = 0;
|
|
 |
f325b2 |
+ memset(&priv->m_aHandleEndRect, 0, sizeof(priv->m_aHandleEndRect));
|
|
 |
f325b2 |
+ priv->m_bInDragEndHandle = false;
|
|
 |
f325b2 |
+
|
|
 |
f325b2 |
+ cairo_surface_destroy(priv->m_pGraphicHandle);
|
|
 |
f325b2 |
+ priv->m_pGraphicHandle = 0;
|
|
 |
f325b2 |
+ memset(&priv->m_aGraphicHandleRects, 0, sizeof(priv->m_aGraphicHandleRects));
|
|
 |
f325b2 |
+ memset(&priv->m_bInDragGraphicHandles, 0, sizeof(priv->m_bInDragGraphicHandles));
|
|
 |
f325b2 |
+
|
|
 |
f325b2 |
+ priv->m_nViewId = 0;
|
|
 |
f325b2 |
+
|
|
 |
f325b2 |
gtk_widget_queue_draw(GTK_WIDGET(pDocView));
|
|
 |
f325b2 |
}
|
|
 |
f325b2 |
|
|
 |
f325b2 |
--
|
|
 |
f325b2 |
2.12.0
|
|
 |
f325b2 |
|