Tk Source Code

History of macosx/tkMacOSXKeyEvent.c of 4719c5a45cb9aa42
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

History of file macosx/tkMacOSXKeyEvent.c at check-in 4719c5a45cb9aa42

2025-03-29
02:09
Aqua: remove references to fields of the TkWmInfo struct from tkMacOSXKeyEvent.c file: [9e1d2c01] check-in: [036a9312] user: culler branch: getrid_setgrid, size: 23708
2024-11-05
12:36
Revert some *.h changes which should be kept. Formatting. file: [4dc0e853] check-in: [136931df] user: jan.nijtmans branch: cgimage_with_crossing, size: 23690
2024-10-12
16:46
Simplify: remove tkDirtyRect and TkDrawAllViews now that drawRect is gone. file: [4dc67456] check-in: [a37bf58d] user: culler branch: aqua_color, size: 23702
2024-06-30
17:07
Merge 9.0. Streamline some indenting file: [9e8281d1] check-in: [8bd0d229] user: jan.nijtmans branch: cgimage_with_crossing, size: 23788
2024-05-09
21:40
(c) -> © file: [8cec14d8] check-in: [2d448437] user: jan.nijtmans branch: core-8-branch, size: 23865
18:51
Consistancy in the usage of "Copyright". On MacOS, always use the UTF-8 copyright-sign file: [a2df099b] check-in: [3945d793] user: jan.nijtmans branch: core-8-6-branch, size: 23960
2023-12-18
13:27
Even more TCL_UNUSED usage file: [ddcf0d9f] check-in: [172fb6dc] user: jan.nijtmans branch: core-8-branch, size: 23866
2023-11-25
09:54
Fix [9c098a90e6]: macOS Aqua : crash in setMarkedText. Patch from Christopher Chavez. file: [3bf589b6] check-in: [8c853e5d] user: fvogel branch: main, size: 23976
09:54
Fix [9c098a90e6]: macOS Aqua : crash in setMarkedText. Patch from Christopher Chavez. file: [f777b80f] check-in: [62ed2fad] user: fvogel branch: core-8-6-branch, size: 23961
2023-06-08
16:57
Add more type-casts, code cleanup (all backported from 8.7) file: [8df434ec] check-in: [0ba4a8f7] user: jan.nijtmans branch: core-8-6-branch, size: 23927
2023-05-31
20:37
Fix [4666f21a95]: Avoid a non-evident crash (and resolve conflict in tkMacOSXEmbed.c function Tk_GetOtherWindow() following changes in TIP #606). file: [5a684b7f] check-in: [cfb3d39f] user: fvogel branch: main, size: 23942
2023-05-29
14:18
Fourth patch from Christopher Chavez. file: [33b23938] check-in: [655ad2ca] user: fvogel branch: bug-4666f21a95, size: 23650
2023-03-30
03:45
Fix [ee0847f633]: Aqua: compiler warning in debug builds. And Fix [2ed289cae0]: Aqua: more format specifiers than arguments in tkToolbarButton file: [e5fe4439] check-in: [42cbe254] user: fvogel branch: main, size: 23881
2023-03-28
20:14
Fix [ee0847f633]: Aqua: compiler warning in debug builds. file: [ff2d6f41] check-in: [4527c59b] user: fvogel branch: bug-ee0847f6330, size: 23589
2021-12-21
13:02
TIP #606 implementation. TODO: documentation file: [d4cf6c10] check-in: [7538ed6c] user: jan.nijtmans branch: tip-606, size: 23855
2021-05-25
00:08
Merge 8.6 file: [715e30b4] check-in: [047a1aeb] user: culler branch: main, size: 23844
2021-05-22
15:45
Fix [7bda9882cb]: Aqua generates duplicate double-click actions when the double click activates the application. file: [9513e2cd] check-in: [88ca7797] user: culler branch: bug-7bda9882cb, size: 23563
2021-05-10
06:44
Merge 8.6 file: [cceab471] check-in: [c91c753d] user: jan.nijtmans branch: main, size: 23763
2021-05-06
14:18
Try to fix [171ba701e5]: crash when key is pressed after grab window loses focus. file: [b4a835c8] check-in: [3fb69573] user: culler branch: bug-171ba701e5, size: 23482
2021-05-03
16:04
Eliminate TkpPutRGBAImage's first 2 parameters, since they are unused file: [48a371e7] check-in: [9fda84d2] user: jan.nijtmans branch: core-8-6-branch, size: 23435
07:19
Fix [8a5086219e]: ttk::entry issue file: [e782c58e] check-in: [fee2e853] user: jan.nijtmans branch: main, size: 23716
2021-05-02
03:52
Merge 8.6 file: [6799db51] check-in: [736b3e2e] user: culler branch: main, size: 23720
2021-05-01
22:38
Fix typo. file: [256d44e6] check-in: [698eed41] user: culler branch: bug-2ecb09d118, size: 23439
22:37
Edit comments. file: [4afb84fb] check-in: [b0ad0b7d] user: culler branch: bug-2ecb09d118, size: 23439
22:21
Take care to only check the aRepeat property of an NSKeyDown event. Isolate the test for discarding them from the other logic file: [e3259af6] check-in: [f9e38696] user: culler branch: bug-2ecb09d118, size: 23646
19:05
Completely ignore repeat events if the repeat interval is set to off. How does this affect the TextInputClient? file: [ee178096] check-in: [97573ca8] user: culler branch: bug-2ecb09d118, size: 23405
2021-04-30
22:15
Fix [2ecb09d118]: Aqua ignores preferences setting to disable key repeats. file: [b6e80265] check-in: [b397fff2] user: culler branch: bug-2ecb09d118, size: 23218
2021-03-02
19:04
Merge 8.6 file: [37d47318] check-in: [ea7782aa] user: culler branch: main, size: 23381
19:02
Adjust the key event processing logic to handle dead keys being used as menu accelerators. This prevents the crash at exit. file: [ce913630] check-in: [6cff5cd5] user: culler branch: bug-1626ed65b8, size: 23100
2021-03-01
17:34
Fix [1626ed65b8]: Aqua aborts when Command-backquote is pressed on a Spanish keyboard. file: [db7e90b1] check-in: [bdb2ce53] user: culler branch: bug-1626ed65b8, size: 22800
2021-02-28
03:56
Merge 8.6 file: [6bcef107] check-in: [ea1c1aad] user: marc_culler branch: main, size: 23047
03:55
Fix [3b9296159c]: The NULL pointer guard in XSetupEvent is misplaced. (Why it is needed remains a mystery.) file: [f1101dce] check-in: [1ce1d38a] user: marc_culler branch: core-8-6-branch, size: 22766
2021-02-02
16:07
Merge 8.6 file: [93ec7a8f] check-in: [57b384d0] user: jan.nijtmans branch: main, size: 23034
15:40
More implicit type-casts, for C++ compatibility. file: [cf546b31] check-in: [9b1b7861] user: jan.nijtmans branch: core-8-6-branch, size: 22753
2020-12-16
21:05
Merge 8.6 file: [f11be5f3] check-in: [73019a2e] user: marc_culler branch: main, size: 23052
16:50
Tidy up with a patch from Christopher Chavez. Removes redundant include directives and double semicolons. Uses nil instead of NULL for references to NSObjects in Objective C. file: [5b81c066] check-in: [cdd32b7b] user: marc_culler branch: rfe-27fc4d0ae8, size: 22771
2020-12-09
15:01
(c) -> © file: [a4ca0777] check-in: [bd978a76] user: jan.nijtmans branch: main, size: 23053
2020-09-02
14:57
Merge 8.6 file: [8104a6ee] check-in: [588f8d51] user: jan.nijtmans branch: for_tkdnd, size: 22800
14:09
Merge 8.6 file: [fb6bf1e2] check-in: [44e30efb] user: jan.nijtmans branch: trunk, size: 23049
14:01
Rename (internal) TkMacOSXDrawableView() -> TkMacOSXGetNSViewForDrawable() file: [533a1f9e] check-in: [3745ef11] user: jan.nijtmans branch: core-8-6-branch, size: 22772
13:28
Implement TIP #580: Export Tk_GetDoublePixelsFromObj and 5 more file: [20ff7b1e] check-in: [cbe72995] user: jan.nijtmans branch: trunk, size: 23050
09:31
Merge 8.6 file: [e190e9c1] check-in: [eb27a56f] user: jan.nijtmans branch: for_tkdnd, size: 22801
09:00
Merge 8.6 file: [c479b67f] check-in: [ca7b45bf] user: jan.nijtmans branch: trunk, size: 23045
08:29
Eliminate MODULE_SCOPE wrapper function for TkMacOSXDrawable(). Rename (internal) TkMacOSXDrawableWindow() to TkMacOSXGetNSWindowForDrawable(). Code (type-cast) cleanup file: [6949f9ab] check-in: [dbffe62b] user: jan.nijtmans branch: core-8-6-branch, size: 22773
2020-09-01
19:08
Rename 3 badly named functions that were exported as stubs; export under both old and new names; edit comments. file: [036fbd6e] check-in: [a56fdb8f] user: marc_culler branch: for_tkdnd, size: 22805
06:58
Merge 8.6. Change signature of Tk_MacOSXGetTkWindow/Tk_MacOSXGetCGContextForDrawable file: [18117072] check-in: [eaeea764] user: jan.nijtmans branch: for_tkdnd, size: 22789
02:06
Suggestions for name cleanup with compatibiltiy for 8.6.11 file: [b09cef7c] check-in: [1f4afdb5] user: culler branch: 8-6-11-compatibility, size: 22801
2020-08-28
16:03
Maybe 8.7 can be clearer without breaking the API or ABI. file: [1f30eeba] check-in: [0cb49d66] user: marc_culler branch: nicer_stubs, size: 23023
2020-08-13
11:07
Merge 8.7 file: [f27de248] check-in: [3373d451] user: jan.nijtmans branch: tip-580, size: 23040
2020-07-27
16:27
Merge 8.6: fix testing and build issues on the various supported versions of macOS. file: [dca4fd56] check-in: [402a6993] user: culler branch: trunk, size: 23035
2020-07-24
21:21
Fix the build for Snow Leopard. Fix the fontchooser demo. file: [035fcbe2] check-in: [cc5a224f] user: culler branch: mac_testing, size: 22763
2020-07-18
18:11
Merge 8.6 file: [7212b15b] check-in: [88fa22c6] user: marc_culler branch: trunk, size: 22948
2020-07-15
20:57
More fixes from [7ebdd17974] (thanks Christopher Chavez): remove the needsRedisplay flag, update comments. file: [8f1db902] check-in: [87970183] user: marc_culler branch: idle_curiosity, size: 22676
2020-07-14
11:02
New TIP #580 implementation. Documentation still missing. file: [8efc9e07] check-in: [7fa354b9] user: jan.nijtmans branch: tip-580, size: 23153
2020-07-12
17:41
Merge 8.6 file: [4de2c64a] check-in: [169fc769] user: marc_culler branch: mistake, size: 22832
15:51
Merge 8.6 file: [80b29ccd] check-in: [d4004b94] user: jan.nijtmans branch: idle_curiosity, size: 22831
2020-07-08
20:40
Fix [34214bbdae]: typographical fixes in comments. Thanks to Christopher Chavez. file: [7b987108] check-in: [612b287e] user: fvogel branch: trunk, size: 23148
20:36
Fix [34214bbdae]: typographical fixes in comments. Thanks to Christopher Chavez. file: [dff55de5] check-in: [dcdc31c8] user: fvogel branch: core-8-6-branch, size: 22876
2020-06-06
18:53
A different attempt to make sure new windows are completely drawn. file: [5733d455] check-in: [a0cf8ddd] user: culler branch: idle_curiosity, size: 22832
2020-05-17
16:42
Don't use trans_chars array on MacOSX any more. file: [883b4efd] check-in: [009e3e09] user: culler branch: trunk, size: 23148
2020-05-14
14:32
Eliminate trans_chars from the macOS port. Now that the keycode field holds a UCS-32 character in the MacKeycode .v.keychar bitfield there is no need for trans_chars. file: [393fae6a] check-in: [cf6544e0] user: marc_culler branch: bug-d2a10a14a8, size: 22876
2020-05-12
17:58
Aqua: Fix an error in Tk_SetCaretPos. file: [d66ea724] check-in: [e3daeacd] user: culler branch: trunk, size: 24049
17:57
Aqua: Fix an error in Tk_SetCaretPos. file: [a763cb4d] check-in: [2d157902] user: culler branch: core-8-6-branch, size: 23777
15:12
Fix [585584ad66]: On Aqua, keysyms are incomplete and inconsistent for generated events. Key event handling was completely reworked. file: [8b7030e3] check-in: [15a8ae97] user: culler branch: trunk, size: 24049
13:21
Deal with the Menu key and possibly other keys that Apple does not use. file: [70579e03] check-in: [3522f9f8] user: culler branch: bug-585584ad66, size: 23777
2020-05-04
22:16
Add non-regression tests. file: [7525f2f3] check-in: [7bd8af87] user: marc_culler branch: bug-585584ad66, size: 23664
2020-05-03
16:14
Add comments, set virtual to REPLACEMENT_VIRTUAL when inserting IME text too. file: [a352821d] check-in: [914d59f9] user: marc_culler branch: bug-585584ad66, size: 23182
03:03
Replace one hash table with an array; make keycodes work in text and entry; use bitfields; stop bind from sign extending keycodes. file: [541506bf] check-in: [89964278] user: marc_culler branch: bug-585584ad66, size: 23117
2020-04-29
18:40
Deal with <Oslash> ~ <Shift-oslash> ~ <Shift-Option-o> ~ <Shift-Option-O> ~ <Option-O> ... and fix <BackSpace> and improve injection of key NSEvents. file: [c119cab8] check-in: [45d669d2] user: marc_culler branch: bug-585584ad66, size: 21954
2020-04-27
17:21
Eliminate use of nbytes, which seems to be superfluous on macOS; edit some comments file: [9655b6e7] check-in: [5ffe6fe8] user: marc_culler branch: bug-585584ad66, size: 21940
13:45
Fix crash when Tk is deactivated while the character selection popup is open. Nice catch by Christopher Chavez! file: [ca89a97d] check-in: [7a38ecf7] user: marc_culler branch: bug-585584ad66, size: 22033
01:28
Deal with Apple's Backspace key. file: [427378c7] check-in: [75a1a919] user: marc_culler branch: bug-585584ad66, size: 21615
2020-04-26
22:35
Revert change to tkMacOSXMouseEvent.c which broke local grabs and add a NULL pointer guard in setupXEvent. file: [83df9777] check-in: [8add666e] user: culler branch: bug-585584ad66, size: 21570
22:12
Tidy up; expand comments; clarify NSTextInputClient logic; deal with keyPad buttons. file: [e9eed3ff] check-in: [ae01b91e] user: culler branch: bug-585584ad66, size: 21530
03:07
Figured out how to make empty trans_chars, and dealt with menu and control characters. file: [135b8b5e] check-in: [461039d9] user: culler branch: bug-585584ad66, size: 21395
2020-04-25
22:51
Prevent a crash in setXEventPoint by checking for NULL wmInfoPtr file: [951fc11c] check-in: [7d3000b3] user: culler branch: bug-585584ad66, size: 21333
22:05
Remove no-op bindings for function keys and set trans_chars appropriately. file: [7dd17a33] check-in: [dbc9845c] user: culler branch: bug-585584ad66, size: 21279
19:16
Fixing IME broke Latin1; make both work. Use a flag so deciding whether to use the TextInputClient will be more robust. file: [3bda8f06] check-in: [020b108b] user: culler branch: bug-585584ad66, size: 21024
13:35
Fix a logic error that broke IME and remove the static caret_win variable. file: [438eb93e] check-in: [a0aa3688] user: marc_culler branch: bug-585584ad66, size: 20277
2020-04-24
20:13
Add x, y, X and Y to key events. file: [498a7fa4] check-in: [0dd0b22f] user: culler branch: bug-585584ad66, size: 20172
17:43
Fix [4fa083dd3f]: Should not set the caret position for a window which is not receiving key events. file: [30a76779] check-in: [913cc4b5] user: culler branch: bug-585584ad66, size: 18870
2020-04-21
17:29
Send all chars up to 0x7F to the TextInputClient so non-Latin1 keyboards work again. file: [38874d30] check-in: [86620139] user: marc_culler branch: bug-585584ad66, size: 18620
2020-04-20
21:06
Process Control-Tab normally; stop using an illegal value for send_event as a flag. file: [6e9aae2a] check-in: [bd0628f7] user: culler branch: bug-585584ad66, size: 18620
19:18
Fix two typos and a bug -- thanks to Christopher Chavez. file: [aeee5746] check-in: [f4ee810c] user: culler branch: bug-585584ad66, size: 18817
17:14
Another rewrite of tkProcessKeyEvent to repair and clarify the logic of when to use the TextInputClient and when to send an XEvent. file: [b3d3ce52] check-in: [769f555d] user: marc_culler branch: bug-585584ad66, size: 18816
2020-04-19
23:43
Another major overhaul: more code cleanup; make event generate work for Home, End, ...; distinguish left and right mod keys. file: [db469221] check-in: [7e861e1e] user: marc_culler branch: bug-585584ad66, size: 19263
2020-04-17
18:26
Fix [585584ad66]: Aqua: event generate not working for function keys file: [cc97145f] check-in: [a0030742] user: culler branch: bug-585584ad66, size: 19032
2020-04-16
19:02
Fix misplaced parentheses and other errors in commit 61e70e0f. file: [ec410b25] check-in: [c970964a] user: culler branch: trunk, size: 21561
19:00
Fix misplaced parentheses and other errors in commit 61e70e0f. file: [4f1e7f90] check-in: [2db6e0f1] user: culler branch: core-8-6-branch, size: 21289
2020-04-14
22:12
Merge 8.6 file: [aa766a0b] check-in: [c5e563ed] user: jan.nijtmans branch: trunk, size: 21458
22:09
Workaround for [3767882e06]: X Error of failed request: BadLength (poly request too large or internal Xlib length error) file: [97b03184] check-in: [7f20966d] user: jan.nijtmans branch: core-8-6-branch, size: 21186
19:10
Fix [87bade7e14]: Aqua PressAndHold composition misbehaves. file: [73d1d4d7] check-in: [d6a43988] user: culler branch: trunk, size: 21483
2020-03-24
15:26
Fix [87bade7e14]: PressAndHold composition misbehaves. file: [de224da9] check-in: [14376ab5] user: marc_culler branch: bug-87bade7e14, size: 21211
2020-03-05
22:15
Eliminate many -Wextra warnings file: [564b1319] check-in: [ac625e2f] user: jan.nijtmans branch: trunk, size: 22426
2019-12-04
20:35
Make MODULE_SCOPE functions start with "Tk". Also simplify TkUtfToNSString(), making use of Tcl_UtfToUniCharDString() file: [fbcc6738] check-in: [f98feb70] user: jan.nijtmans branch: core-8-6-branch, size: 22154
2019-11-19
04:37
Merge 8.6 file: [9b7a9473] check-in: [85913810] user: culler branch: trunk, size: 22429
00:57
Implement non-BMP unicode for macOS file: [a4346eb9] check-in: [65bf75ea] user: culler branch: core-8-6-branch, size: 22155
00:46
Correct some errors revealed by building on macOS 10.6 file: [14b29241] check-in: [6a7d0065] user: culler branch: core-8-6-branch, size: 22436
2019-11-18
00:31
Implement non-BMP unicode for macOS when TCL_UTF_MAX = 3 by encoding surrogates as 3-byte UTF-8-ish sequences. file: [6ee4c44c] check-in: [45294d24] user: culler branch: mac_unicode, size: 22167
2019-11-01
20:57
merge core-8-6-branch, in particular, push a different fix for the 'Column ... out of range' error reported in [caacf1f082], this time without any regression... file: [0b724b78] check-in: [914e9dec] user: fvogel branch: trunk, size: 22441
11:03
Somewhat more progress on [a179564826]: Tk 8.6: prevent issues when encountering non-BMP Unicode characters. Increase XMaxTransChars from 4 to 7, at the same time reducing the nbytes field from int to unsigned char. This makes more room to NULL-terminate the trans_chars array in the XEvent, even when it's 4 bytes in length. (fully binary compatible, since the nbytes field is not supposed to be accessed externally) file: [fc612295] check-in: [9dfe5c56] user: jan.nijtmans branch: core-8-6-branch, size: 22448
2019-10-28
03:25
Apply patch from Kevin Walzer to restore functionality of Cut/Copy/Paste keyboard shortcuts on Aqua. file: [22cb75d2] check-in: [88d16ed9] user: culler branch: trunk, size: 22479
03:25
Apply patch from Kevin Walzer to restore functionality of Cut/Copy/Paste keyboard shortcuts on Aqua. file: [19640e9e] check-in: [0c886a3d] user: culler branch: core-8-6-branch, size: 22486
2019-10-25
17:58
Aqua: fix IME behavior; make accent menus work; rework Services; deal with non-BMP pastes. file: [7e997898] check-in: [d3ae24b5] user: culler branch: trunk, size: 22893
17:52
Aqua: fix IME behavior; make accent menus work; rework Services; deal with non-BMP pastes. file: [a3c43993] check-in: [6426d80f] user: culler branch: core-8-6-branch, size: 22900
01:42
Fix [0854c99473]: macOS key events during a local grab are not handled correctly. file: [19d5d765] check-in: [131a8e9c] user: culler branch: trunk, size: 19256
2019-10-24
23:56
Make Apple's press-and-hold accent menu work with Tk entry and text widgets. file: [8d556722] check-in: [fb2fd7ed] user: culler branch: bug-39de9677aa, size: 22650
15:38
Prevent a crash which could occur if the window were defocussed during IME composition. file: [91814c9e] check-in: [da9aa9b0] user: culler branch: bug-39de9677aa, size: 22086
2019-10-23
21:52
Rework and simplify services so the TkService object won't interfere with IME. It didn't need to be a subclass of NSView, or be in the Responder chain. file: [da9847ca] check-in: [e21c087a] user: culler branch: bug-39de9677aa, size: 21874
2019-10-22
23:17
More progress on implementing IME file: [cc5ec8f0] check-in: [801f063d] user: culler branch: bug-39de9677aa, size: 21916
17:48
Fix [0854c99473]: macOS key events during a local grab are not handled correctly. file: [6440914f] check-in: [cde8c195] user: culler branch: bug-0854c99473, size: 19263
16:08
Fix [39de9677aa]: incorrect IME behavior file: [8c060744] check-in: [fb1d0dab] user: culler branch: bug-39de9677aa, size: 22143
2019-10-02
20:12
Add many (mostly MacOS) stub functions, needed for future implementation of XIM. Since the X11 API is now equal for all platforms, many 'hacks' needed in the past can now be completely eliminated. file: [f641e39f] check-in: [8c6a8b54] user: jan.nijtmans branch: trunk, size: 19006
2019-09-29
16:54
Finally, fix another build problem on MacOS file: [06a1c43c] check-in: [c79c810c] user: jan.nijtmans branch: trunk, size: 19008
12:08
Remove call to idletasks in tkMacOSXKeyEvent.c file: [539f1e8b] check-in: [a714ac08] user: kevin_walzer branch: core-8-6-branch, size: 19013
01:28
Merge chavez-canvas branch file: [383b1d5e] check-in: [67240cfb] user: kevin_walzer branch: trunk, size: 19054
2019-09-24
10:12
Branch to test Christopher Chavez patch in ticket [2beda17141] to remove some hard-coded values from canvas, allow canvas to vary apperance in Dark Mode on macOS and also on Windows file: [8f506429] check-in: [9a3669da] user: kevin_walzer branch: chavez-canvas, size: 19059
2019-08-27
13:42
macOS: Rename TkMacOSXGetCapture --> TkpGetCapture, and regenerate stubs. file: [20129edb] check-in: [ac702579] user: fvogel branch: bug-943d5ebe51-87, size: 19003
2019-08-26
20:12
Adapt macOS code to the renaming that just happened in previous commit. Branch now builds on macOS. file: [2bc63d08] check-in: [aa240c17] user: fvogel branch: bug-943d5ebe51, size: 18990
2019-08-19
20:49
Fix more X11 function signatures in MacOSX port file: [3d90022f] check-in: [59f91eb3] user: jan.nijtmans branch: core-8-6-branch, size: 19008
2019-06-29
00:05
Fix compiler warnings on all macOS versions. file: [a42829d4] check-in: [baec7cb8] user: culler branch: core-8-6-branch, size: 18989
2019-04-24
15:52
Fix bug [4d2e8d4d5c]: Aqua notebooks sometimes do not draw a new pane immediately file: [97c88003] check-in: [b1645f5c] user: culler branch: bug-4d2e8d4d5c, size: 18979
2019-04-17
15:02
Adjust some whitespace. file: [fd478052] check-in: [2db3de5b] user: culler branch: core-8-6-branch, size: 18832
14:30
Add a couple of blank lines. file: [7d135b14] check-in: [3a29febb] user: culler branch: core-8-6-branch, size: 19205
14:05
Mitigate future merge conflict headaches. file: [30e2011a] check-in: [764eaf89] user: culler branch: core-8-6-branch, size: 19204
2019-04-16
13:22
Source readability run: macosx/* file: [67c5247e] check-in: [991b8f0e] user: dkf branch: trunk, size: 18833
2019-03-03
17:04
Increase the size of the ring buffer for Aqua, and modify bgerror so it doesn't try (and fail) to post a dialog inside [NSView drawRect]. file: [ecca5017] check-in: [98cb3c6f] user: culler branch: bug-1951abf33d, size: 19631
2019-01-05
16:24
Implement local grabs for Aqua. file: [f5a77352] check-in: [5f57a11a] user: culler branch: mistake, size: 20651
2018-11-30
22:11
Make tabbed windows work correctly on macOS. file: [1bda728e] check-in: [5944d2a3] user: culler branch: bug-12f7fe1f23, size: 20405
2018-11-11
06:48
Always check whether the return value of TkMacOSXGetTkWindow is NULL. file: [6036f835] check-in: [afef1ccf] user: culler branch: mac-appearance, size: 20036
2018-11-08
00:01
Remove code that was commented out. file: [d7e03248] check-in: [8f99e962] user: culler branch: mac-nofocus, size: 20002
2018-11-07
23:59
Fix crash due to key events from the about dialog having an NSWindow with no Tk window. file: [dae93c39] check-in: [106b4668] user: culler branch: mac-nofocus, size: 20095
2018-11-01
12:46
Be consistent about using TKLog and add one new log message. file: [112c54aa] check-in: [e543eb3f] user: culler branch: core-8-6-branch, size: 20032
2018-10-28
17:24
Deal with a compiler warning about a category implementing methods of the main class. file: [d8dd99bf] check-in: [a3b5ee8a] user: culler branch: mojave-cleanup, size: 20032
2018-09-01
22:13
Delete unused variables, and eol-spacing file: [1054afb6] check-in: [c8d65ad2] user: jan.nijtmans branch: core-8-6-branch, size: 20030
2018-08-14
11:52
Fix a few MacOSX compiler warnings file: [5d667575] check-in: [a722420d] user: jan.nijtmans branch: core-8-6-branch, size: 20127
2018-08-13
02:20
Clean up, remove commented-out code file: [3b80e3f6] check-in: [ec81d802] user: kevin_walzer branch: mac-keyrelease-test, size: 20135
02:06
Test fix for 1ba71a86bb, so key release events fire at the correct point file: [b4eedf21] check-in: [466c3287] user: kevin_walzer branch: mac-keyrelease-test, size: 20418
2017-10-11
00:44
Numerous fixes for Tk on macOS 10.13; eliminate memory leaks, override system fullscreen API that confuses window geometry, improve implementation of Tk fullscreen API. Thanks to Marc Culler for patches to address memory leaks. file: [6058d8fb] check-in: [e5463978] user: kevin_walzer branch: core-8-6-branch, size: 20080
2015-12-15
02:53
Fix for some redraw issues on Tk-Cocoa on OS X 10.11; further refinement of memory management; thanks to Marc Culler for patches file: [56ed4647] check-in: [c276c0a9] user: kevin_walzer branch: core-8-5-branch, size: 20050
02:50
Fix for some redraw issues on Tk-Cocoa on OS X 10.11; further refinement of memory management; thanks to Marc Culler for patches file: [00cc66a6] check-in: [f04988fb] user: kevin_walzer branch: trunk, size: 20049
2015-11-08
22:02
Cleanup of last patch to Tk-Cocoa file: [41d326e1] check-in: [620ab19d] user: kevin_walzer branch: core-8-5-branch, size: 20049
22:01
Cleanup of last patch to Tk-Cocoa file: [86001074] check-in: [5099e23a] user: kevin_walzer branch: trunk, size: 20048
2015-03-23
10:44
Remove some unnecessary end-of-line spacing file: [536d2017] check-in: [650936d2] user: jan.nijtmans branch: trunk, size: 20013
2015-03-21
01:39
Add copyright notice for Marc Culler file: [4bfa69e2] check-in: [8ea0054b] user: kevin_walzer branch: trunk, size: 20014
01:30
Improvement of memory management, removal of zombie windows from Tk-Cocoa; thanks to Marc Culler for patch file: [665607ba] check-in: [e3b0c37c] user: kevin_walzer branch: trunk, size: 19982
00:57
Cleanup and improvement of tracking of native windows in Cocoa; thanks to Marc Culler for patch file: [e268fe0f] check-in: [66e6c02a] user: kevin_walzer branch: trunk, size: 19842
2015-02-12
12:51
Silence some compiler warnings file: [57f6e413] check-in: [4f08cfde] user: dgp branch: core-8-5-branch, size: 19692
2014-07-25
17:04
Add copyright notice to Marc Culler for extensive patch to alpha rendering on Mac/Cocoa; remove private API calls to comply with platform requirements. file: [577b6927] check-in: [1a82cd9f] user: kevin_walzer branch: core-8-5-branch, size: 19623
2012-01-29
16:36
Fix for serious bugs with input methods, and for display of certain fonts in buttons; thanks to Adrian Robert for extensive patches file: [12f7d4ff] check-in: [2ca757bf] user: kevin_walzer branch: trunk, size: 19563
2011-06-08
20:24
Purge RCS Keywords file: [82416016] check-in: [b8a13852] user: dgp branch: trunk, size: 8408
17:44
Purge RCS Keywords. file: [a087d0a8] check-in: [3f95fbe0] user: dgp branch: core-8-5-branch, size: 31930
16:13
Purge RCS Keywords. file: [ecdb8795] check-in: [a74f32bb] user: dgp branch: core-8-4-branch, size: 31816
2011-01-24
15:20
Fix for SF bug 2907388 (crash on composite characters) file: [bbf97416] check-in: [9b0938d2] user: wordtech branch: trunk, size: 8490
2010-01-06
14:27
Oops file: [0d001c82] check-in: [e485aab3] user: dkf branch: trunk, size: 8363
2010-01-02
11:07
Fix [Bug 1373712] and [Bug 1924761]. file: [ac54438e] check-in: [a5ab1bd8] user: dkf branch: trunk, size: 8362
10:43
Fix [Bug 1373712] and [Bug 1924761]. file: [dc3cdc1d] check-in: [0910f89f] user: dkf branch: core-8-5-branch, size: 32011
2009-07-06
20:29
More marking of files as Objective-C. file: [a5e41491] check-in: [0f560ce4] user: dkf branch: trunk, size: 8323
2009-06-29
14:35
Merge of TkAqua Cocoa port file: [29950a04] check-in: [05bd0a2c] user: das branch: trunk, size: 8325
2008-10-27
11:55
Code style improvements, especially including making code less deeply nested. file: [816f5904] check-in: [2784f9c7] user: dkf branch: trunk, size: 31935
2008-09-02
16:14
comments, whitespace file: [f803fde5] check-in: [0c33d400] user: das branch: core-8-5-branch, size: 31970
16:10
comments, whitespace file: [5b6b6433] check-in: [441577ba] user: das branch: trunk, size: 31966
2007-12-13
15:23
merge stable branch onto HEAD file: [dc83c2e8] check-in: [e7868b44] user: dgp branch: trunk, size: 31893
2007-07-01
17:31
merge updates from HEAD file: [12fb2a4c] check-in: [9cc0726e] user: dgp branch: core-stabilizer-branch, size: 31897
2007-06-29
03:22
* macosx/tkMacOSXScrlbr.c: correct int <-> dobule conversion issues that could lead to Carbon getting confused about scrollbar thumb size.
* macosx/tkMacOSXDraw.c (XCopyArea, XCopyPlane, TkPutImage) use TkMacOSX{Setup,Restore}DrawingContext() to setup/restore clip & colors. (TkMacOSXSetupDrawingContext, TkMacOSXRestoreDrawingContext): add save and restore of QD port clip region; factor out clip region code common to CG and QD branches; check for port and context validity; handle tkPictureIsOpen flag during QD port setup. (TkScrollWindow): remove unnecessary scroll region manipulation
* macosx/tkMacOSXDraw.c: remove second global QD temp region * macosx/tkMacOSXInt.h: (no longer necessary) and rename * macosx/tkMacOSXRegion.c: remaining global QD temp region. * macosx/tkMacOSXSubwindows.c: * macosx/tkMacOSXWindowEvent.c:
* macosx/tkMacOSXDraw.c: make useCGDrawing variable MODULE_SCOPE * macosx/tkMacOSXFont.c: and sync formatting with HEAD.
* macosx/tkMacOSXButton.c: reduce reliance on current QD port * macosx/tkMacOSXColor.c: setting and remove unnecessary * macosx/tkMacOSXDebug.c: references to a drawable's QD port, * macosx/tkMacOSXDebug.h: notably replace GetWindowFromPort( * macosx/tkMacOSXDialog.c: TkMacOSXGetDrawablePort()) idiom by new * macosx/tkMacOSXDraw.c: TkMacOSXDrawableWindow() and change * macosx/tkMacOSXKeyEvent.c: TkMacOSXSetColorInPort() to take a port * macosx/tkMacOSXMenu.c: argument. * macosx/tkMacOSXMenubutton.c: * macosx/tkMacOSXMouseEvent.c: * macosx/tkMacOSXScale.c: * macosx/tkMacOSXScrlbr.c: * macosx/tkMacOSXSubwindows.c: * macosx/tkMacOSXWindowEvent.c: * macosx/tkMacOSXWm.c:
* macosx/tkMacOSXInt.h: factor out macros, declarations * macosx/tkMacOSXPrivate.h (new): and prototypes that are purely internal and private to the 'macosx' sources into a new internal header file that does _not_ get installed into Tk.framework/PrivateHeaders.
* macosx/tkMacOSXButton.c: #include new tkMacOSXPrivate.h * macosx/tkMacOSXCarbonEvents.c: instead of tkMacOSXInt.h. * macosx/tkMacOSXClipboard.c: * macosx/tkMacOSXColor.c: * macosx/tkMacOSXCursor.c: * macosx/tkMacOSXDebug.c: * macosx/tkMacOSXDialog.c: * macosx/tkMacOSXDraw.c: * macosx/tkMacOSXEntry.c: * macosx/tkMacOSXEvent.c: * macosx/tkMacOSXFont.c: * macosx/tkMacOSXHLEvents.c: * macosx/tkMacOSXInit.c: * macosx/tkMacOSXKeyEvent.c: * macosx/tkMacOSXMenu.c: * macosx/tkMacOSXMenubutton.c: * macosx/tkMacOSXMenus.c: * macosx/tkMacOSXMouseEvent.c: * macosx/tkMacOSXNotify.c: * macosx/tkMacOSXRegion.c: * macosx/tkMacOSXScale.c: * macosx/tkMacOSXScrlbr.c: * macosx/tkMacOSXSubwindows.c: * macosx/tkMacOSXWindowEvent.c: * macosx/tkMacOSXWm.c: * macosx/tkMacOSXXStubs.c:
file: [142bdba5] check-in: [98571053] user: das branch: core-8-4-branch, size: 31897
03:20
* macosx/tkMacOSXScrlbr.c: correct int <-> dobule conversion issues that could lead to Carbon getting confused about scrollbar thumb size.
* macosx/tkMacOSXDraw.c (XCopyArea, XCopyPlane, TkPutImage) use TkMacOSX{Setup,Restore}DrawingContext() to setup/restore clip & colors. (TkMacOSXSetupDrawingContext, TkMacOSXRestoreDrawingContext): add save and restore of QD port clip region; factor out clip region code common to CG and QD branches; check for port and context validity; handle tkPictureIsOpen flag during QD port setup. (TkScrollWindow): remove unnecessary scroll region manipulation
* macosx/tkMacOSXDraw.c: remove second global QD temp region * macosx/tkMacOSXInt.h: (no longer necessary) and rename * macosx/tkMacOSXRegion.c: remaining global QD temp region. * macosx/tkMacOSXSubwindows.c: * macosx/tkMacOSXWindowEvent.c:
* macosx/tkMacOSXDraw.c: make useCGDrawing variable MODULE_SCOPE * macosx/tkMacOSXFont.c: and respect it for ATSUI font drawing.
* macosx/tkMacOSXButton.c: reduce reliance on current QD port * macosx/tkMacOSXColor.c: setting and remove unnecessary * macosx/tkMacOSXDebug.c: references to a drawable's QD port, * macosx/tkMacOSXDebug.h: notably replace GetWindowFromPort( * macosx/tkMacOSXDialog.c: TkMacOSXGetDrawablePort()) idiom by new * macosx/tkMacOSXDraw.c: TkMacOSXDrawableWindow() and change * macosx/tkMacOSXKeyEvent.c: TkMacOSXSetColorInPort() to take a port * macosx/tkMacOSXMenu.c: argument. * macosx/tkMacOSXMenubutton.c: * macosx/tkMacOSXMouseEvent.c: * macosx/tkMacOSXScale.c: * macosx/tkMacOSXScrlbr.c: * macosx/tkMacOSXSubwindows.c: * macosx/tkMacOSXWindowEvent.c: * macosx/tkMacOSXWm.c:
* macosx/tkMacOSXInt.h: factor out macros, declarations * macosx/tkMacOSXPrivate.h (new): and prototypes that are purely internal and private to the 'macosx' sources into a new internal header file that does _not_ get installed into Tk.framework/PrivateHeaders.
* macosx/tkMacOSXButton.c: #include new tkMacOSXPrivate.h * macosx/tkMacOSXCarbonEvents.c: instead of tkMacOSXInt.h. * macosx/tkMacOSXClipboard.c: * macosx/tkMacOSXColor.c: * macosx/tkMacOSXCursor.c: * macosx/tkMacOSXDebug.c: * macosx/tkMacOSXDialog.c: * macosx/tkMacOSXDraw.c: * macosx/tkMacOSXEntry.c: * macosx/tkMacOSXEvent.c: * macosx/tkMacOSXFont.c: * macosx/tkMacOSXHLEvents.c: * macosx/tkMacOSXInit.c: * macosx/tkMacOSXKeyEvent.c: * macosx/tkMacOSXMenu.c: * macosx/tkMacOSXMenubutton.c: * macosx/tkMacOSXMenus.c: * macosx/tkMacOSXMouseEvent.c: * macosx/tkMacOSXNotify.c: * macosx/tkMacOSXRegion.c: * macosx/tkMacOSXScale.c: * macosx/tkMacOSXScrlbr.c: * macosx/tkMacOSXSubwindows.c: * macosx/tkMacOSXWindowEvent.c: * macosx/tkMacOSXWm.c: * macosx/tkMacOSXXStubs.c: * macosx/ttkMacOSXTheme.c:
file: [c54a6067] check-in: [dd992cbc] user: das branch: trunk, size: 31893
2007-06-04
15:19
merge updates from HEAD file: [3c1aa670] check-in: [c5226fca] user: dgp branch: core-stabilizer-branch, size: 31914
09:28
* macosx/tkMacOSXMenu.c: add error checking; whitespace cleanup.
* macosx/tkMacOSXDraw.c: sync comment formatting with HEAD. * macosx/tkMacOSXEmbed.c: * macosx/tkMacOSXEntry.c: * macosx/tkMacOSXKeyEvent.c: * macosx/tkMacOSXKeyboard.c: * macosx/tkMacOSXMenus.c: * macosx/tkMacOSXSend.c: * macosx/tkMacOSXSubwindows.c: * macosx/tkMacOSXWindowEvent.c: * macosx/tkMacOSXWm.c: * macosx/tkMacOSXXStubs.c:
file: [b473fd82] check-in: [41ee17c0] user: das branch: core-8-4-branch, size: 31914
2007-06-03
13:44
* macosx/tkMacOSXDraw.c: comment formatting fix for Xcode 3.0. * macosx/tkMacOSXEmbed.c: * macosx/tkMacOSXEntry.c: * macosx/tkMacOSXFont.c: * macosx/tkMacOSXKeyEvent.c: * macosx/tkMacOSXKeyboard.c: * macosx/tkMacOSXMenus.c: * macosx/tkMacOSXSend.c: * macosx/tkMacOSXSubwindows.c: * macosx/tkMacOSXWindowEvent.c: * macosx/tkMacOSXWm.c: * macosx/tkMacOSXXStubs.c:
file: [d3a5cf55] check-in: [c295229c] user: das branch: trunk, size: 31910
2007-04-29
02:26
* macosx/tkMacOSXCarbonEvents.c: add window event target carbon event * macosx/tkMacOSXEvent.c: handler for all kEventClassWindow and * macosx/tkMacOSXEvent.h: kEventClassMouse events; move all * macosx/tkMacOSXNotify.c: remaining events except for * macosx/tkMacOSXWindowEvent.c: kEventClassKeyboard from dispatcher to application event handler; pass event handler callRef downstream; fix debug event tracing; process all tcl event types in carbon event timer; delay carbon event timer first fire; add TkMacOSXTrackingLoop() to mark enter/exit of event tracking loop during which all tcl events but only carbon update events should be processed by the timer (replaces various calls to Tcl_SetServiceMode()); rename TkMacOSXReceiveAndProcessEvent() to TkMacOSXReceiveAndDispatchEvent(), move it from tkMacOSXEvent.c to tkMacOSXCarbonEvents.c and modify it to dequeue only update events during a tracking loop; add TkMacOSXRunTclEventLoop() to standardize the various ways in use to run the tcl event loop; add handling of kEventClassAppearance events (for ScrollBarVariantChanged event).
* macosx/tkMacOSXDialog.c: use new TkMacOSXTrackingLoop() around * macosx/tkMacOSXEvent.c: blocking API that puts up modal dialogs * macosx/tkMacOSXMenu.c: or when entering/exiting menu/control * macosx/tkMacOSXMouseEvent.c: tracking, window dragging and other * macosx/tkMacOSXScale.c: mouse tracking loops. * macosx/tkMacOSXScrlbr.c: * macosx/tkMacOSXWindowEvent.c: * macosx/tkMacOSXWm.c:
* macosx/tkMacOSXDialog.c: use new TkMacOSXRunTclEventLoop() * macosx/tkMacOSXScale.c: instead of Tcl_DoOneEvent(), * macosx/tkMacOSXScrlbr.c: Tcl_ServiceAll(), TclServiceIdle() * macosx/tkMacOSXWindowEvent.c: and Tcl_GlobalEval("update idletasks").
* macosx/tkMacOSXColor.c: make available as Tk system colors all * macosx/tkMacOSXPort.h: appearance manager brushes, text colors and backgrounds with new and legacy names, as well as the fully transparent color "systemTransparent"; add TkMacOSXSetColorIn{Port,Context}() to directly set an X pixel color value in the current QD port resp. the given CG context without requiring passage through rgb representation (lossy for most system colors); modernize/remove Classic-era code; replace crufty strcmp() elseifs by Tcl_GetIndexFromObjStruct().
* macosx/tkMacOSXButton.c: use new TkMacOSXSetColorInPort() * macosx/tkMacOSXDraw.c: instead of setting rgb color directly * macosx/tkMacOSXMenubutton.c: to allow for non-rgb system colors.
* macosx/tkMacOSXCursor.c: implement "none" cursor as on other platforms [Patch 1615427]; add all missing appearance manager cursors.
* macosx/tkMacOSXDefault.h: set SELECT_FG_COLORs to None to match aqua L&F; use standard system color names; use new 'menu' system font; correct default scrollbar width.
* macosx/tkMacOSXDraw.c: standardize initialization, use and * macosx/tkMacOSXInt.h: emptying of various static temp rgns * macosx/tkMacOSXRegion.c: onto two global RgnHandles; in debug * macosx/tkMacOSXSubwindows.c: builds, verify emptiness of these temp * macosx/tkMacOSXWindowEvent.c: rgns before use.
* macosx/tkMacOSXDraw.c: add TkMacOSX{Setup,Restore}DrawingContext() to * macosx/tkMacOSXInt.h: abstract common setup & teardown of drawing environment (for both CG and QD); save/restore QD theme drawing state; handle GC clip region; add TkpClipDrawableToRect() to allow clipped drawing into drawable regardless of GC used; use new system color "systemWindowHeaderBackground" to setup background in themed toplevels; correct implementation of TkMacOSXMakeStippleMap().
* macosx/tkMacOSXEntry.c: use new TkMacOSXSetupDrawingContext() and * macosx/tkMacOSXFont.c: TkMacOSXRestoreDrawingContext() instead of various setup/teardown procs like TkMacOSX{SetUp,Release}CGContext(), TkMacOSXQuarz{Start,End}Draw(), TkMacOSXSetUpGraphicsPort() etc.
* macosx/tkMacOSXEmbed.c: add CG context and drawable clip rgn fields * macosx/tkMacOSXInt.h: to MacDrawable struct. * macosx/tkMacOSXSubwindows.c:
* macosx/tkMacOSXDialog.c: make -parent option of tk_getOpenFile et al. use the sheet version of NavServices dialogs; ensure native parent win exists before using StandardSheet API for tk_messageBox [Bug 1677611]; force sheets to behave like app-modal dialogs via WindowModality() API; use more modern ColorPicker API.
* macosx/tkAboutDlg.r: use themed movable modal dialog, fix (c) year.
* macosx/tkMacOSXEntry.c: take xOff/yOff of MacDrawable into account when computing locations/bounds to ensure correct posititioning when not drawing into intermediate pixmap.
* macosx/tkMacOSXFont.c: use appearance manager API to map system font * macosx/tkMacOSXFont.h: names to TkFonts; add "menu" system font for menu item text drawing from MDEF; disable broken QD stippling.
* macosx/tkMacOSXMenu.c: large-scale rewrite of custom * macosx/tkMacOSXMenu.r (removed): MDEF and related code that * unix/Makefile.in: restores many longtime-MIA features to working order (e.g. images, custom colors & fonts in menus etc); implement compound menu items; use Appearance Mgr and ThemeText APIs to mimic native MDEF as closely as possible when default "menu" system font is used; remove now obsolete SICN drawing code and resources.
* macosx/tkMacOSXCarbonEvents.c: handle additional menu carbon events * macosx/tkMacOSXEvent.c: in order to support <<MenuSelect>> in * macosx/tkMacOSXMenu.c: the menubar and in menus that are not * macosx/tkMacOSXMenus.c: using the custom MDEF [Bug 1620826]; fix early and missing clearing of current Tk active menu entry; fix extraneous sending of <<MenuSelect>> during active menu entry clearing.
* macosx/tkMacOSXMouseEvent.c: add support for async window dragging by the window server; set the corresponding window attribute by default.
* macosx/tkMacOSXMouseEvent.c: rationalized handling order of non-mousedown events; add TkMacOSXModifierState() to retrieve the current key modifiers in carbon format.
* macosx/tkMacOSXScrlbr.c: use appearance manager API to retrieve scrollbar component metrics; add awareness of multiple possibilites for scrollbar arrow position in aqua and handle user changes to arrow position pref; handle difference in metrics of small & large scrollbar variants; handle aqua "jump to here" scrollbar behaviour; correct computation of scroll view size and position; enforce min scrollbar height to avoid scrollbar component overlap; erase scrollbar area outside of standard width; remove broken auto-adjust code; account for window class when leaving space for grow box; remove code to manually draw grow box; use modern API for thumb scroll proc; replace HiliteControl() by modern API; replace control mgr constants with appearance mgr equivalents.
* macosx/tkMacOSXSubwindows.c: use SetWindowBounds() API instead of SizeWindow(); invalidate clip regions after X{Map,Unmap}Window as fix for [Bug 940117] made them dependent on mapping state; remove unneeded calls to TkMacOSXInvalClipRgns() and unnecessary setting of QD port; use native-endian pixmap on intel; remove obsolete pixmap pix locking.
* macosx/tkMacOSXWindowEvent.c: handle only the first of a batch of kEventAppAvailableWindowBoundsChanged events sent per transaction; handle kEventWindowBoundsChanged event to support live window resizing and centralized sending of location/size changed ConfigureNotify events; ensure HIGrowBox is redrawn after bounds change; constrain window after dragging to ensure titlebar is not inacessible offscreen or under dock/menubar; handle kEventWindowGetRegion and kEventWindowDrawContent for transparent windows to mark resp. paint content region as transparent; handle kEventWindowConstrain for fullscreen windows to ensure bounds match new screen size; enter/exit fullscreen UIMode upon activation/deactivation of fullscreen window.
* macosx/tkMacOSXWm.c: use live-resize and async-drag carbon window * macosx/tkMacOSXWm.h: attributes for toplevels by default; implement new [wm attributes] -topmost, -transparent and -fullscreen; refactor WmAttributesCmd() parallelling the tkUnixWm.c implementation, use thus factored proc to set proxy icon from [wm iconbitmap]; dynamically determine default values for toplevel min and max sizes (similar to tkWinWm.c impl): min sizes depend on window class & attributes to ensure visibility of all titlebar widgets and grow box, max sizes depend on maximal window bounds for all active displays; factor out code that puts into effect changes to master or override_redirect; use RepositionWindow() API to determine staggered initial window bounds; correct resize limit calculations, handle gridding and use modern resize API in TkMacOSXGrowToplevel(); remove sending of ConfigureNotify after resize or zoom (now handled by BoundsChanged handler); correct composite carbon window attribute handling, remove currently unusable attributes and add new attributes in [tk::unsupported::MacWindowStyle]; ensure validity of window class and attributes before use; apply changes to window class when handling carbon window attribute changes (if HIWindowChangeClass() API available); add debug build warning message when deprecated window style is used instead of window class; use transparent HIGrowBox for resizable windows; avoid unnecessary calls to window structure width API; use tcl time API in TkpGetMS(); add TkMacOSXEnterExitFullscreen() to enter/exit UIMode with dock and menubar hidden; restrict wmTracing output to debug builds; remove unneeded calls to TkMacOSXInvalClipRgns() and unnecessary setting of QD port; workaround GetWindowStructureWidths() Carbon bug (bogus results for never-mapped floating windows).
* macosx/tkMacOSXXStubs.c (TkMacOSXDisplayChanged): add maximal window bounds field to Screen record (in ext_data), computed as the union of available window positioning bounds of all graphics devices (displays).
* macosx/tkMacOSXBitmap.c: fix macRoman encoding leak. * macosx/tkMacOSXCursor.c:
* macosx/tkMacOSXDebug.c (TkMacOSXCarbonEventToAscii): use static * macosx/tkMacOSXDebug.h: buffer to simplify callers; const fixes.
* macosx/tkMacOSXBitmap.c: use more efficient QDSwapPort() instead of * macosx/tkMacOSXButton.c: GetPort()/SetPort()/GetGWorld()/SetGWorld(). * macosx/tkMacOSXDraw.c: * macosx/tkMacOSXFont.c: * macosx/tkMacOSXMenubutton.c: * macosx/tkMacOSXScale.c: * macosx/tkMacOSXScrlbr.c: * macosx/tkMacOSXXStubs.c:
* macosx/tkMacOSXColor.c: use kHIToolboxVersionNumber for runtime OS * macosx/tkMacOSXEntry.c: version check rather than Gestalt() etc. * macosx/tkMacOSXInt.h: * macosx/tkMacOSXWm.c:
* macosx/tkMacOSXDraw.c: remove obsolete and now incorrect * macosx/tkMacOSXInt.h: tkMenuCascadeRgn clipping code. * macosx/tkMacOSXMenu.c:
* macosx/tkMacOSXHLEvents.c: replace Tcl_GlobalEval() resp. Tcl_Eval() * macosx/tkMacOSXScrlbr.c: by Tcl_EvalEx(). * macosx/tkMacOSXInit.c:
* macosx/tkMacOSXInit.c (TkpInit): reorder initialization steps.
* macosx/tkMacOSXKeyEvent.c: remove pre-10.2 support.
* macosx/tkMacOSXMenus.c: remove now useless call to TkMacOSXHandleTearoffMenu(); use \x.. quoting for non-latin1 macroman literar chars to allow file to be edited as utf-8.
* macosx/tkMacOSXScale.c: replace TrackControl() by modern * macosx/tkMacOSXScrlbr.c: HandleControlClick() API (using new TkMacOSXModifierState()).
* macosx/tkMacOSXInt.h: move all constant #defines needed to * macosx/tkMacOSXColor.c: support building on older OS X releases * macosx/tkMacOSXEvent.h: to a central location in tkMacOSXInt.h. * macosx/tkMacOSXFont.c: * macosx/tkMacOSXMenu.c: * macosx/tkMacOSXMenubutton.c: * macosx/tkMacOSXMenus.c: * macosx/tkMacOSXMouseEvent.c: * macosx/tkMacOSXWm.c:
* macosx/tkMacOSXInt.h: add ChkErr() macro to factor out * macosx/tkMacOSXButton.c: Carbon OSStatus return value checking * macosx/tkMacOSXCarbonEvents.c: and TkMacOSXDbgMsg() macro to factour * macosx/tkMacOSXClipboard.c: out debug message output; use these * macosx/tkMacOSXColor.c: macros to replace #ifdef TK_MAC_DEBUG * macosx/tkMacOSXCursor.c: blocks & direct printing to stderr, * macosx/tkMacOSXDebug.c: and to do additional OSStatus return * macosx/tkMacOSXDialog.c: checking, and to standardize OSStatus * macosx/tkMacOSXDraw.c: usage. * macosx/tkMacOSXEntry.c: * macosx/tkMacOSXEvent.c: * macosx/tkMacOSXFont.c: * macosx/tkMacOSXHLEvents.c: * macosx/tkMacOSXInit.c: * macosx/tkMacOSXKeyEvent.c: * macosx/tkMacOSXMenu.c: * macosx/tkMacOSXMenubutton.c: * macosx/tkMacOSXMenus.c: * macosx/tkMacOSXMouseEvent.c: * macosx/tkMacOSXScrlbr.c: * macosx/tkMacOSXSubwindows.c: * macosx/tkMacOSXWindowEvent.c: * macosx/tkMacOSXWm.c: * macosx/tkMacOSXXStubs.c:
* macosx/tkMacOSXSend.c: remove duplicate/unused declarations. * macosx/tkMacOSXXStubs.c:
* macosx/tkMacOSXDebug.c: const fixes. * macosx/tkMacOSXInit.c: * macosx/tkMacOSXTest.c: * macosx/tkMacOSXWm.c: * macosx/tkMacOSXXStubs.c:
* macosx/Wish-Info.plist.in: add tcl document extensions/mime types and LSMinimumSystemVersion, LSRequiresCarbon & NSAppleScriptEnabled keys.
* macosx/tkMacOSXAETE.r: fix whitespace. * macosx/tkMacOSXConfig.c: * macosx/tkMacOSXCursors.r: * macosx/tkMacOSXKeyboard.c: * macosx/tkMacOSXSend.c: * macosx/tkMacOSXXCursors.r: * macosx/README:
* macosx/Makefile: fix/add copyright and license refs. * macosx/Tk-Info.plist.in: * macosx/Wish-Info.plist.in: * macosx/tkMacOSX.h:
file: [6f09426e] check-in: [c91e0ad0] user: das branch: core-8-4-branch, size: 31902
2007-04-23
21:24
* macosx/tkMacOSXCarbonEvents.c: add window event target carbon event * macosx/tkMacOSXEvent.c: handler for all kEventClassWindow and * macosx/tkMacOSXEvent.h: kEventClassMouse events; * macosx/tkMacOSXNotify.c: move all remaining events except for * macosx/tkMacOSXWindowEvent.c: kEventClassKeyboard from dispatcher to application event handler; pass event handler callRef downstream; fix debug event tracing; process all tcl event types in carbon event timer; delay carbon event timer first fire; add TkMacOSXTrackingLoop() to mark enter/exit of event tracking loop during which all tcl events but only carbon update events should be processed by the timer (replaces various calls to Tcl_SetServiceMode()); rename TkMacOSXReceiveAndProcessEvent() to TkMacOSXReceiveAndDispatchEvent(), move it from tkMacOSXEvent.c to tkMacOSXCarbonEvents.c and modify it to dequeue only update events during a tracking loop; add TkMacOSXRunTclEventLoop() to standardize the various ways in use to run the tcl event loop; add handling of kEventClassAppearance events (for ScrollBarVariantChanged event).
* macosx/tkMacOSXDialog.c: use new TkMacOSXTrackingLoop() around * macosx/tkMacOSXEvent.c: blocking API that puts up modal dialogs * macosx/tkMacOSXMenu.c: or when entering/exiting menu/control * macosx/tkMacOSXMouseEvent.c: tracking, window dragging and other * macosx/tkMacOSXScale.c: mouse tracking loops. * macosx/tkMacOSXScrlbr.c: * macosx/tkMacOSXWindowEvent.c: * macosx/tkMacOSXWm.c:
* macosx/tkMacOSXDialog.c: use new TkMacOSXRunTclEventLoop() * macosx/tkMacOSXScale.c: instead of Tcl_DoOneEvent(), * macosx/tkMacOSXScrlbr.c: Tcl_ServiceAll(), TclServiceIdle() * macosx/tkMacOSXWindowEvent.c: and Tcl_GlobalEval("update idletasks").
* macosx/tkMacOSXColor.c: make available as Tk system colors all * macosx/tkMacOSXPort.h: appearance manager brushes, text colors and backgrounds with new and legacy names, as well as the fully transparent color "systemTransparent"; add TkMacOSXSetColorIn{Port,Context}() to directly set an X pixel color value in the current QD port resp. the given CG context without requiring passage through rgb representation (lossy for most system colors); modernize/remove Classic-era code; replace crufty strcmp() elseifs by Tcl_GetIndexFromObjStruct().
* macosx/tkMacOSXButton.c: use new TkMacOSXSetColorInPort() * macosx/tkMacOSXDraw.c: instead of setting rgb color directly * macosx/tkMacOSXMenubutton.c: to allow for non-rgb system colors.
* macosx/tkMacOSXCursor.c: implement "none" cursor as on other platforms [Patch 1615427]; add all missing appearance manager cursors.
* macosx/tkMacOSXDefault.h: set SELECT_FG_COLORs to None to match aqua L&F; use standard system color names; use new 'menu' system font; correct default scrollbar width.
* macosx/tkMacOSXDraw.c: standardize initialization, use and * macosx/tkMacOSXInt.h: emptying of various static temp rgns * macosx/tkMacOSXRegion.c: onto two global RgnHandles; in debug * macosx/tkMacOSXSubwindows.c: builds, verify emptiness of these temp * macosx/tkMacOSXWindowEvent.c: rgns before use.
* macosx/tkMacOSXDraw.c: add TkMacOSX{Setup,Restore}DrawingContext() to * macosx/tkMacOSXInt.h: abstract common setup & teardown of drawing environment (for both CG and QD); save/restore QD theme drawing state; handle GC clip region; add TkpClipDrawableToRect() to allow clipped drawing into drawable regardless of GC used; use new system color "systemWindowHeaderBackground" to setup background in themed toplevels; correct implementation of TkMacOSXMakeStippleMap().
* macosx/tkMacOSXEntry.c: use new TkMacOSXSetupDrawingContext() and * macosx/tkMacOSXFont.c: TkMacOSXRestoreDrawingContext() instead of * macosx/ttkMacOSXTheme.c: various setup/teardown procs like TkMacOSX{SetUp,Release}CGContext(), TkMacOSXQuarz{Start,End}Draw(), TkMacOSXSetUpGraphicsPort() etc.
* macosx/tkMacOSXEmbed.c: add CG context and drawable clip rgn fields * macosx/tkMacOSXInt.h: to MacDrawable struct. * macosx/tkMacOSXSubwindows.c:
* macosx/tkMacOSXDialog.c: make -parent option of tk_getOpenFile et al. use the sheet version of NavServices dialogs; ensure native parent win exists before using StandardSheet API for tk_messageBox [Bug 1677611]; force sheets to behave like app-modal dialogs via WindowModality() API; use more modern ColorPicker API.
* macosx/tkAboutDlg.r: use themed movable modal dialog, fix (c) year.
* macosx/tkMacOSXEntry.c: take xOff/yOff of MacDrawable into account * macosx/ttkMacOSXTheme.c: when computing locations/bounds to ensure correct posititioning when not drawing into intermediate pixmap.
* macosx/tkMacOSXFont.c: use appearance manager API to map system font * macosx/tkMacOSXFont.h: names to TkFonts; add "menu" system font for menu item text drawing from MDEF; always draw with CG; remove QD dependent stippling algorithm; move most header declarations into the source file (as they were not used anywhere else).
* macosx/tkMacOSXMenu.c: large-scale rewrite of custom * macosx/tkMacOSXMenu.r (removed): MDEF and related code that * macosx/Wish.xcode/project.pbxproj: restores many longtime-MIA * macosx/Wish.xcodeproj/project.pbxproj: features to working order * unix/Makefile.in: (e.g. images, custom colors & fonts in menus etc); implement compound menu items; use Appearance Mgr and ThemeText APIs to mimic native MDEF as closely as possible when default "menu" system font is used; remove now obsolete SICN drawing code and resources.
* macosx/tkMacOSXCarbonEvents.c: handle additional menu carbon events * macosx/tkMacOSXEvent.c: in order to support <<MenuSelect>> in * macosx/tkMacOSXMenu.c: the menubar and in menus that are not * macosx/tkMacOSXMenus.c: using the custom MDEF [Bug 1620826]; fix early and missing clearing of current Tk active menu entry; fix extraneous sending of <<MenuSelect>> during active menu entry clearing.
* macosx/tkMacOSXMouseEvent.c: add support for async window dragging by the window server; set the corresponding window attribute by default.
* macosx/tkMacOSXMouseEvent.c: rationalized handling order of non-mousedown events; add TkMacOSXModifierState() to retrieve the current key modifiers in carbon format.
* macosx/tkMacOSXScrlbr.c: use appearance manager API to retrieve scrollbar component metrics; add awareness of multiple possibilites for scrollbar arrow position in aqua and handle user changes to arrow position pref; handle difference in metrics of small & large scrollbar variants; handle aqua "jump to here" scrollbar behaviour; correct computation of scroll view size and position; enforce min scrollbar height to avoid scrollbar component overlap; erase scrollbar area outside of standard width; remove broken auto-adjust code; account for window class when leaving space for grow box; remove code to manually draw grow box; use modern API for thumb scroll proc; replace HiliteControl() by modern API; replace control mgr constants with appearance mgr equivalents.
* macosx/tkMacOSXSubwindows.c: use SetWindowBounds() API instead of SizeWindow(); invalidate clip regions after X{Map,Unmap}Window as fix for [Bug 940117] made them dependent on mapping state; remove unneeded calls to TkMacOSXInvalClipRgns() and unnecessary setting of QD port; use native-endian pixmap on intel; remove obsolete pixmap pix locking.
* macosx/tkMacOSXWindowEvent.c: handle only the first of a batch of kEventAppAvailableWindowBoundsChanged events sent per transaction; handle kEventWindowBoundsChanged event to support live window resizing and centralized sending of location/size changed ConfigureNotify events; ensure HIGrowBox is redrawn after bounds change; constrain window after dragging to ensure titlebar is not inacessible offscreen or under dock/menubar; handle kEventWindowGetRegion and kEventWindowDrawContent for transparent windows to mark resp. paint content region as transparent; handle kEventWindowConstrain for fullscreen windows to ensure bounds match new screen size; enter/exit fullscreen UIMode upon activation/deactivation of fullscreen window.
* macosx/tkMacOSXWm.c: use live-resize and async-drag carbon window * macosx/tkMacOSXWm.h: attributes for toplevels by default; implement new [wm attributes] -topmost, -transparent and -fullscreen; refactor WmAttributesCmd() parallelling the tkUnixWm.c implementation, use thus factored proc to set proxy icon from [wm iconbitmap]; dynamically determine default values for toplevel min and max sizes (similar to tkWinWm.c impl): min sizes depend on window class & attributes to ensure visibility of all titlebar widgets and grow box, max sizes depend on maximal window bounds for all active displays; factor out code that puts into effect changes to master or override_redirect; use RepositionWindow() API to determine staggered initial window bounds; correct resize limit calculations, handle gridding and use modern resize API in TkMacOSXGrowToplevel(); remove sending of ConfigureNotify after resize or zoom (now handled by BoundsChanged handler); correct composite carbon window attribute handling, remove currently unusable attributes and add new attributes in [tk::unsupported::MacWindowStyle]; ensure validity of window class and attributes before use; apply changes to window class when handling carbon window attribute changes (if HIWindowChangeClass() API available); add debug build warning message when deprecated window style is used instead of window class; use transparent HIGrowBox for resizable windows; avoid unnecessary calls to window structure width API; use tcl time API in TkpGetMS(); add TkMacOSXEnterExitFullscreen() to enter/exit UIMode with dock and menubar hidden; restrict wmTracing output to debug builds; remove unneeded calls to TkMacOSXInvalClipRgns() and unnecessary setting of QD port; workaround GetWindowStructureWidths() Carbon bug (bogus results for never-mapped floating windows).
* macosx/tkMacOSXXStubs.c (TkMacOSXDisplayChanged): add maximal window bounds field to Screen record (in ext_data), computed as the union of available window positioning bounds of all graphics devices (displays).
* macosx/tkMacOSXBitmap.c: fix macRoman encoding leak. * macosx/tkMacOSXCursor.c:
* macosx/tkMacOSXDebug.c (TkMacOSXCarbonEventToAscii): use static * macosx/tkMacOSXDebug.h: buffer to simplify callers; const fixes.
* macosx/tkMacOSXBitmap.c: use more efficient QDSwapPort() instead of * macosx/tkMacOSXButton.c: GetPort()/SetPort()/GetGWorld()/SetGWorld(). * macosx/tkMacOSXDraw.c: * macosx/tkMacOSXMenubutton.c: * macosx/tkMacOSXScale.c: * macosx/tkMacOSXScrlbr.c: * macosx/tkMacOSXXStubs.c:
* macosx/tkMacOSXColor.c: use kHIToolboxVersionNumber for runtime OS * macosx/tkMacOSXEntry.c: version check rather than Gestalt() etc. * macosx/tkMacOSXInt.h: * macosx/tkMacOSXWm.c:
* macosx/tkMacOSXDraw.c: remove obsolete and now incorrect * macosx/tkMacOSXInt.h: tkMenuCascadeRgn clipping code. * macosx/tkMacOSXMenu.c:
* macosx/tkMacOSXHLEvents.c: replace Tcl_GlobalEval() resp. Tcl_Eval() * macosx/tkMacOSXScrlbr.c: by Tcl_EvalEx(). * macosx/tkMacOSXInit.c:
* macosx/tkMacOSXInit.c (TkpInit): reorder initialization steps.
* macosx/tkMacOSXKeyEvent.c: remove pre-10.2 support.
* macosx/tkMacOSXMenus.c: remove now useless call to TkMacOSXHandleTearoffMenu(); use \x.. quoting for non-latin1 macroman literar chars to allow file to be edited as utf-8.
* macosx/tkMacOSXScale.c: replace TrackControl() by modern * macosx/tkMacOSXScrlbr.c: HandleControlClick() API (using new TkMacOSXModifierState()).
* macosx/tkMacOSXInt.h: move all constant #defines needed to * macosx/tkMacOSXColor.c: support building on older OS X releases * macosx/tkMacOSXEvent.h: to a central location in tkMacOSXInt.h. * macosx/tkMacOSXFont.c: * macosx/tkMacOSXMenu.c: * macosx/tkMacOSXMenubutton.c: * macosx/tkMacOSXMenus.c: * macosx/tkMacOSXMouseEvent.c: * macosx/tkMacOSXWm.c: * macosx/ttkMacOSXTheme.c:
* macosx/tkMacOSXInt.h: add ChkErr() macro to factor out * macosx/tkMacOSXButton.c: Carbon OSStatus return value checking * macosx/tkMacOSXCarbonEvents.c: and TkMacOSXDbgMsg() macro to factour * macosx/tkMacOSXClipboard.c: out debug message output; use these * macosx/tkMacOSXColor.c: macros to replace #ifdef TK_MAC_DEBUG * macosx/tkMacOSXCursor.c: blocks & direct printing to stderr, * macosx/tkMacOSXDebug.c: and to do additional OSStatus return * macosx/tkMacOSXDialog.c: checking, and to standardize OSStatus * macosx/tkMacOSXDraw.c: usage. * macosx/tkMacOSXEntry.c: * macosx/tkMacOSXEvent.c: * macosx/tkMacOSXFont.c: * macosx/tkMacOSXHLEvents.c: * macosx/tkMacOSXInit.c: * macosx/tkMacOSXKeyEvent.c: * macosx/tkMacOSXMenu.c: * macosx/tkMacOSXMenubutton.c: * macosx/tkMacOSXMenus.c: * macosx/tkMacOSXMouseEvent.c: * macosx/tkMacOSXScrlbr.c: * macosx/tkMacOSXSubwindows.c: * macosx/tkMacOSXWindowEvent.c: * macosx/tkMacOSXWm.c: * macosx/tkMacOSXXStubs.c:
* macosx/tkMacOSXSend.c: remove duplicate/unused declarations * macosx/tkMacOSXXStubs.c:
* macosx/tkMacOSXDebug.c: const fixes. * macosx/tkMacOSXInit.c: * macosx/tkMacOSXTest.c: * macosx/tkMacOSXWm.c: * macosx/tkMacOSXXStubs.c:
* macosx/Wish-Info.plist.in: add tcl document extensions/mime types and LSMinimumSystemVersion, LSRequiresCarbon & NSAppleScriptEnabled keys.
* macosx/Wish-Common.xcconfig: add Wish's Info.plist as __info_plist section to tktest; enable more warnings.
* macosx/Wish.xcodeproj/project.pbxproj: add 'DebugMemCompile' build configuration that calls configure with --enable-symbols=all; disable configure check for __attribute__((__visibility__("hidden"))) in Debug configuration to restore availability of ZeroLink.
* macosx/Wish-Common.xcconfig: fix whitespace. * macosx/Wish-Debug.xcconfig: * macosx/Wish-Release.xcconfig: * macosx/tkMacOSXAETE.r: * macosx/tkMacOSXConfig.c: * macosx/tkMacOSXCursors.r: * macosx/tkMacOSXKeyboard.c: * macosx/tkMacOSXSend.c: * macosx/ttkMacOSXTheme.c: * macosx/tkMacOSXXCursors.r: * macosx/README:
* macosx/GNUmakefile: fix/add copyright and license refs. * macosx/Tk-Info.plist.in: * macosx/Wish-Info.plist.in: * macosx/Wish.xcode/project.pbxproj: * macosx/Wish.xcodeproj/project.pbxproj: * macosx/tkMacOSX.h:
file: [a86708ec] check-in: [d9c03a54] user: das branch: trunk, size: 31898
2007-04-21
19:06
* macosx/tkMacOSXBitmap.c, macosx/tkMacOSXButton.c: * macosx/tkMacOSXCarbonEvents.c, macosx/tkMacOSXClipboard.c: * macosx/tkMacOSXCursor.c, macosx/tkMacOSXDialog.c: * macosx/tkMacOSXDraw.c, macosx/tkMacOSXEvent.c: * macosx/tkMacOSXFont.c, macosx/tkMacOSXInit.c, macosx/tkMacOSXInt.h: * macosx/tkMacOSXKeyEvent.c, macosx/tkMacOSXMenu.c: * macosx/tkMacOSXMenubutton.c, macosx/tkMacOSXMouseEvent.c: * macosx/tkMacOSXScale.c, macosx/tkMacOSXWindowEvent.c: * macosx/tkMacOSXWm.c: Revert of commits from 2007-04-13 which broke the OS X build.
file: [a67b7e4d] check-in: [888addf4] user: hobbs branch: trunk, size: 38854
2007-04-13
14:51
Reduce the #ifdef count a lot by adding debug-print macros file: [e09076f5] check-in: [825336d2] user: dkf branch: trunk, size: 33738
2006-09-11
14:41
* macosx/tkMacOSXWm.c (TkMacOSXMakeRealWindowExist): revert part of 2006-05-16 change that had set overrideredirect windows to not become activated by the window manager, as this prevented interaction with native widgets in such windows [Bug 1472624]; apply changes to carbon window attributes even if native window has already been created.
* macosx/tkMacOSXKeyEvent.c (TkMacOSXProcessKeyboardEvent): fix app * macosx/tkMacOSXMenu.c (DrawMenuBarWhenIdle): menu item key shortcuts * macosx/tkMacOSXInt.h: when custom ".apple" menu is installed.
* library/demos/widget: on TkAqua, don't install file menu with single quit menu item, as the application menu already has a quit item.
* macosx/tkMacOSXColor.c: fix building on Mac OS X 10.2.
file: [4af72794] check-in: [bc2ad66b] user: das branch: core-8-4-branch, size: 38856
14:41
* macosx/tkMacOSXWm.c (TkMacOSXMakeRealWindowExist): revert part of 2006-05-16 change that had set overrideredirect windows to not become activated by the window manager, as this prevented interaction with native widgets in such windows [Bug 1472624]; apply changes to carbon window attributes even if native window has already been created.
* macosx/tkMacOSXKeyEvent.c (TkMacOSXProcessKeyboardEvent): fix app * macosx/tkMacOSXMenu.c (DrawMenuBarWhenIdle): menu item key shortcuts * macosx/tkMacOSXInt.h: when custom ".apple" menu is installed.
* library/demos/widget: on TkAqua, don't install file menu with single quit menu item, as the application menu already has a quit item.
* macosx/tkMacOSXColor.c: fix building on Mac OS X 10.2.
file: [a9f88003] check-in: [19805444] user: das branch: trunk, size: 38852
2006-07-25
12:09
* macosx/tkMacOSXKeyEvent.c (TkMacOSXProcessKeyboardEvent): handle key shortcut for kHICommandQuit in the same way as other application menu item key shortcuts. [Bug 1516950]
file: [5f2187e6] check-in: [da022048] user: das branch: core-8-4-branch, size: 38849
12:08
* macosx/tkMacOSXKeyEvent.c (TkMacOSXProcessKeyboardEvent): handle key shortcut for kHICommandQuit in the same way as other application menu item key shortcuts. [Bug 1516950]
file: [1185ac52] check-in: [eacc8bce] user: das branch: trunk, size: 38845
2006-07-20
06:27
* macosx/tkMacOSXWm.c (WmAttributesCmd, WmIconbitmapCmd): add support for weakly importing symbols not available on OSX 10.2 or 10.3, enables binaires built on later OSX versions to run on earlier ones. * macosx/README: document how to enable weak-linking; cleanup. * unix/configure.in: enforce requirement of OSX 10.2 for TkAqua; move * unix/tcl.m4: Darwin specific checks & defines that are only relevant to the tcl build out of tcl.m4; restrict framework option to Darwin; cleanup quoting. * unix/configure: autoconf-2.13
* macosx/tkMacOSXKeyEvent.c: ifdef out diagnostic messages to stderr.
* macosx/tkMacOSXEvent.h: standardize MAC_OS_X_VERSION_MAX_ALLOWED * macosx/tkMacOSXMenu.c: checks per QA1316, ensure define can be * macosx/tkMacOSXMenubutton.c: overriden on command line (from default * macosx/tkMacOSXMenus.c: of current OS version). * macosx/tkMacOSXMouseEvent.c: * macosx/tkMacOSXWm.c:
file: [2bd26542] check-in: [9b231103] user: das branch: core-8-4-branch, size: 38823
06:25
* macosx/tkMacOSXWm.c (WmAttributesCmd, WmIconbitmapCmd): add support * unix/tkUnixSend.c (Tk_GetUserInactiveTime): for weakly importing symbols not available on OSX 10.2 or 10.3, enables binaires built on later OSX versions to run on earlier ones. * macosx/Wish.xcodeproj/project.pbxproj: enable weak-linking; turn on extra warnings. * macosx/README: document how to enable weak-linking; cleanup. * unix/configure.in: add check on Darwin-X11 for ld support of -weak-l * unix/tcl.m4: flag and weak-link libXss if possible as it is not available before OSX 10.4; enforce requirement of OSX 10.2 for TkAqua; move Darwin specific checks & defines that are only relevant to the tcl build out of tcl.m4; restrict framework option to Darwin; cleanup quoting and help messages. * unix/configure: autoconf-2.59 * unix/tkConfig.h.in: autoheader-2.59
* macosx/GNUmakefile: enable xft for TkX11 build. * macosx/tkMacOSXFont.c (TkMacOSXQuarzStartDraw, TkMacOSXQuarzEndDraw): verify validity of context returned from QDBeginCGContext() before use. * macosx/tkMacOSXKeyEvent.c: ifdef out diagnostic messages to stderr.
* macosx/tkMacOSXEvent.h: standardize MAC_OS_X_VERSION_MAX_ALLOWED * macosx/tkMacOSXMenu.c: checks per QA1316, ensure define can be * macosx/tkMacOSXMenubutton.c: overriden on command line (from default * macosx/tkMacOSXMenus.c: of current OS version). * macosx/tkMacOSXMouseEvent.c: * macosx/tkMacOSXWm.c:
* macosx/tkMacOSXFont.c (TkpMeasureCharsInContext): fix signed-with-unsigned comparison and other warnings from gcc4 -Wextra.
file: [550ca53b] check-in: [361478a0] user: das branch: trunk, size: 38819
2006-05-12
18:17
* generic/tkCanvWind.c (DisplayWinItem, WinItemRequestProc): ensure canvas window items are unmapped when canvas is unmapped. [Bug 940117]
* macosx/tkMacOSXSubwindows.c (TkMacOSXUpdateClipRgn): empty clip region of unmapped windows to prevent any drawing into them or into their children from becoming visible. [Bug 940117]
* macosx/tkMacOSXInt.h: revert Jim's attempt of 2005-03-14 to * macosx/tkMacOSXSubwindows.c: fix Bug 940117 as it disables Map/Unmap event propagation to children. [Bug 1480105]
* macosx/tkMacOSXDraw.c (TkPutImage): handle tkPictureIsOpen flag, fixes incorrect positioning of images with complex alpha on native buttons; actual alpha blending is still broken in this situation. [Bug 1155596]
* macosx/tkMacOSXEvent.c (TkMacOSXProcessCommandEvent): * macosx/tkMacOSXMenus.c (TkMacOSXInitMenus): workaround carbon bug with key shortcut for 'Preferences' app menu item. [Bug 1481503]
* macosx/tkMacOSXKeyEvent.c (TkMacOSXProcessKeyboardEvent): only check for HICommand menu item shortcuts in the application menu.
* macosx/tkMacOSXInt.h: initialize keyboard layout setup in * macosx/tkMacOSXInit.c: TkpInit() rather than during handling of * macosx/tkMacOSXKeyEvent.c: first key down event.
* macosx/tkMacOSXDraw.c: add optional debug code to flash clip * macosx/tkMacOSXSubwindows.c: regions during update or draw.
file: [e21de042] check-in: [a75d23da] user: das branch: core-8-4-branch, size: 38782
18:17
* generic/tkCanvWind.c (DisplayWinItem, WinItemRequestProc): ensure canvas window items are unmapped when canvas is unmapped. [Bug 940117]
* macosx/tkMacOSXSubwindows.c (TkMacOSXUpdateClipRgn): empty clip region of unmapped windows to prevent any drawing into them or into their children from becoming visible. [Bug 940117]
* macosx/tkMacOSXInt.h: revert Jim's attempt of 2005-03-14 to * macosx/tkMacOSXSubwindows.c: fix Bug 940117 as it disables Map/Unmap event propagation to children. [Bug 1480105]
* macosx/tkMacOSXDraw.c (TkPutImage): handle tkPictureIsOpen flag, fixes incorrect positioning of images with complex alpha on native buttons; actual alpha blending is still broken in this situation. [Bug 1155596]
* macosx/tkMacOSXEvent.c (TkMacOSXProcessCommandEvent): * macosx/tkMacOSXMenus.c (TkMacOSXInitMenus): workaround carbon bug with key shortcut for 'Preferences' app menu item. [Bug 1481503]
* macosx/tkMacOSXKeyEvent.c (TkMacOSXProcessKeyboardEvent): only check for HICommand menu item shortcuts in the application menu.
* macosx/tkMacOSXInt.h: initialize keyboard layout setup in * macosx/tkMacOSXInit.c: TkpInit() rather than during handling of * macosx/tkMacOSXKeyEvent.c: first key down event.
* macosx/tkMacOSXDraw.c: add optional debug code to flash clip * macosx/tkMacOSXSubwindows.c: regions during update or draw.
file: [9115c817] check-in: [bb9d0b13] user: das branch: trunk, size: 38779
2006-04-28
06:02
* macosx/tkMacOSXWm.c (TkWmMapWindow, InitialWindowBounds): fix use of potentially stale window position in initial configure event on first map of a window. [Bug 1476443] (TkMacOSXWindowOffset): use modern GetWindowStructureWidths API.
* macosx/tkMacOSXInt.h: * macosx/tkMacOSXMouseEvent.c (TkGenerateButtonEventForXPointer): new internal function to generate button events for current pointer directly, without requiring prior call to XQueryPointer().
* macosx/tkMacOSXMouseEvent.c (XQueryPointer): implement return of window-local pointer position.
* macosx/tkMacOSXInt.h: use improvements above to avoid calls to * macosx/tkMacOSXKeyEvent.c: GlobalToLocal() when the current port might * macosx/tkMacOSXMenu.c: not be set correctly. May fix [Bug 1243318] * macosx/tkMacOSXMenus.c: * macosx/tkMacOSXScale.c: * macosx/tkMacOSXScrlbr.c:
* tkAboutDlg.r: update copyright.
* macosx/tkMacOSXCarbonEvents.c: sync with HEAD * macosx/tkMacOSXDebug.c: * macosx/tkMacOSXDebug.h: * macosx/tkMacOSXDraw.c: * macosx/tkMacOSXEvent.c: * macosx/tkMacOSXEvent.h: * macosx/tkMacOSXFont.h: * macosx/tkMacOSXInit.c: * macosx/tkMacOSXInt.h: * macosx/tkMacOSXKeyEvent.c: * macosx/tkMacOSXMenu.c: * macosx/tkMacOSXMenubutton.c: * macosx/tkMacOSXMouseEvent.c: * macosx/tkMacOSXSend.c: * macosx/tkMacOSXTest.c: * macosx/tkMacOSXWindowEvent.c: * macosx/tkMacOSXWm.c:
file: [09c25849] check-in: [7f39d25f] user: das branch: core-8-4-branch, size: 38268
06:02
* macosx/tkMacOSXWm.c (TkWmMapWindow, InitialWindowBounds): fix use of potentially stale window position in initial configure event on first map of a window. [Bug 1476443] (TkMacOSXWindowOffset): use modern GetWindowStructureWidths API.
* macosx/tkMacOSXInt.h: * macosx/tkMacOSXMouseEvent.c (TkGenerateButtonEventForXPointer): new internal function to generate button events for current pointer directly, without requiring prior call to XQueryPointer().
* macosx/tkMacOSXMouseEvent.c (XQueryPointer): implement return of window-local pointer position.
* macosx/tkMacOSXInt.h: use improvements above to avoid calls to * macosx/tkMacOSXKeyEvent.c: GlobalToLocal() when the current port might * macosx/tkMacOSXMenu.c: not be set correctly. May fix [Bug 1243318] * macosx/tkMacOSXMenus.c: * macosx/tkMacOSXScale.c: * macosx/tkMacOSXScrlbr.c:
* tkAboutDlg.r: update copyright.
* macosx/tkMacOSXDebug.h: sync #includes with core-8-4-branch. * macosx/tkMacOSXEvent.h: * macosx/tkMacOSXFont.h:
file: [e79ced5c] check-in: [1350d6f8] user: das branch: trunk, size: 38265
2006-03-28
02:44
* macosx/tkMacOSX.h: Cleaned up & rationalized order of * macosx/tkMacOSXBitmap.c: #includes of tk and carbon headers; * macosx/tkMacOSXButton.c: sync whitespace, comments & minor * macosx/tkMacOSXCarbonEvents.c: changes with HEAD. * macosx/tkMacOSXClipboard.c: * macosx/tkMacOSXColor.c: * macosx/tkMacOSXConfig.c: * macosx/tkMacOSXCursor.c: * macosx/tkMacOSXDialog.c: * macosx/tkMacOSXDraw.c: * macosx/tkMacOSXEmbed.c: * macosx/tkMacOSXEntry.c: * macosx/tkMacOSXEvent.c: * macosx/tkMacOSXEvent.h: * macosx/tkMacOSXFont.c: * macosx/tkMacOSXFont.h (new file): * macosx/tkMacOSXHLEvents.c: * macosx/tkMacOSXInit.c: * macosx/tkMacOSXInt.h: * macosx/tkMacOSXKeyEvent.c: * macosx/tkMacOSXKeyboard.c: * macosx/tkMacOSXMenu.c: * macosx/tkMacOSXMenubutton.c: * macosx/tkMacOSXMenus.c: * macosx/tkMacOSXMouseEvent.c: * macosx/tkMacOSXNotify.c: * macosx/tkMacOSXRegion.c: * macosx/tkMacOSXScale.c: * macosx/tkMacOSXScrlbr.c: * macosx/tkMacOSXSend.c: * macosx/tkMacOSXSubwindows.c: * macosx/tkMacOSXTest.c: * macosx/tkMacOSXWindowEvent.c: * macosx/tkMacOSXWm.c: * macosx/tkMacOSXWm.h: * macosx/tkMacOSXXStubs.c:
file: [8d89d9e8] check-in: [761084f8] user: das branch: core-8-4-branch, size: 38264
2006-03-24
14:58
* generic/tkTextDisp.c: moved #ifdef MAC_OSX_TK code added by * macosx/tkMacOSXColor.c: Patch #638966 into platform specific * macosx/tkMacOSXInt.h: files.
* macosx/tkMacOSX.h: cleaned up & rationalized order of * macosx/tkMacOSXBitmap.c: #includes of tk and carbon headers. * macosx/tkMacOSXButton.c: * macosx/tkMacOSXCarbonEvents.c: * macosx/tkMacOSXClipboard.c: * macosx/tkMacOSXColor.c: * macosx/tkMacOSXConfig.c: * macosx/tkMacOSXCursor.c: * macosx/tkMacOSXDialog.c: * macosx/tkMacOSXDraw.c: * macosx/tkMacOSXEmbed.c: * macosx/tkMacOSXEntry.c: * macosx/tkMacOSXEvent.c: * macosx/tkMacOSXEvent.h: * macosx/tkMacOSXFont.h: * macosx/tkMacOSXHLEvents.c: * macosx/tkMacOSXInit.c: * macosx/tkMacOSXInt.h: * macosx/tkMacOSXKeyEvent.c: * macosx/tkMacOSXKeyboard.c: * macosx/tkMacOSXMenu.c: * macosx/tkMacOSXMenubutton.c: * macosx/tkMacOSXMenus.c: * macosx/tkMacOSXMouseEvent.c: * macosx/tkMacOSXRegion.c: * macosx/tkMacOSXScale.c: * macosx/tkMacOSXScrlbr.c: * macosx/tkMacOSXSend.c: * macosx/tkMacOSXSubwindows.c: * macosx/tkMacOSXWindowEvent.c: * macosx/tkMacOSXWm.c: * macosx/tkMacOSXWm.h: * macosx/tkMacOSXXStubs.c:
file: [0158e7a8] check-in: [bd201bc0] user: das branch: trunk, size: 38287
2005-11-27
02:36
* unix/tcl.m4 (Darwin): add 64bit support, check for Tiger copyfile(), add CFLAGS to SHLIB_LD to support passing -isysroot in env(CFLAGS) to configure (flag can't be present twice, so can't be in both CFLAGS and LDFLAGS during configure), don't use -prebind when deploying on 10.4, define TCL_IO_TRACK_OS_FOR_DRIVER_WITH_BAD_BLOCKING (rdar://3171542). (SC_ENABLE_LANGINFO, SC_TIME_HANDLER): add/fix caching, fix obsolete autoconf macros. Sync with tk/unix/tcl.m4, sync whitespace with HEAD.
* unix/configure.in: fix obsolete autoconf macros, sync gratuitous formatting/ordering differences with tcl/unix/configure.in.
* unix/Makefile.in: add CFLAGS to wish/tktest link to make executable linking the same as during configure (needed to avoid loosing any linker relevant flags in CFLAGS, in particular flags that can't be in LDFLAGS). Avoid concurrent linking of wish and compiling of tkTestInit.o during parallel make, fix dependencies and flags for building tkMacOSXInit.o (checkstubs, checkexports): dependency and Darwin fixes
* macosx/tkMacOSXEvent.c (TkMacOSXProcessEvent): * macosx/tkMacOSXEvent.h: * macosx/tkMacOSXMouseEvent.c (TkMacOSXProcessMouseEvent): * macosx/tkMacOSXCarbonEvents.c: install standard application event handler, add & call functions to start and stop carbon even timer that runs the tcl event loop periodically during a nested carbon event loop in the toolbox (e.g. during menutracking) to ensure tcl timers etc continue to fire, register app event handler for menu tracking and HI command carbon events, move menu event handling to new handlers for those carbon events, no longer register for/handle appleevent carbon event (now dealt with by standard application event handler), event debugging code dynamically acquires carbon event debugging functions to allow use on Tiger where they are no longer exported from HIToolbox.
* macosx/tkMacOSXFont.c (TkMacOSXUseAntialiasedText): * macosx/tkMacOSXKeyEvent.c (GetKeyboardLayout): * macosx/tkMacOSXCarbonEvents.c (TkMacOSXInitCarbonEvents): * macosx/tkMacOSXInit.c: * macosx/tkMacOSXInt.h: abstract common code to dynamically acquire address of a named symbol (from a loaded dynamic library) into new function TkMacOSXGetNamedSymbol() and macro TkMacOSXInitNamedSymbol.
* macosx/tkMacOSXMenu.c (TkpNewMenu): * macosx/tkMacOSXMenubutton.c (MenuButtonInitControl): * macosx/tkMacOSXMenus.c (TkMacOSXHandleMenuSelect): switch to modern utf8 aware menu manager API, remove obsolete code, add error handling.
* macosx/tkMacOSXMouseEvent.c: define OSX 10.3 or later only constants if necessary to allow compilation on OSX 10.2
* macosx/tkMacOSXWm.c (UpdateSizeHints): remove code that is never executed.
* generic/tk.h: add/correct location of version numbers in macosx files.
* generic/tkInt.h: clarify fat compile comment.
* macosx/Wish.pbproj/default.pbxuser (new file): * macosx/Wish.pbproj/jingham.pbxuser: * macosx/Wish.pbproj/project.pbxproj: sync with HEAD.
* macosx/buildTkConfig.tcl (removed): remove obsolete build files.
* macosx/README: clarification/cleanup, sync with HEAD, document universal (fat) builds via CFLAGS (i.e. ppc and i386 at the same time).
* macosx/Makefile: add support for reusing configure cache, build target fixes.
* generic/tkMenu.c: * macosx/tkMacOSXButton.c: * macosx/tkMacOSXDebug.c: * macosx/tkMacOSXDebug.h: * macosx/tkMacOSXDialog.c: * macosx/tkMacOSXDraw.c: * macosx/tkMacOSXEntry.c: * macosx/tkMacOSXMenu.c: * macosx/tkMacOSXMouseEvent.c: * macosx/tkMacOSXXStubs.c: * macosx/tkMacOSXSubwindows.c: * xlib/xgc.c: declare functions and globals used only in own file as static, #ifdef out a few Xlib and aqua functions that are never called (sync with HEAD).
* macosx/tkMacOSXPort.h: * generic/tkInt.decls: correct signature of TkMacOSXHandleMenuSelect, add XSync to aqua Xlib stubs.
* generic/tkTest.c: #ifdef unix only declarations. (TestmetricsCmd): unify win and mac implementation.
* generic/tkTextDisp.c: * generic/tkTextBTree.c: * macosx/tkMacOSXInit.c: * macosx/tkMacOSXKeyEvent.c: * macosx/tkMacOSXWindowEvent.c: * macosx/tkMacOSXXStubs.c: fix gcc 4 warnings.
* macosx/tkMacOSXNotify.c: * macosx/tkMacOSXTest.c: sync with HEAD.
* generic/tkIntPlatDecls.h: * generic/tkIntXlibDecls.h: * generic/tkStubInit.c: * unix/configure: regen.
file: [232ba082] check-in: [e1543974] user: das branch: core-8-4-branch, size: 38284
02:36
* unix/tcl.m4 (Darwin): add 64bit support, check for Tiger copyfile(), add CFLAGS to SHLIB_LD to support passing -isysroot in env(CFLAGS) to configure (flag can't be present twice, so can't be in both CFLAGS and LDFLAGS during configure), don't use -prebind when deploying on 10.4, define TCL_IO_TRACK_OS_FOR_DRIVER_WITH_BAD_BLOCKING (rdar://3171542). (SC_ENABLE_LANGINFO, SC_TIME_HANDLER): add/fix caching, fix obsolete autoconf macros. Sync with tcl/unix/tcl.m4.
* unix/configure.in: fix obsolete autoconf macros, sync gratuitous formatting/ordering differences with tcl/unix/configure.in.
* unix/Makefile.in: add CFLAGS to wish/tktest link to make executable linking the same as during configure (needed to avoid loosing any linker relevant flags in CFLAGS, in particular flags that can't be in LDFLAGS). Avoid concurrent linking of wish and compiling of tkTestInit.o during parallel make, fix dependencies and flags for building tkMacOSXInit.o (checkstubs, checkexports): dependency and Darwin fixes (dist): add new macosx files.
* macosx/tkMacOSXEvent.c (TkMacOSXProcessEvent): * macosx/tkMacOSXEvent.h: * macosx/tkMacOSXMouseEvent.c (TkMacOSXProcessMouseEvent): * macosx/tkMacOSXCarbonEvents.c: install standard application event handler, add & call functions to start and stop carbon even timer that runs the tcl event loop periodically during a nested carbon event loop in the toolbox (e.g. during menutracking) to ensure tcl timers etc continue to fire, register app event handler for menu tracking and HI command carbon events, move menu event handling to new handlers for those carbon events, no longer register for/handle appleevent carbon event (now dealt with by standard application event handler), event debugging code dynamically acquires carbon event debugging functions to allow use on Tiger where they are no longer exported from HIToolbox.
* macosx/tkMacOSXFont.c (TkMacOSXUseAntialiasedText): * macosx/tkMacOSXKeyEvent.c (GetKeyboardLayout): * macosx/tkMacOSXCarbonEvents.c (TkMacOSXInitCarbonEvents): * macosx/tkMacOSXInit.c: * macosx/tkMacOSXInt.h: abstract common code to dynamically acquire address of a named symbol (from a loaded dynamic library) into new function TkMacOSXGetNamedSymbol() and macro TkMacOSXInitNamedSymbol.
* macosx/tkMacOSXMenu.c (TkpNewMenu): * macosx/tkMacOSXMenubutton.c (MenuButtonInitControl): * macosx/tkMacOSXMenus.c (TkMacOSXHandleMenuSelect): switch to modern utf8 aware menu manager API, remove obsolete code, add error handling.
* macosx/tkMacOSXMouseEvent.c: define OSX 10.3 or later only constants if necessary to allow compilation on OSX 10.2
* macosx/tkMacOSXWm.c (UpdateSizeHints): remove code that is never executed.
* xlib/xgc.c (XCreateGC): sync with core-8-4-branch change.
* generic/tk.h: add/correct location of version numbers in macosx files.
* generic/tkInt.h: clarify fat compile comment.
* macosx/Wish.pbproj/default.pbxuser (new file): * macosx/Wish.pbproj/jingham.pbxuser: * macosx/Wish.pbproj/project.pbxproj: * macosx/Wish.xcode/default.pbxuser: * macosx/Wish.xcode/project.pbxproj: * macosx/Wish.xcodeproj/default.pbxuser (new file): * macosx/Wish.xcodeproj/project.pbxproj (new file): new/updated projects for Xcode 2.2 on 10.4, Xcode 1.5 on 10.3 & ProjectBuilder on 10.2, with native tktest targets and support for universal (fat) compiles.
* macosx/Tk-Info.plist (removed): * macosx/Wish-Info.plist (removed): * macosx/buildTkConfig.tcl (removed): remove obsolete build files.
* macosx/README: clarification/cleanup, document new Xcode projects and universal (fat) builds via CFLAGS (i.e. ppc and i386 at the same time).
* unix/Makefile.in: * unix/aclocal.m4: * unix/configure.in: * macosx/configure.ac (new file): add support for inclusion of unix/configure.in by macosx/configure.ac, allows generation of a config headers enabled configure script in macosx (required by Xcode projects).
* macosx/GNUmakefile: rename from Makefile to avoid overwriting by configure run in tk/macosx, add support for reusing configure cache, build target fixes.
* generic/tk3d.h: * generic/tkButton.h: * generic/tkCanvas.c: * generic/tkCanvas.h: * generic/tkColor.h: * generic/tkEntry.h: * generic/tkFileFilter.h: * generic/tkFont.c: * generic/tkFont.h: * generic/tkImage.c: * generic/tkImgPhoto.c: * generic/tkInt.h: * generic/tkMenu.c: * generic/tkMenu.h: * generic/tkMenubutton.h: * generic/tkScale.h: * generic/tkScrollbar.h: * generic/tkSelect.h: * generic/tkStubInit.c: * generic/tkStubLib.c: * generic/tkText.h: * generic/tkUndo.h: * macosx/tkMacOSXButton.c: * macosx/tkMacOSXDebug.c: * macosx/tkMacOSXDebug.h: * macosx/tkMacOSXDialog.c: * macosx/tkMacOSXDraw.c: * macosx/tkMacOSXEntry.c: * macosx/tkMacOSXFont.c: * macosx/tkMacOSXInt.h: * macosx/tkMacOSXMenu.c: * macosx/tkMacOSXMenubutton.c: * macosx/tkMacOSXMouseEvent.c: * macosx/tkMacOSXSend.c: * macosx/tkMacOSXSubwindows.c: * macosx/tkMacOSXWindowEvent.c: * macosx/tkMacOSXWm.c: * macosx/tkMacOSXXStubs.c: * unix/tkUnixButton.c: * unix/tkUnixMenu.c: * xlib/xgc.c: ensure externally visible symbols not contained in stubs table are declared as MODULE_SCOPE (or as static if not used outside of own source file), #ifdef out a few Xlib and aqua functions that are never called. These changes allow 'make checkstubs' to complete without error on Darwin with gcc 4.
* macosx/tkMacOSXTest.c: * macosx/tkMacOSXPort.h: * win/tkWinTest.c: * generic/tkInt.decls: add functions needed by tktest to internal stubs table, correct signature of TkMacOSXHandleMenuSelect, add XSync to aqua Xlib stubs.
* unix/tkUnixSend.c: * generic/tkText.c: * generic/tkTest.c: #ifdef unix only declarations. (TestmetricsCmd): unify win and mac implementation. (TestsendCmd): move to tkUnixSend.c to avoid access to global var. (TesttextCmd): move to tkText.c to avoid having to put all the internal text functions it uses into the stubs table.
* generic/tkTextDisp.c: * macosx/tkMacOSXInit.c: * macosx/tkMacOSXKeyEvent.c: * macosx/tkMacOSXWindowEvent.c: * macosx/tkMacOSXXStubs.c: fix gcc 4 warnings.
* macosx/tkMacOSXNotify.c: * macosx/tkMacOSXScrlbr.c: sync with core-8-4-branch.
* generic/tkIntDecls.h: * generic/tkIntPlatDecls.h: * generic/tkIntXlibDecls.h: * generic/tkStubInit.c: * unix/configure: * unix/tkConfig.h.in: regen.
file: [cacbc9d6] check-in: [67cb6f9b] user: das branch: trunk, size: 38307
2005-09-10
14:54
* 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/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.13
* library/listbox.tcl: corrected comments. * library/text.tcl:
* xlib/xcolors.c: fixed warning
file: [e41f699d] check-in: [cb862bdd] user: das branch: core-8-4-branch, size: 39470
14:53
* 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
file: [9e6ca72f] check-in: [2d5bab52] user: das branch: trunk, size: 39493
2005-08-09
07:39
* macosx/tkMacOSXCarbonEvents.c (new): moved carbon events code into * macosx/tkMacOSXHLEvents.c: new file like on HEAD, * macosx/tkMacOSXInit.c (TkpInit): initialize carbon event handlers * macosx/tkMacOSXInt.h: in TkpInit(), add new source * unix/Makefile.in: file to Makefile.in.
* macosx/tkMacOSXCarbonEvents.c (AppEventHandlerProc): handle carbon events sent directly to application event target via the general TkMacOSXProcessEvent() in the same way as events posted to the event loop. Moved existing app event handlers to tkMacOSXWindowEvent.c. (TkMacOSXInitCarbonEvents): register our application event handler for kEventWindowExpanded events to deal with uncollapsing from the dock.
* macosx/tkMacOSXEvent.h: made TkMacOSXProcessEvent() non-static, added * macosx/tkMacOSXEvent.c: new interp field to TkMacOSXEvent struct for use by app event handler.
* macosx/tkMacOSXMouseEvent.c (TkMacOSXProcessMouseEvent): retrieve current window, partCode, modifiers and local cursor position from carbon mouse event if possible. Use new static GenerateButtonEvent() taking a MouseEventData struct instead of TkGenerateButtonEvent() to avoid recomputing already known values. Move process activation on MouseDown into BringWindowForward() to allow clicking on window titlebar widgets without activating process. Move code dealing with clicks in window titelbar into separate function HandleWindowTitlebarMouseDown() to avoid code duplication. Avoid repeated calls to TkMacOSXGetXWindow() by storing result in MouseEventData struct. (TkMacOSXButtonKeyState, XQueryPointer): try to get button and modifier state from currently processed carbon event (to avoid unnecessary IPC with the window server), otherwise use modern carbon API to get this info instead of Button() and GetKeys(); only retrieve info caller asks for (via non-NULL ptr passed to XQueryPointer). (ButtonModifiers2State): new static function converting carbon button and modifier state into tk state, allows detection of more than 3 mouse buttons (tk supports up to 5) and of NumLock and Fn modifier keys (NumLock is mapped to Mod3 and Fn to Mod4).
* macosx/tkMacOSXWindowEvent.c (TkMacOSXProcessApplicationEvent): handle kEventWindowExpanded event to deal with window uncollapsing from the dock by generating tk Map event, handle kEventAppHidden and kEventAppShown events (moved here from tkMacOSXCarbonEvents.c).
* macosx/tkMacOSXSubwindows.c (XUnmapWindow): only hide window when it is not iconified to avoid window flashing on collapse.
* macosx/tkMacOSXWm.c: replaced Tk_DoWhenIdle() by Tcl_DoWhenIdle(). (TkMacOSXZoomToplevel): remove call to TrackBox(), now done in HandleWindowTitlebarMouseDown() in tkMacOSXMouseEvent.c. (TkpWmSetState): avoid window flashing on collapse by unmapping after calling CollapseWindow(); only uncollapse window if it is collapsed.
* generic/tkInt.decls: changed TkMacOSXZoomToplevel() signature. * generic/tkIntPlatDecls.h:
* macosx/tkMacOSXKeyEvent.c (TkMacOSXProcessKeyboardEvent): only call GetMenuItemCommandID() on KeyDown or KeyRepeat events.
* macosx/tkMacOSXMenu.c (ReconfigureMacintoshMenu): remove call to obsolete AppendResMenu() API.
* macosx/tkMacOSXKeyEvent.c: replaced all direct uses of expensive * macosx/tkMacOSXMenu.c: GetMouse() and TkMacOSXButtonKeyState() * macosx/tkMacOSXMenus.c: APIs by calls to XQueryPointer() * macosx/tkMacOSXMouseEvent.c: * macosx/tkMacOSXScale.c: * macosx/tkMacOSXScrlbr.c: * macosx/tkMacOSXWm.c:
* macosx/tkMacOSXDialog.c: replaced use of FrontNonFloatingWindow() * macosx/tkMacOSXKeyEvent.c: by ActiveNonFloatingWindow() as * macosx/tkMacOSXMenu.c: recommended by Carbon docs. * macosx/tkMacOSXMenus.c: * macosx/tkMacOSXSubwindows.c: * macosx/tkMacOSXWm.c:
* macosx/tkMacOSXDialog.c: fixed warnings * macosx/tkMacOSXTest.c:
* macosx/tkMacOSXCarbonEvents.c: added CVS Id line to file header. * macosx/tkMacOSXDebug.c: * macosx/tkMacOSXDebug.h: * macosx/tkMacOSXEntry.c: * macosx/tkMacOSXEvent.h: * macosx/tkMacOSXKeyEvent.c: * macosx/tkMacOSXMouseEvent.c: * macosx/tkMacOSXWindowEvent.c: * macosx/tkMacOSXWm.h:
* macosx/tkMacOSXEmbed.c: replaced all uses of panic() with Tcl_Panic() * macosx/tkMacOSXFont.c: (sync with HEAD). * macosx/tkMacOSXMenus.c: * macosx/tkMacOSXSubwindows.c: * macosx/tkMacOSXWm.c: * macosx/tkMacOSXXStubs.c:
* macosx/tkMacOSXInt.h: sync with HEAD changes of 2005-03-14. * macosx/tkMacOSXSubwindows.c:
* macosx/tclets.r (removed): sync with HEAD. * macosx/tkMacOSXScale.c: * macosx/tkMacOSXPort.h:
* library/demos/menu.tcl: removed errant '}'.
file: [5c385c55] check-in: [f858b664] user: das branch: core-8-4-branch, size: 39281
07:39
* macosx/tkMacOSXCarbonEvents.c (AppEventHandlerProc): handle carbon events sent directly to application event target via the general TkMacOSXProcessEvent() in the same way as events posted to the event loop. Moved existing app event handlers to tkMacOSXWindowEvent.c. (TkMacOSXInitCarbonEvents): register our application event handler for kEventWindowExpanded events to deal with uncollapsing from the dock.
* macosx/tkMacOSXEvent.h: made TkMacOSXProcessEvent() non-static, added * macosx/tkMacOSXEvent.c: new interp field to TkMacOSXEvent struct for use by app event handler.
* macosx/tkMacOSXMouseEvent.c (TkMacOSXProcessMouseEvent): retrieve current window, partCode, modifiers and local cursor position from carbon mouse event if possible. Use new static GenerateButtonEvent() taking a MouseEventData struct instead of TkGenerateButtonEvent() to avoid recomputing already known values. Move process activation on MouseDown into BringWindowForward() to allow clicking on window titlebar widgets without activating process. Move code dealing with clicks in window titelbar into separate function HandleWindowTitlebarMouseDown() to avoid code duplication. Avoid repeated calls to TkMacOSXGetXWindow() by storing result in MouseEventData struct. (TkMacOSXButtonKeyState, XQueryPointer): try to get button and modifier state from currently processed carbon event (to avoid unnecessary IPC with the window server), otherwise use modern carbon API to get this info instead of Button() and GetKeys(); only retrieve info caller asks for (via non-NULL ptr passed to XQueryPointer). (ButtonModifiers2State): new static function converting carbon button and modifier state into tk state, allows detection of more than 3 mouse buttons (tk supports up to 5) and of NumLock and Fn modifier keys (NumLock is mapped to Mod3 and Fn to Mod4).
* macosx/tkMacOSXWindowEvent.c (TkMacOSXProcessApplicationEvent): handle kEventWindowExpanded event to deal with window uncollapsing from the dock by generating tk Map event, handle kEventAppHidden and kEventAppShown events (moved here from tkMacOSXCarbonEvents.c).
* macosx/tkMacOSXSubwindows.c (XUnmapWindow): only hide window when it is not iconified to avoid window flashing on collapse.
* macosx/tkMacOSXWm.c: replaced Tk_DoWhenIdle() by Tcl_DoWhenIdle(). (TkMacOSXZoomToplevel): remove call to TrackBox(), now done in HandleWindowTitlebarMouseDown() in tkMacOSXMouseEvent.c. (TkpWmSetState): avoid window flashing on collapse by unmapping after calling CollapseWindow(); only uncollapse window if it is collapsed.
* generic/tkInt.decls: changed TkMacOSXZoomToplevel() signature. * generic/tkIntPlatDecls.h:
* macosx/tkMacOSXKeyEvent.c (TkMacOSXProcessKeyboardEvent): only call GetMenuItemCommandID() on KeyDown or KeyRepeat events.
* macosx/tkMacOSXMenu.c (ReconfigureMacintoshMenu): remove call to obsolete AppendResMenu() API.
* macosx/tkMacOSXKeyEvent.c: replaced all direct uses of expensive * macosx/tkMacOSXMenu.c: GetMouse() and TkMacOSXButtonKeyState() * macosx/tkMacOSXMenus.c: APIs by calls to XQueryPointer() * macosx/tkMacOSXMouseEvent.c: * macosx/tkMacOSXScale.c: * macosx/tkMacOSXScrlbr.c: * macosx/tkMacOSXWm.c:
* macosx/tkMacOSXDialog.c: replaced use of FrontNonFloatingWindow() * macosx/tkMacOSXKeyEvent.c: by ActiveNonFloatingWindow() as * macosx/tkMacOSXMenu.c: recommended by Carbon docs. * macosx/tkMacOSXMenus.c: * macosx/tkMacOSXSubwindows.c: * macosx/tkMacOSXWm.c:
* macosx/tkMacOSXDialog.c: fixed warnings * macosx/tkMacOSXTest.c:
* macosx/tkMacOSXCarbonEvents.c: added CVS Id line to file header. * macosx/tkMacOSXDebug.c: * macosx/tkMacOSXDebug.h: * macosx/tkMacOSXEntry.c: * macosx/tkMacOSXEvent.h: * macosx/tkMacOSXKeyEvent.c: * macosx/tkMacOSXMouseEvent.c: * macosx/tkMacOSXWindowEvent.c: * macosx/tkMacOSXWm.h:
* macosx/tkMacOSXInt.h: declare macosx internal procs as MODULE_SCOPE. * macosx/tkMacOSXCarbonEvents.c: * macosx/tkMacOSXDraw.c: * macosx/tkMacOSXFont.c: * macosx/tkMacOSXHLEvents.c: * macosx/tkMacOSXInit.c: * macosx/tkMacOSXWindowEvent.c
* library/bgerror.tcl: sync with core-8-4-branch changes of 2005-07-28. * macosx/tkMacOSXDraw.c: * macosx/tkMacOSXWm.c: * macosx/tkMacOSXMouseEvent.c:
* generic/tkFrame.c: sync with core-8-4-branch changes of 2005-07-27. * generic/tkIntDecls.h: * generic/tkStubInit.c: * generic/tkFrame.c: * win/tkWinDraw.c: * unix/tkUnixDraw.c: * macosx/tkMacOSXDraw.c: * macosx/tkMacOSXInt.h: * macosx/tkMacOSXWm.c: * macosx/tkMacOSXSubwindows.c:
* macosx/tkMacOSXButton.c: sync with core-8-4-branch. * macosx/tkMacOSXEntry.c: * macosx/tkMacOSXScale.c:
* library/demos/menu.tcl: removed errant '}'.
file: [32effb75] check-in: [10965e80] user: das branch: trunk, size: 39278
2004-04-21
13:18
Fix several problems with Icelandic (and Faroese) keyboards reported by J�r�me Gagnon-Voyer <gagnonje5000<at>mac<dot>com> on tcl-mac on 2004-03-22.

(KLSInit): Add. (GetKCHREncoding): Add. (GetKeyboardLayout): Add calls to Keyboard Layout Services, if present. Rework classic handling. Use GetKCHREncoding(). Add parameter encodingPtr. file: [f06d23bf] check-in: [49aa55ce] user: cc_benny branch: trunk, size: 39002

2004-03-17
19:01
Get the "Command-H" -> hide binding working. Also remove the spurious Quit menu item from the File command. file: [6f6f0ac6] check-in: [fddb1a3f] user: wolfsuit branch: core-8-4-branch, size: 29716
2004-02-16
00:19
Fix a bug in tk_getOpenFile - files with no types are rejected when they would pass in Mac OS Classic. Add the tkMacOSXCarbonEvents.c - just a skeleton right now. A bunch of formatting nits fixed. file: [1657c87d] check-in: [4aed47b8] user: wolfsuit branch: trunk, size: 29681
2003-02-20
07:07
* macosx/tkMacOSXKeyEvent.c: fix for uninitialized var warning.
file: [05626902] check-in: [988e1eb5] user: das branch: trunk, size: 29677
2003-02-19
19:27
This submission contains a slightly reworked & cleaned up version of two parts of the patches in Patch Tracker #622582 - new-evthdlng.2003-02-12.diff and basic-keyboard.2003-02-10.diff. The second part puts translation of MacOS X keycodes to characters on a better footing. The first part relaxs Tk's policy of consuming all events unless it can see they go to windows it didn't create. This change gets the little traffic lights working, and should make things like QuickTimeTcl easier to implement. file: [6a288ed0] check-in: [01a965fc] user: wolfsuit branch: trunk, size: 29673
2002-10-16
11:29
dead keys first fix for MacOSX file: [a7094514] check-in: [349d85cb] user: vincentdarley branch: trunk, size: 20899
2002-09-09
23:52
* library/tk.tcl: use command instead of control on Aqua bindings. Force dialogs to appear below fixed native Mac menubar. * macosx/tkMacOSXKeyEvent.c: * macosx/tkMacOSXKeyboard.c: Keypress/release events for pure modifier keys were not being passed to Tk. Deadkey presses were inserting null characters into text windows. Now they do nothing. (Still not ideal, but better than before!) * macosx/tkMacOSXMenu.c: Allow more than 200 menus to exist - increased to 2000. * macosx/tkMacOSXMouseEvent.c: Bad interactions between floating windows and ordinary ones. Ensure that local<->global coordinate transformations are wrt to the correct window. * macosx/tkMacOSXWm.c: Better error msg for 'wm attributes'. Remove crash in 'wm transient'. Add 'noActivates' and 'noUpdates' flags to unsupported command. [Patch #606658] (darley)
file: [e49996d9] check-in: [b7d61235] user: hobbs branch: trunk, size: 15928
2002-07-19
09:22
Jim's patch for encodings file: [54906c86] check-in: [2b8127b6] user: vincentdarley branch: macosx-8-4-branch, size: 12457
2002-07-18
23:45
encodings, events file: [6c2b7e12] check-in: [89cc0ef3] user: vincentdarley branch: macosx-8-4-branch, size: 12472
09:35
key event problems - no static file: [84a2ed47] check-in: [0c136688] user: vincentdarley branch: macosx-8-4-branch, size: 12204
2002-06-10
05:38
Merging with TOT as of 06/09/2002. file: [e619aa7f] check-in: [c4cf2ab6] user: wolfsuit branch: macosx-8-4-branch, size: 12194
2002-02-05
02:25
Merge with current TOT Added support for the wm stackorder command Fixed crash when selecting Menu items in the Application menu that we didn't put there. Added first bits of the use of CG for low-level drawing. The line-drawing works, the rest doesn't yet. You have to set the file static useCGDrawing to 1 and rebuild to activate this code. file: [35c5addf] check-in: [32f71d05] user: wolfsuit branch: macosx-8-4-branch, size: 11643
2001-10-15
09:21
Added: First checkin of support for Tk on Mac OS X. file: [f2d576e9] check-in: [1f829a93] user: wolfsuit branch: macosx-8-4-branch, size: 11660