diff options
author | Rüdiger Timm <rt@openoffice.org> | 2005-04-01 15:10:11 +0000 |
---|---|---|
committer | Rüdiger Timm <rt@openoffice.org> | 2005-04-01 15:10:11 +0000 |
commit | 71b8c9152b42b7e7b207205b2db69138fc8324a9 (patch) | |
tree | 50c7a9874187e278d0436fa52608e3031113d9fe /vcl | |
parent | f88413373627d13e8d44acfeec2c1ee77cf9f1bb (diff) |
INTEGRATION: CWS vclshowstop01 (1.23.4); FILE MERGED
2005/03/23 18:50:05 pl 1.23.4.2: #i45872# correct patch problems
2005/03/23 18:43:20 pl 1.23.4.1: #i45872# fixed composed keys
Diffstat (limited to 'vcl')
-rw-r--r-- | vcl/unx/gtk/window/gtkframe.cxx | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/vcl/unx/gtk/window/gtkframe.cxx b/vcl/unx/gtk/window/gtkframe.cxx index 6b24a68a7d0b..9e33d4c0ae29 100644 --- a/vcl/unx/gtk/window/gtkframe.cxx +++ b/vcl/unx/gtk/window/gtkframe.cxx @@ -2,9 +2,9 @@ * * $RCSfile: gtkframe.cxx,v $ * - * $Revision: 1.26 $ + * $Revision: 1.27 $ * - * last change: $Author: rt $ $Date: 2005-03-30 09:11:10 $ + * last change: $Author: rt $ $Date: 2005-04-01 16:10:11 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -188,6 +188,7 @@ void GtkSalFrame::doKeyCallback( guint state, guint16 hardware_keycode, guint8 group, guint32 time, + sal_Unicode aOrigCode, bool bDown, bool bSendRelease ) @@ -196,7 +197,7 @@ void GtkSalFrame::doKeyCallback( guint state, aEvent.mnTime = time; aEvent.mnCode = GetKeyCode( keyval ) | GetModCode( state ); - aEvent.mnCharCode = (USHORT)gdk_keyval_to_unicode( keyval ); + aEvent.mnCharCode = aOrigCode; aEvent.mnRepeat = 0; vcl::DeletionListener aDel( this ); @@ -2205,7 +2206,14 @@ gboolean GtkSalFrame::signalKey( GtkWidget* pWidget, GdkEventKey* pEvent, gpoint } else { - pThis->doKeyCallback( pEvent->state, pEvent->keyval, pEvent->hardware_keycode, pEvent->group, pEvent->time, (pEvent->type == GDK_KEY_PRESS), false ); + pThis->doKeyCallback( pEvent->state, + pEvent->keyval, + pEvent->hardware_keycode, + pEvent->group, + pEvent->time, + sal_Unicode(gdk_keyval_to_unicode( pEvent->keyval )), + (pEvent->type == GDK_KEY_PRESS), + false ); if( ! aDel.isDeleted() ) { pThis->m_bSendModChangeOnRelease = false; @@ -2316,7 +2324,7 @@ void GtkSalFrame::signalIMCommit( GtkIMContext* pContext, gchar* pText, gpointer const PreviousKeyPress& rKP = pThis->m_aPrevKeyPresses.back(); pThis->m_bWasPreedit = false; - pThis->doKeyCallback( rKP.state, rKP.keyval, rKP.hardware_keycode, rKP.group, rKP.time, true, true ); + pThis->doKeyCallback( rKP.state, rKP.keyval, rKP.hardware_keycode, rKP.group, rKP.time, aTextEvent.maText.GetChar(0), true, true ); return; } |