|
 |
f325b2 |
From 71ad9009f87480488f45f36888c0b08ce245220e Mon Sep 17 00:00:00 2001
|
|
 |
f325b2 |
From: =?UTF-8?q?L=C3=A1szl=C3=B3=20N=C3=A9meth?=
|
|
 |
f325b2 |
<laszlo.nemeth@collabora.com>
|
|
 |
f325b2 |
Date: Fri, 6 Nov 2015 19:26:29 +0100
|
|
 |
f325b2 |
Subject: [PATCH 287/398] gtktiledviewer: add Ctrl, Alt, Shift shortcut support
|
|
 |
f325b2 |
|
|
 |
f325b2 |
For example in Writer:
|
|
 |
f325b2 |
|
|
 |
f325b2 |
Ctrl-B for bold text
|
|
 |
f325b2 |
Ctrl-Shift-B/P for subscript/superscript
|
|
 |
f325b2 |
Ctrl-Alt-C insert comment
|
|
 |
f325b2 |
Ctrl-1 apply Heading 1 paragraph style
|
|
 |
f325b2 |
|
|
 |
f325b2 |
Change-Id: Iaeb8341f2cb273980b637ff2fed89585094e0d9d
|
|
 |
f325b2 |
(cherry picked from commit 63d2d50ecb3f3a83374a1a01713edce14ba378ed)
|
|
 |
f325b2 |
---
|
|
 |
f325b2 |
libreofficekit/source/gtk/lokdocview.cxx | 23 ++++++++++++++++++++++-
|
|
 |
f325b2 |
1 file changed, 22 insertions(+), 1 deletion(-)
|
|
 |
f325b2 |
|
|
 |
f325b2 |
diff --git a/libreofficekit/source/gtk/lokdocview.cxx b/libreofficekit/source/gtk/lokdocview.cxx
|
|
 |
f325b2 |
index 73b01797dbf9..8f0a053677fa 100644
|
|
 |
f325b2 |
--- a/libreofficekit/source/gtk/lokdocview.cxx
|
|
 |
f325b2 |
+++ b/libreofficekit/source/gtk/lokdocview.cxx
|
|
 |
f325b2 |
@@ -337,7 +337,7 @@ signalKey (GtkWidget* pWidget, GdkEventKey* pEvent)
|
|
 |
f325b2 |
return FALSE;
|
|
 |
f325b2 |
}
|
|
 |
f325b2 |
|
|
 |
f325b2 |
- priv->m_nKeyModifier = 0;
|
|
 |
f325b2 |
+ priv->m_nKeyModifier &= KEY_MOD2;
|
|
 |
f325b2 |
switch (pEvent->keyval)
|
|
 |
f325b2 |
{
|
|
 |
f325b2 |
case GDK_KEY_BackSpace:
|
|
 |
f325b2 |
@@ -381,6 +381,8 @@ signalKey (GtkWidget* pWidget, GdkEventKey* pEvent)
|
|
 |
f325b2 |
case GDK_KEY_Alt_R:
|
|
 |
f325b2 |
if (pEvent->type == GDK_KEY_PRESS)
|
|
 |
f325b2 |
priv->m_nKeyModifier |= KEY_MOD2;
|
|
 |
f325b2 |
+ else
|
|
 |
f325b2 |
+ priv->m_nKeyModifier &= ~KEY_MOD2;
|
|
 |
f325b2 |
break;
|
|
 |
f325b2 |
default:
|
|
 |
f325b2 |
if (pEvent->keyval >= GDK_KEY_F1 && pEvent->keyval <= GDK_KEY_F26)
|
|
 |
f325b2 |
@@ -395,6 +397,25 @@ signalKey (GtkWidget* pWidget, GdkEventKey* pEvent)
|
|
 |
f325b2 |
if (pEvent->state & GDK_SHIFT_MASK)
|
|
 |
f325b2 |
nKeyCode |= KEY_SHIFT;
|
|
 |
f325b2 |
|
|
 |
f325b2 |
+ if (pEvent->state & GDK_CONTROL_MASK)
|
|
 |
f325b2 |
+ nKeyCode |= KEY_MOD1;
|
|
 |
f325b2 |
+
|
|
 |
f325b2 |
+ if (priv->m_nKeyModifier & KEY_MOD2)
|
|
 |
f325b2 |
+ nKeyCode |= KEY_MOD2;
|
|
 |
f325b2 |
+
|
|
 |
f325b2 |
+ if (nKeyCode & (KEY_SHIFT | KEY_MOD1 | KEY_MOD2)) {
|
|
 |
f325b2 |
+ if (pEvent->keyval >= GDK_KEY_a && pEvent->keyval <= GDK_KEY_z)
|
|
 |
f325b2 |
+ {
|
|
 |
f325b2 |
+ nKeyCode |= 512 + (pEvent->keyval - GDK_KEY_a);
|
|
 |
f325b2 |
+ }
|
|
 |
f325b2 |
+ else if (pEvent->keyval >= GDK_KEY_A && pEvent->keyval <= GDK_KEY_Z) {
|
|
 |
f325b2 |
+ nKeyCode |= 512 + (pEvent->keyval - GDK_KEY_A);
|
|
 |
f325b2 |
+ }
|
|
 |
f325b2 |
+ else if (pEvent->keyval >= GDK_KEY_0 && pEvent->keyval <= GDK_KEY_9) {
|
|
 |
f325b2 |
+ nKeyCode |= 256 + (pEvent->keyval - GDK_KEY_0);
|
|
 |
f325b2 |
+ }
|
|
 |
f325b2 |
+ }
|
|
 |
f325b2 |
+
|
|
 |
f325b2 |
if (pEvent->type == GDK_KEY_RELEASE)
|
|
 |
f325b2 |
{
|
|
 |
f325b2 |
GTask* task = g_task_new(pDocView, NULL, NULL, NULL);
|
|
 |
f325b2 |
--
|
|
 |
f325b2 |
2.12.0
|
|
 |
f325b2 |
|