diff options
author | Mihai Varga <mihai.varga@collabora.com> | 2015-07-21 18:49:21 +0300 |
---|---|---|
committer | Miklos Vajna <vmiklos@collabora.co.uk> | 2015-07-22 07:43:04 +0000 |
commit | ed9d6ef1e647b574f58ba870d71a4291d958c0ad (patch) | |
tree | 8a2b02446d626cec2719af39aeeb2443a777727b /libreofficekit | |
parent | 233a634a112e6dae07dca5fb1296764cb0001503 (diff) |
gtktiledviewer: method for resetting all tiles
[ Miklos Vajna: The point of the change is that without this, part switching in
Calc does not work, as Calc does not invalidate everything after a part switch
(unlike Impress), and we suppose the right fix for this is to let the clients
throw away the tiles, rather than letting Calc send out invalidations, too. ]
Change-Id: Id368b955c54efb87ecf3d59278ddb5cdbb2e7856
Reviewed-on: https://gerrit.libreoffice.org/17267
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Tested-by: Miklos Vajna <vmiklos@collabora.co.uk>
Diffstat (limited to 'libreofficekit')
-rw-r--r-- | libreofficekit/qa/gtktiledviewer/gtktiledviewer.cxx | 1 | ||||
-rw-r--r-- | libreofficekit/source/gtk/lokdocview.cxx | 8 |
2 files changed, 9 insertions, 0 deletions
diff --git a/libreofficekit/qa/gtktiledviewer/gtktiledviewer.cxx b/libreofficekit/qa/gtktiledviewer/gtktiledviewer.cxx index ec70a88d9893..6c0de3985c1f 100644 --- a/libreofficekit/qa/gtktiledviewer/gtktiledviewer.cxx +++ b/libreofficekit/qa/gtktiledviewer/gtktiledviewer.cxx @@ -357,6 +357,7 @@ static void changePart( GtkWidget* pSelector, gpointer /* pItem */ ) if (g_bPartSelectorBroadcast && pDocView) { lok_doc_view_set_part( LOK_DOC_VIEW(pDocView), nPart ); + lok_doc_view_reset_view( LOK_DOC_VIEW(pDocView) ); } } diff --git a/libreofficekit/source/gtk/lokdocview.cxx b/libreofficekit/source/gtk/lokdocview.cxx index bf12ca02955a..3823e9465ab0 100644 --- a/libreofficekit/source/gtk/lokdocview.cxx +++ b/libreofficekit/source/gtk/lokdocview.cxx @@ -1529,6 +1529,14 @@ lok_doc_view_set_partmode(LOKDocView* pDocView, priv->m_pDocument->pClass->setPartMode( priv->m_pDocument, nPartMode ); } +SAL_DLLPUBLIC_EXPORT void +lok_doc_view_reset_view(LOKDocView* pDocView) +{ + LOKDocViewPrivate *priv = static_cast<LOKDocViewPrivate*>(lok_doc_view_get_instance_private (pDocView)); + priv->m_aTileBuffer.resetAllTiles(); + gtk_widget_queue_draw(GTK_WIDGET(pDocView)); +} + /** * lok_doc_view_set_edit: * @pDocView: The #LOKDocView instance |