Problem Reports =============== Last change: 08 September 2001 Num Added on Solved Description --- -------- -------- ------------------------------------------------------ 136 20010907 20010907 Tk Dialogs were created as children of the application toplevel instead of as toplevels, ie. children of the desktop. They were thus limited to the space that the application toplevel offers, which is dumb in my view. The only reason I see for it would be in the Tcl Plugin, but that probably doesn't work anyway. My code therefore reverts to the 4.2 way: child of the DESKTOP. It's easily changed in the WinCreateWindow in tkOS2Wm.c though. 135 2001???? 20010907 Windows version added HIT testing on non-client areas (WmProc in Tk*Wm.c). Trying to replicate such for frame controls resulted in screwed up tk_dialogs which couldn't be reached anymore, thus 'hanging' the app. Removed again. 134 2001???? 20010907 Frame edges were insensitive (didn't turn pointer into sizing arrows when hovering over the edge), thus disabling resizing. This was also caused by the HIT testing, which normally gave HT_NORMAL (like the PM Guide and Reference seemed to suggest) but should give the result of calling the oldFrameProc instead (some funky hexadecimal). 133 20000627 20000806 Native color dialog added, but not working yet. Now works. Only setting via color wheel, not by RGB numbers, but for that the Tk dialog can still be chosen. When starting SpecTcl, the color dialog comes up after the language dialog. This is because it's already shown at the time an unknown option is encountered, which is given in this case => check arguments first. 132 20000426 20000426 (8.0.5b) Pointer doesn't change to resizing arrows when on size border of frame; no resizing either. WM_ADJUSTFRAMEPOS returned 0, now calls the subclassed (= default) frame window procedure. 131 20000309 20000312 Tcl_Main not found in lib: tclOS2Main.c is in the exe instead of the lib. Now in DLL (and LIB). Now tclOS2AppInit.c has to be compiled with -DCLI_VERSION to get a CLI-version. 130 20000226 Not all areas are repainted as required. Inserted WinFillRect(hps, &rectl, CLR_RED) in GenerateXEvent (tkOS2X.c) makes all these areas stick out (not overpainted by Tk) in debugging builds. 129 20000127 20000515 After tabbing through the buttons in library\demos\ radio.tcl, ALT-F4 puts Tk into an infinite loop of a WM_CHAR message in the ChildProc ("equivalent of WM_SYSKEYDOWN"). This is because MenuKeyBindProc gets called with keysym XK_Alt_L, which ends up calling the window procedure for the key *again*, starting all over. This was likely done in the Windows port because of subclassing, but its use isn't clear. This is set up in TkpInitializeMenuBindings, whose comment mentions that it does nothing on Mac or the X Window System. So just take the latter route... 128 20000106(20000516)Menus: pointer disappears when moving over an old- style menu that's been mapped normally (works OK on torn-off tear-offs). This was because Tk_PointerEvent was made to return on a null tkwin (i.e. when the captured mouse is over a non-Tk window), which made Tk crash some time in the past. Now the mouse "only" flickers off and on again when moving the mouse (again, except in torn-off tear-offs). 127 20000106 20000322 Menus: When mapping the menu as a tear-off, the marks don't look correctly (they do when mapping normally). The mark appears strange because it's drawn using the system bitmap SBMP_MENUATTACHED instead of having the menu control handle it by specifying a child menu handle and flag MIS_SUBMENU. See 126. Don't do any SBMP_ drawing anymore. 126 20000106 20000322 Menus: cascade marks disappear when selecting the item. Only draw the item, let the system handle the check marks and submenu bitmaps. Only react to WM_DRAWITEM when the Attributes are the same (the PM Guide tells "when the state fields are the same" but then gives an example for the attribute fields. The latter works. Has the trade-off that -activebackground and -activeforeground are effectively ignored; any used non-active colors are just inverted. 125 20000106 20000106 Menus: when mapping the menu as a tear-off turn up in a wrong position vertically. The function DrawMenuEntryAccelerator used the X y coordinate instead of translating to PM (except for the baseline calculation!). 124 20000101 20000119 Widget demo, canvas types: stippled text truncated at baseline (descenders "pp" aren't there). Descenders were cut off because BitBlt-ing was done with the RefPoint (=baseline) as origin. 123 19991216 19991231 (Tcl) COM-port cannot be fconfigure-d with -mode; the Windows name "COM1:" isn't recognized (OS/2 uses "COM1". Re-implemented with DosDevIOCtl instead of Posix (EMX) stuff. Separate call for baud higher than 19200. 122 19991209 19991212 Put up a first beta that turned out to not run correctly on a 256 color (palette manager) system. Every place where Gpi*LogColorTable was used needed to check aDevCaps[CAPS_ADDITIONAL_GRAPHICS] & CAPS_PALETTE_MANAGER and take appropriate action. 121 19991204 Underlined letter in a menu doesn't invoke. E.g. widget demo: Alt-F gives the file menu, but then typing q doesn't invoke Quit. It *does* invoke on a torn-off tear-off menu though. 120 19991202 19991202 Tcl80.dll set the focus to the desktop to make sure the pointer was reinstated after using Tclpm's Terminal window, always necessitating a click to focus on a program, possibly the one that started Tclpm / wish. Now achieved by using WinShowPointer. 119 19991117 19991118 'load tk80' in tclsh (tclpm80) gives sigFPE. Initialization (TclOS2PMInitialize) was wrong, remember if we've already initialized. 118 19991116 19991117 tcl_pkgPath isn't filled correctly (ib/tcl8.0). Caused by (wrong) usage of Tcl_DStringResult. 117 19991109 20000402 Switching to wish via Ctrl-Esc doesn't bring it to the front. Added WM_FOCUSCHANGE handling in TkOS2Wm.c, where the frame is brought to the top unless the FC_NOSETACTIVE, FC_NOBRINGTOTOP and FC_NOBRINGTOPFIRSTWINDOW have been used. The FC_NOSETACTIVE flag is set when you have focus-follows-mouse (e.g. with FeelX) and move the mouse over the window; It's not set via Ctrl-Esc. 116 19991006 20000226 SpecTcl: widget choices aren't highlighted, chosen nor can they be dragged to the canvas. Tk_TranslateOS2Event wasn't called for WM_BUTTON1 / 2 / 3 / UP / DOWN, but only the button window procedure. 115 19990731 19990731 Horizontal scrollbar doesn't react. TkpScrollbarPosition gave OUTSIDE inapropriately. Caused by faulty computation in Tk_GetRootCoords (tkOS2Wm.c). 114 19990726 19990726 When environment variable LANG is set to DE_DE, then "expr 3.14" fails with a syntax error (like for "expr 3,14", which fails no matter what LANG is set to, NL_NL, EN_US, LC_C_GERMANY, ...). However, when it is set to LC_C_GERMANY, it does not fail. Function setlocale() only works correctly for DE_DE! The source for EMX (\emx\src\lib\locale\locales.c) shows that only "C", "FRAN", "GERM", "ITAL", "SPAI", "UK", "USA", "de_de", "en_us" and "en_gb" are supported ("NETH" and "NORW" are commented out). Always setting "C" locale makes the problem go away; funnily Tk (wish) already did that. 113 19990724 Creation of toplevel doesn't yet support embedding. Not really a bug. 112 19990715 Font in Tclshpm terminal should be chosen via an INI setting (if necessary overridden by environment). Not a bug. 111 19990709 19990718 Man-page registry.n should be updated for OS/2 INI version (and included in the INF file). 110 19990708 19990722 Typing Alt (to try to do Alt-F4) in button.tcl causes a crash. The variable oldMenuProc in tkOS2Menu.c wasn't initialized when there was no menu => set to WinDefWindowProc by default. 109 19990707 20000518 The right side of the focus ring on the text of the radiobuttons in radio.tk is clipped off. Accidentally held on to the Windows port's use of a RECT instead of using purely width and height in the calculation for WinCreateCursor. 108 19990707 19991204 Buttons don't clear the focus ring when the focus is removed (by eg. Tab). Added WinDestroyCursor at end of TkpDisplayButton. 107 19990707 19990802 Radio- and checkbuttons get a light yellow background. TkpGetColor returned the index (eg. -40) for system colors instead of RGB (via WinQuerySysColor), so it would select color ffffd8 (which is -40 in hex). 106 19990707 19990829 Text on (new style) menus are "double" bold, ie. the standard menu font "9.WarpSans Bold" gets boldened. Don't use FATTR_SEL_BOLD (and _ITALIC) when the font name already contains "Bold" ("Italic") (tkOS2Font.c). 105 19990707 Bitmaps in the canvas items demo and the mail bitmaps in the iconic button demo are reversed on first showing. Color problem. 104 19990707 Akin to 102: stippled canvas items (line, curve, polygon, rectangle, oval, text) don't show up until moving the mouse over them (inverting and reverting). 103 19990707 Stippling of text (both background and foreground) in "Text display styles" in the widget demo doesn't work correctly. Some stippling is visible when selecting across the stippled characters. 102 19990707 20000226 Moving the mouse into the main window when running menu.tcl or button.tcl throws up a dialog "Error: unknown option "-type"". Dismissing it by clicking on a button causes a crash. Same happens when clicking (not pressing enter on keyboard) the OK button in the target language selection in SpecTcl. Somewhere the display in a TkWindow gets corrupted, so that the (macro) call to RootWindow in function InitializeEvent in tkPointer.c accesses memory illegally. Call stack: Tk_TranslateOS2Event (WM_MOUSEMOVE), Tk_PointerEvent, GenerateEnterLeave, InitializeEvent. The 'lastWinPtr' variable in tkPointer.c, which is used to remember the window having the focus until now, isn't reset to NULL when a button is destroyed as is done in XDestroyWindow (tkOS2Window.c) by calling TkPointerDeadWindow. Calling that makes the problem go away. The same likely holds for Menus and Scrollbars but hadn't shown up yet. 101 19990707 SpecTcl: Selecting the bottom gridline and dragging it down makes it go UP to the bottom gridline of the first row. Using the line in the left margin for this (dragging down) does work. Temporarily removing the call to Tk_PointerEvent fixes this (in TkOS2TranslateEvent), so .... 100 19990707 19990829 SpecTcl: The initial target selection dialog shows up at 0,0 instead of the middle of the screen. The "geom" update didn't get through before the new values were needed => UpdateGeometryInfo inserted in TkpWmSetState. No specific bug tracking was administered before 7 July 1999.