libreofficekit/qa/gtktiledviewer/gtktiledviewer.cxx | 19 ++++++++++++++++++ libreofficekit/source/gtk/lokdocview.c | 21 +++++++++++++++++++- sw/source/core/crsr/viscrs.cxx | 2 + 3 files changed, 41 insertions(+), 1 deletion(-)
New commits: commit 6337a209559fa9967f3e29e3492b42474c165851 Author: Miklos Vajna <[email protected]> Date: Thu Feb 26 15:59:17 2015 +0100 SwShellTableCrsr::FillRects: ignore visual area for tiled rendering With this, if you have a 2x2 empty table and you are on A1, pressing shift-right results in a proper table selection of A1:B1. Still need to fix selection handles, though. Change-Id: Ifb4598f715991cc7b88828d505c3af008c744676 diff --git a/sw/source/core/crsr/viscrs.cxx b/sw/source/core/crsr/viscrs.cxx index 74b5ee6..89bcc28 100644 --- a/sw/source/core/crsr/viscrs.cxx +++ b/sw/source/core/crsr/viscrs.cxx @@ -704,6 +704,8 @@ void SwShellTableCrsr::FillRects() return; SwRegionRects aReg( GetShell()->VisArea() ); + if (GetShell()->isTiledRendering()) + aReg = GetShell()->getIDocumentLayoutAccess()->GetCurrentLayout()->Frm(); SwNodes& rNds = GetDoc()->GetNodes(); for (size_t n = 0; n < m_SelectedBoxes.size(); ++n) { commit becccb19cd56164810afffe7276429bc631a44d4 Author: Miklos Vajna <[email protected]> Date: Thu Feb 26 14:29:32 2015 +0100 libreofficekit: pretty-print LibreOfficeKitCallbackType Change-Id: I15a6b265c6fa0d0c62277814fa119d20b311625b diff --git a/libreofficekit/source/gtk/lokdocview.c b/libreofficekit/source/gtk/lokdocview.c index 31d9430..5908ad0 100644 --- a/libreofficekit/source/gtk/lokdocview.c +++ b/libreofficekit/source/gtk/lokdocview.c @@ -565,6 +565,25 @@ static GList* lcl_payloadToRectangles(const char* pPayload) g_strfreev(ppRectangles); return pRet; } + +static const gchar* lcl_LibreOfficeKitCallbackTypeToString(int nType) +{ + switch (nType) + { + case LOK_CALLBACK_INVALIDATE_TILES: + return "LOK_CALLBACK_INVALIDATE_TILES"; + case LOK_CALLBACK_INVALIDATE_VISIBLE_CURSOR: + return "LOK_CALLBACK_INVALIDATE_VISIBLE_CURSOR"; + case LOK_CALLBACK_TEXT_SELECTION: + return "LOK_CALLBACK_TEXT_SELECTION"; + case LOK_CALLBACK_TEXT_SELECTION_START: + return "LOK_CALLBACK_TEXT_SELECTION_START"; + case LOK_CALLBACK_TEXT_SELECTION_END: + return "LOK_CALLBACK_TEXT_SELECTION_END"; + } + return 0; +} + /// Invoked on the main thread if lok_docview_callback_worker() requests so. static gboolean lok_docview_callback(gpointer pData) { @@ -641,7 +660,7 @@ static void lok_docview_callback_worker(int nType, const char* pPayload, void* p pCallback->m_nType = nType; pCallback->m_pPayload = g_strdup(pPayload); pCallback->m_pDocView = pDocView; - g_info("lok_docview_callback_worker: %d, '%s'", nType, pPayload); + g_info("lok_docview_callback_worker: %s, '%s'", lcl_LibreOfficeKitCallbackTypeToString(nType), pPayload); #if GTK_CHECK_VERSION(2,12,0) gdk_threads_add_idle(lok_docview_callback, pCallback); #else commit 5247f74f3ef469a87085ae303e50bba9f74e10be Author: Miklos Vajna <[email protected]> Date: Thu Feb 26 14:17:07 2015 +0100 gtktiledviewer: map shift key Change-Id: Id7e995ef3b6eb117dc74a0a0258417d9dc1291e6 diff --git a/libreofficekit/qa/gtktiledviewer/gtktiledviewer.cxx b/libreofficekit/qa/gtktiledviewer/gtktiledviewer.cxx index 2392bd6..c840c8c 100644 --- a/libreofficekit/qa/gtktiledviewer/gtktiledviewer.cxx +++ b/libreofficekit/qa/gtktiledviewer/gtktiledviewer.cxx @@ -21,6 +21,7 @@ #include "../lokdocview_quad/lokdocview_quad.h" #include <com/sun/star/awt/Key.hpp> +#include <rsc/rsc-vcl-shared-types.hxx> #ifndef g_info #define g_info(...) g_log(G_LOG_DOMAIN, G_LOG_LEVEL_INFO, __VA_ARGS__) @@ -178,6 +179,12 @@ static void signalKey(GtkWidget* /*pWidget*/, GdkEventKey* pEvent, gpointer /*pD nCharCode = gdk_keyval_to_unicode(pEvent->keyval); } + // rsc is not public API, but should be good enough for debugging purposes. + // If this is needed for real, then probably a new param of type + // css::awt::KeyModifier is needed in postKeyEvent(). + if (pEvent->state & GDK_SHIFT_MASK) + nKeyCode |= KEY_SHIFT; + if (pEvent->type == GDK_KEY_RELEASE) pLOKDocView->pOffice->pClass->postKeyEvent(pLOKDocView->pOffice, LOK_KEYEVENT_KEYUP, nCharCode, nKeyCode); else commit dc5048579ade8ce79259101482a2234753a7c3ac Author: Miklos Vajna <[email protected]> Date: Thu Feb 26 13:00:41 2015 +0100 gtktiledviewer: map down/up/left/right arrow keys Change-Id: I2a3c729d06d73ff7a7b7cedff27d9fb4a3a88d73 diff --git a/libreofficekit/qa/gtktiledviewer/gtktiledviewer.cxx b/libreofficekit/qa/gtktiledviewer/gtktiledviewer.cxx index 5337cc4..2392bd6 100644 --- a/libreofficekit/qa/gtktiledviewer/gtktiledviewer.cxx +++ b/libreofficekit/qa/gtktiledviewer/gtktiledviewer.cxx @@ -159,6 +159,18 @@ static void signalKey(GtkWidget* /*pWidget*/, GdkEventKey* pEvent, gpointer /*pD case GDK_Tab: nKeyCode = com::sun::star::awt::Key::TAB; break; + case GDK_Down: + nKeyCode = com::sun::star::awt::Key::DOWN; + break; + case GDK_Up: + nKeyCode = com::sun::star::awt::Key::UP; + break; + case GDK_Left: + nKeyCode = com::sun::star::awt::Key::LEFT; + break; + case GDK_Right: + nKeyCode = com::sun::star::awt::Key::RIGHT; + break; default: if (pEvent->keyval >= GDK_F1 && pEvent->keyval <= GDK_F26) nKeyCode = com::sun::star::awt::Key::F1 + (pEvent->keyval - GDK_F1); _______________________________________________ Libreoffice-commits mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
