summaryrefslogtreecommitdiffstats
path: root/unix/tkUnixWm.c
Commit message (Collapse)AuthorAgeFilesLines
* WaitForEvent(): process Map and Unmap eventsjenglish2002-12-271-9/+13
| | | | | | | as well as Configure events during WaitFor{Configure|Map}Notify. Fixes [Bug 578569] (WaitForMapNotify could process Map and Unmap events out of order, making Tk think a window was unmapped when it really wasn't).
* * tests/wm.test: Add wm-transient-6.3 tomdejong2002-12-011-17/+9
| | | | | | | | | | | check that a transient remains withdrawn when it is first withdrawn and then turned into a transient. * unix/tkUnixWm.c: * win/tkWinWm.c: Replace WM_TRANSIENT_WITHDRAWN with WM_WITHDRAWN and set this flag whenever a window is explicitly withdrawn. This fixes the test case added above. [Bug 644356]
* * tests/wm.test:hobbs2002-09-021-155/+18
| | | | | * unix/tkUnixWm.c: remove possible 2-second delay in 'raise'. [Patch #601518] (english) TIP #107
* * unix/tkUnixWm.c (WmTransientCmd): Apply fix formdejong2002-08-081-4/+4
| | | | | wm transient assertion error that was applied to tkWinWm.c for Tk Bug #592201.
* * tests/wm.test: Add deleteWindows at start ofmdejong2002-08-081-4/+18
| | | | | | | new transient tests so they do not fail if the toplevels already exist. * unix/tkUnixWm.c: Revert patch for Tk Bug #592201 which incorrectly removed numTransients member.
* Fix for Tk Bug #592201 "wm transient fails with two masters".jenglish2002-08-081-18/+4
|
* Applied companion patch for Tcl Patch 585105,dgp2002-08-051-6/+6
| | | | | | | | | | | | | | | | | | | | | updating Tk to use Tcl 8.4's fully CONST-ified interface, and fully CONSTifying Tk at the same time. This patch includes purging Tk of its last direct access to interp->result. [Bug 589853] The substantial changes include copying event sequence strings into Tcl_DStrings in tkBind.c, and copying [text] indices into Tcl_DStrings because parsing them involved overwriting them. If this causes performance trouble, that can be resolved by further converting them to Tcl_Obj's. The #defines USE_NON_CONST and USE_COMPAT_CONST have the same effect for Tk as they do for Tcl. (They actually change tcl.h)
* different method of silencing compiler warning.dgp2002-08-021-3/+3
|
* silenced compiler warningdgp2002-08-021-2/+3
|
* Objectifed wm. [Patch #564521]pspjuth2002-07-251-1149/+2112
|
* * tests/wm.test: Remove invalid minsize test. Add updatemdejong2002-06-241-4/+4
| | | | | | | | | | calls to wm transient tests so that idle handlers get run. This is needed to get the tests to pass under Win32. * unix/tkUnixWm.c (WmWaitMapProc): Move the special transient withdrawn check into the if body to make it easier to set a breakpoint on this test inside a debugger. No functional changes. * win/tkWinWm.c (WmWaitVisibilityOrMapProc): Ditto.
* * doc/wm.n: TIP #95 Windows implementation andhobbs2002-06-221-3/+11
| | | | | | | | * mac/tkMacWm.c (Tk_WmCmd): docs with mac and unix stubs. * unix/tkUnixWm.c (Tk_WmCmd): * win/tkWinWm.c (Tk_WmCmd): * tests/unixWm.test: * tests/winWm.test: more wm attr tests will be needed.
* * tests/wm.test: Add tests to make sure a withdrawnmdejong2002-06-221-2/+19
| | | | | | | | | | | transient does not get remapped by state changes in the master. * unix/tkUnixWm.c (Tk_WmCmd, WmWaitMapProc): * win/tkWinWm.c (Tk_WmCmd, WmWaitVisibilityOrMapProc): Add a WM_TRANSIENT_WITHDRAWN flag that gets set by the withdraw, deiconify, or state wm subcommands. Check this flag before mapping a transient when processing a MapNotify event. [Tk bug 570764]
* * generic/tkInt.h:hobbs2002-06-151-17/+27
| | | | | | | * generic/tkCmds.c (Tk_WmObjCmd): * unix/tkUnixWm.c (Tk_WmCmd): * win/tkWinWm.c (Tk_WmCmd): changed wmTracing from being an int to just a bit in the flags variable (TK_DISPLAY_WM_TRACING)
* TIP #47 "Modifying Tk to Allow Writing X Window managers"jenglish2002-06-141-10/+33
| | | | | | | | (patch from Neil McKay). * Add CirculateRequest, Create, MapRequest, ResizeRequest, and ConfigureRequest event types; * Split TK_TOPLEVEL flag into TK_TOPLEVEL, TK_HAS_WRAPPER, TK_WIN_MANAGED, and TK_TOP_HIERARCHY.
* * changes: Add note about new transient behavior.mdejong2002-06-121-7/+122
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | * tests/unixWm.test: Check that the WM_TRANSIENT_FOR property for a transient window is being cleared when the master is destroyed. * tests/wm.test: Source defs.tcl instead of using tcltest to match the rest of Tk's test files. Add new tests that ensure that a transient's state mirrors the state of the master. * unix/tkUnixWm.c (WmInfo, TkWmNewWindow, TkWmMapWindow, TkWmDeadWindow, Tk_WmCmd, WmWaitMapProc): Add numTransients member to WmInfo structure. Keep state of master and transient in sync using a callback that tracks MapNotify and UnmapNotify events. When the master is mapped, map the transient. When the master is unmapped or iconified, withdraw the transient. * win/tkWinWm.c (TkWmMapWindow, TkpWmSetState, TkWmDeadWindow, Tk_WmCmd, WmWaitVisibilityOrMapProc): Keep state of master and transient in sync using a callback that tracks MapNotify and UnmapNotify events. Move masterPtr check from TkpWmSetState into TkWmMapWindow to deal with WM_NEVER_MAPPED transients. Cleanup numTransients and the callback in TkWmDeadWindow. Cleanup numTransients and the callback only after deleting a master in wm transient command to avoid deleting the callback when an error is raised. Add support for MapNotify and UnmapNotify events to the master callback.
* * changes: Document [wm transient .t .t] error.mdejong2002-05-271-2/+9
| | | | | | | | | | | | | | * tests/wm.test: Check that setting a window as a transient of itself raises an error. Check that passing a non-toplevel window to the wm transient command uses the enclosing toplevel. * unix/tkUnixWm.c (Tk_WmCmd): Raise an error if the user tries to make a toplevel a transient of itself. * win/tkWinWm.c (Tk_WmCmd): Raise an error if the user tries to make a toplevel a transient of itself. Test for other error before checking for the transient self error.
* * unix/tkUnixWm.c (WmInfo, TkWmCleanup, TkWmNewWindow,mdejong2002-05-271-40/+22
| | | | | | | | | TkWmMapWindow, TkWmDeadWindow, Tk_WmCmd): Replace WmInfo's master and masterWindowName members with a masterPtr member. This implementation is much simpler and mirrors the Win32 implementation. This change makes it easy to check the flags of the master window. No user visible changes.
* * generic/tkInt.decls: Add unix decl for TkpWmSetState.mdejong2002-05-271-64/+80
| | | | | | | | | | | * generic/tkIntPlatDecls.h: Regen. * generic/tkStubInit.c: Regen. * tests/wm.test: Test state changes between iconic, normal, and withdrawn both before and after initial mapping. * unix/tkUnixWm.c (Tk_WmCmd, TkpWmSetState): Move state change code into TkpWmSetState to more closely match the Win32 implementation. No functional changes.
* * mac/tkMacWm.c (Tk_WmCmd):mdejong2002-05-241-1/+19
| | | | | | | | | | | * tests/unixWm.test: Move wm transient checks over to wm.test so they will be run on all systems. * tests/wm.test: Add tests to check for error when an iconwindow is passed to the wm transient command. * unix/tkUnixWm.c (Tk_WmCmd): * win/tkWinWm.c (Tk_WmCmd): Raise an error if one of the windows passed to the wm transient command is an iconwindow for another toplevel.
* * mac/tkMacWm.c (TkWmStackorderToplevelWrapperMap):mdejong2002-05-231-2/+3
| | | | | | | | * tests/wm.test: Add embedded Window test case for the stackorder command. * unix/tkUnixWm.c (TkWmStackorderToplevelWrapperMap): * win/tkWinWm.c (TkWmStackorderToplevelWrapperMap): Ignore embedded windows during wm stackorder command.
* * unix/tkUnixWm.c (TkWmStackorderToplevel): ensure childrenhobbs2002-04-121-50/+96
| | | | | | | | | | structure is freed. (ConfigureEvent, ComputeReparentGeometry): Add extra wm tracing info (TkWmRestackToplevel): initialize changes to 0 to prevent UMR. Use WaitForConfigureNotify on all windows. This part still requires fixing as it is the root of the 2 second raise delay on some window managers (those that use extra wrapper windows of their own).
* * doc/wm.n:mdejong2002-04-101-2/+2
| | | | | | | | | * mac/tkMacWm.c: * tests/wm.test: * unix/tkUnixWm.c: * win/tkWinWm.c: Update wm stackorder usage message to make it clear that either 1 or 3 arguments are required. [Bug 540013]
* * unix/tkUnixWm.c (CreateWrapper): Removed redundat setting ofhobbs2002-04-051-4/+1
| | | | inputContext to null.
* * Updated callers of Tcl_SplitList and Tcl_Merge.dgp2002-01-251-4/+5
| | | | | | | | | * Updated callers of Tcl_GetStringResult. Rewrote PrintScrollFractions to ScrollFractions to stop scribbling directly on interp->result. * Updated callers of Tcl_GetVar, Tcl_GetVar2 * Updated callers of Tcl_SplitPath, Tcl_JoinPath, and Tcl_TranslateFileName.
* (TkWmStackorderToplevelWrapperMap): added statichobbs2001-12-131-2/+3
|
* Add TK patch 481148 to implement TIP 74, themdejong2001-12-041-4/+228
| | | | | | | | | | | | | | | | | | | | | | | | | | wm stackorder command. * doc/winfo.n: Update documentation for the winfo children command to indicate that top-level windows are not returned in stacking order. * doc/wm.n: Add documentation for wm stackorder. * generic/tkInt.decls (TkWmStackorderToplevel): Add decl for new function. * generic/tkIntDecls.h: Regen. * generic/tkStubInit.c: Regen. * tests/unixWm.test: Add stackorder command to test for wm command usage message. * tests/wm.test: Add new set of tests for generic window manager methods. * unix/tkUnixWm.c (Tk_WmCmd, TkWmStackorderToplevelWrapperMap, TkWmStackorderToplevel): Add unix implementation of new wm stackorder command. * win/tkWinWm.c (Tk_WmCmd, TkWmStackorderToplevelEnumProc, TkWmStackorderToplevelWrapperMap, TkWmStackorderToplevel): Add windows implementation of new wm stackorder command.
* * unix/tkUnixWm.c (TkWmRestackToplevel): reworked howhobbs2001-08-281-16/+19
| | | | | | | ConfigureNotify requests were handled in relation to the parent to avoid the problem with potential 'raise' delays on some wms. [Bug #220260] (baker) wms that were affected should notice the difference in tests unixWm-51.* not failing that failed before.
* * unix/tkUnixWm.c: Applied patch from [Bug: 4405]; fixes memoryericm2000-03-271-1/+13
| | | | leak in Unix wm command.
* * unix/tkUnixWm.c (Tk_CoordsToWindow): qualified delete of errorhobbs2000-02-101-3/+10
| | | | | | | | | | | | | handler as the goto label is reached from above and below. * unix/configure.in: * unix/aclocal.m4: cleaned up macros to coincide with tcl.m4, added -export-dynamic to LDFLAGS for FreeBSD-3+ [Bug: 2998] * unix/README: * unix/Makefile.in (dist): removed porting.notes and porting.old from distribution and CVS. The information was very outdated. Now refer to http://dev.scriptics.com/services/support/platforms.html
* * unix/aclocal.m4: strtod bug on Tru64 [Bug: 3378]hobbs2000-01-121-27/+111
| | | | | | | | | | | | | | | | | * unix/Makefile.in: added tests to prevent unnecessary chmod +x in source dirs while installing [Bug: 3367] * unix/configure.in: properly sub'ed in TK_SHARED_BUILD [Bug: 3385] * tests/winWm.test: * tests/unixWm.test: * mac/tkMacWm.c: * unix/tkUnixWm.c: fixed possible X error being raised [Bug: 3377] * win/tkWinWm.c: wm deiconify in zoom state [Bug: 2077], fixed possible flashing of unmapped toplevel in deiconify [Bug: 3338] and fixed mapping of transient window [Bug: 572] Also, for all wm's, extended 'wm state' command to allow setting of the state, and added official support of 'zoomed' state on Win.
* * unix/configure.in:hobbs1999-12-211-2/+9
| | | | | | | | | | | | | | | | | | | * README: updated for patch level 8.3b1 * unix/tkUnixWm.c: fixed panic in Tk_CoordsToWindow to print error and continue instead (for Tix) [Bug: 716 et al] * unix/tkUnixMenu.c: * unix/tkUnixFont.c: * generic/tkImgPPM.c: removed extranneous vars that were set but never used. * unix/aclocal.m4: removed -O flag for AIX when using the IBM compiler (several versions have a bug that crops up in the text widget). [Bug: 2316] * unix/Makefile.in: removed extra slash in SCRIPT_INSTALL_DIR [Bug: 3896]
* * Merged 8.1 branch into the main trunkstanton1999-04-161-105/+215
|
* Fixed memory leak in unix wm commandrjohnson1998-09-301-1/+8
|
* Replaced SCCS strings, fixed binary filesstanton1998-09-141-1/+1
|
* Initial revisionrjohnson1998-04-011-0/+4813