diff options
author | das <das> | 2005-09-10 14:53:20 (GMT) |
---|---|---|
committer | das <das> | 2005-09-10 14:53:20 (GMT) |
commit | 772a802bd1a149cefda0f2fb72e01c827e2eec09 (patch) | |
tree | eb43350948b33779841a8e19cbb6b55c5f48f690 /macosx/tkMacOSXKeyEvent.c | |
parent | 4b772de94c71a044fa1a55d3e325b99807c0ba6a (diff) | |
download | tk-772a802bd1a149cefda0f2fb72e01c827e2eec09.zip tk-772a802bd1a149cefda0f2fb72e01c827e2eec09.tar.gz tk-772a802bd1a149cefda0f2fb72e01c827e2eec09.tar.bz2 |
* macosx/tkMacOSXMouseEvent.c (TkMacOSXProcessMouseEvent): check if
process is in front on MouseDown, otherwise request process activation
from BringWindowForward() via new isFrontProcess param.
* macosx/tkMacOSXCarbonEvents.c (TkMacOSXInitCarbonEvents): register our
event handler on the dispatcher target for all carbon events of interest
to TkAqua; this replaces event processing directly from the event queue
and thus allows to capture events that are syntesized by Carbon and sent
directly to the dispatcher and not to the event queue.
* macosx/tkMacOSXEvent.c: remove TkMacOSXCountAndProcessMacEvents(),
rename ReceiveAndProcessEvent() to TkMacOSXReceiveAndProcessEvent().
(TkMacOSXReceiveAndProcessEvent): remove tk event processing before
sending events to the dispatcher, all events of interest are now
processed in our dispatcher target event handler.
* macosx/tkMacOSXNotify.c (CarbonEventsCheckProc): dispatch events
directly via TkMacOSXReceiveAndProcessEvent(), but dispatch no more than
four carbon events at one time to avoid starving other event sources.
* macosx/tkMacOSXEvent.c: formatting cleanup, move XSync() to XStubs,
* macosx/tkMacOSXEvent.h: removed obsolete kEventClassWish handling.
* macosx/tkMacOSXXStubs.c
* macosx/tkMacOSXEvent.h: declare macosx internal procs as MODULE_SCOPE.
* macosx/tkMacOSXEvent.c:
* macosx/tkMacOSXKeyEvent.c:
* macosx/tkMacOSXMouseEvent.c:
* macosx/tkMacOSXWindowEvent.c:
* macosx/tkMacOSXButton.c: conditionalize all debug message printing to
* macosx/tkMacOSXCursor.c: stderr via TK_MAC_DEBUG define.
* macosx/tkMacOSXDebug.c:
* macosx/tkMacOSXDebug.h:
* macosx/tkMacOSXDialog.c:
* macosx/tkMacOSXEvent.c:
* macosx/tkMacOSXInit.c:
* macosx/tkMacOSXKeyEvent.c:
* macosx/tkMacOSXMenu.c:
* macosx/tkMacOSXMenubutton.c:
* macosx/tkMacOSXScale.c:
* macosx/tkMacOSXWindowEvent.c:
* macosx/tkMacOSXWm.c:
* unix/configure.in: define TK_MAC_DEBUG on aqua when symbols enabled.
* unix/configure: autoconf-2.59
* unix/tkConfig.h.in: autoheader-2.59
* library/listbox.tcl: synced aqua MouseWheel bindings with
* library/scrlbar.tcl: core-8-4-branch.
* library/text.tcl:
* xlib/xcolors.c: fixed warning
Diffstat (limited to 'macosx/tkMacOSXKeyEvent.c')
-rw-r--r-- | macosx/tkMacOSXKeyEvent.c | 21 |
1 files changed, 18 insertions, 3 deletions
diff --git a/macosx/tkMacOSXKeyEvent.c b/macosx/tkMacOSXKeyEvent.c index a9cc17a..64f4932 100644 --- a/macosx/tkMacOSXKeyEvent.c +++ b/macosx/tkMacOSXKeyEvent.c @@ -50,7 +50,7 @@ * software in accordance with the terms specified in this * license. * - * RCS: @(#) $Id: tkMacOSXKeyEvent.c,v 1.10 2005/08/09 07:39:21 das Exp $ + * RCS: @(#) $Id: tkMacOSXKeyEvent.c,v 1.11 2005/09/10 14:53:21 das Exp $ */ #include "tkMacOSXInt.h" @@ -135,7 +135,8 @@ static int KeycodeToUnicodeViaKCHRResource( *---------------------------------------------------------------------- */ -int TkMacOSXProcessKeyboardEvent( +MODULE_SCOPE int +TkMacOSXProcessKeyboardEvent( TkMacOSXEvent * eventPtr, MacEventStatus * statusPtr) { @@ -201,7 +202,9 @@ int TkMacOSXProcessKeyboardEvent( sizeof(keyEventData.ch), NULL, &keyEventData.ch); if (status != noErr) { +#ifdef TK_MAC_DEBUG fprintf (stderr, "Failed to retrieve KeyMacCharCodes\n"); +#endif statusPtr->err = 1; return false; } @@ -211,7 +214,9 @@ int TkMacOSXProcessKeyboardEvent( sizeof(keyEventData.keyCode), NULL, &keyEventData.keyCode); if (status != noErr) { +#ifdef TK_MAC_DEBUG fprintf (stderr, "Failed to retrieve KeyCode\n"); +#endif statusPtr->err = 1; return false; } @@ -221,7 +226,9 @@ int TkMacOSXProcessKeyboardEvent( sizeof(keyEventData.keyModifiers), NULL, &keyEventData.keyModifiers); if (status != noErr) { +#ifdef TK_MAC_DEBUG fprintf (stderr, "Failed to retrieve KeyModifiers\n"); +#endif statusPtr->err = 1; return false; } @@ -398,9 +405,11 @@ GenerateKeyEvent( Tk_QueueWindowEvent(&event, TCL_QUEUE_TAIL); break; default: +#ifdef TK_MAC_DEBUG fprintf (stderr, "GenerateKeyEvent(): Invalid parameter eKind %d\n", (int) eKind); +#endif return -1; } } @@ -950,10 +959,12 @@ KeycodeToUnicodeViaUnicodeResource( action = kUCKeyActionAutoKey; break; default: +#ifdef TK_MAC_DEBUG fprintf (stderr, "KeycodeToUnicodeViaUnicodeResource(): " "Invalid parameter eKind %d\n", (int) eKind); +#endif return 0; } @@ -978,7 +989,9 @@ KeycodeToUnicodeViaUnicodeResource( *deadKeyStatePtr = 0; if (noErr != status) { +#ifdef TK_MAC_DEBUG fprintf(stderr,"UCKeyTranslate failed: %d", (int) status); +#endif actuallength = 0; } @@ -1101,8 +1114,10 @@ KeycodeToUnicodeViaKCHRResource( cfString = CFStringCreateWithCStringNoCopy( NULL, macStr, encoding, kCFAllocatorNull); if (cfString == NULL) { +#ifdef TK_MAC_DEBUG fprintf(stderr, "CFString: Can't convert with encoding %d\n", (int) encoding); +#endif return 0; } @@ -1143,7 +1158,7 @@ KeycodeToUnicodeViaKCHRResource( *---------------------------------------------------------------------- */ -int +MODULE_SCOPE int TkMacOSXKeycodeToUnicode( UniChar * uniChars, int maxChars, EventKind eKind, |