summaryrefslogtreecommitdiffstats
path: root/unix/tkUnixWm.c
Commit message (Collapse)AuthorAgeFilesLines
* Backported fix for bug #915350 "Tk sets min, max size in WM_HINTS when itjenglish2004-04-211-2/+9
| | | | | | shouldn't" and #922336 "Tk apps have no maximize window button under KDE-3.2.1" FossilOrigin-Name: f2928ada2896908a7234831411470a94b04a5dd7
* 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). FossilOrigin-Name: 2effd3475ec648210ce266d0882d758d6d808243
* * 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] FossilOrigin-Name: 35f7ae4fdc9831ebce4991bb57ad16ee1347afd6
* * tests/wm.test:hobbs2002-09-021-155/+18
| | | | | | | * unix/tkUnixWm.c: remove possible 2-second delay in 'raise'. [Patch #601518] (english) TIP #107 FossilOrigin-Name: 1d77e81a202a0a43c9f2463d6bccacb8640c53a5
* * 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. FossilOrigin-Name: c489a1d0dbfd11d7c4df469a04313711bcc96a6c
* * 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. FossilOrigin-Name: 8bf516653dec88df045f4ede9bd20a29f36a2772
* Fix for Tk Bug #592201 "wm transient fails with two masters".jenglish2002-08-081-18/+4
| | | FossilOrigin-Name: 4e600e965166da9366159ab1c056fa4f581c2dc9
* 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) FossilOrigin-Name: 5603f01aa35a127f83db9bb68f3b1ff9e5bb64de
* different method of silencing compiler warning.dgp2002-08-021-3/+3
| | | FossilOrigin-Name: cdf795b7aa20494bfa87eda6aefc190e59429be1
* silenced compiler warningdgp2002-08-021-2/+3
| | | FossilOrigin-Name: ea64d4e8738ddd96aaf8ee9a81b7584a6934de4a
* Objectifed wm. [Patch #564521]pspjuth2002-07-251-1149/+2112
| | | FossilOrigin-Name: 92401d20cc4325169eeb6ae277fea3cd22014fb3
* * 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. FossilOrigin-Name: 033a5a14b699169c2ef9e9277c3b97bbfac41cd4
* * 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. FossilOrigin-Name: 724d114ee255fa02f6c998701cf372f58a936ac0
* * 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] FossilOrigin-Name: 18c2fcbb3135b4363ddb86da2a2e33b37dbbe0e5
* * 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) FossilOrigin-Name: bdc985bf1e3425faffc75d12dd8d12dae526486f
* 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. FossilOrigin-Name: ad38fbacd7328c607131ee691e933fcc9aa67d3e
* * 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. FossilOrigin-Name: b05e1154cf5528e467289fd82864e519f2a7c69b
* * 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. FossilOrigin-Name: c9b836ac06039b02353fba98ada7fb240b3fb2b4
* * 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. FossilOrigin-Name: 13269e5d6a55b64c5febe56e0c75cd35f16c0e4e
* * 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. FossilOrigin-Name: 4f8883ed4b1b2d41c7beed32ab103ff4b8a2f0c6
* * 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. FossilOrigin-Name: 7e89e7df59b461e3f3179063e3ef13a04505a48c
* * 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. FossilOrigin-Name: 847f6d256e60a0a9036c23b1f727ceacf69aa64b
* * 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). FossilOrigin-Name: c030dfcce9926a0617c47c114b14be2c2c221356
* * 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] FossilOrigin-Name: 6a63d1d7a0f1be3097d743ebd8b1a1c3c46b07b5
* * unix/tkUnixWm.c (CreateWrapper): Removed redundat setting ofhobbs2002-04-051-4/+1
| | | | | | inputContext to null. FossilOrigin-Name: 8f60243f55a0027e0359a352e8ab1521e670a094
* * 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. FossilOrigin-Name: 933dcfe881579bb3925ff2a05e925a0bd8d67087
* (TkWmStackorderToplevelWrapperMap): added statichobbs2001-12-131-2/+3
| | | FossilOrigin-Name: c78889e88015a5ee9292b94fbd8dceef9bcb1ba0
* 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. FossilOrigin-Name: 45e73f13a603eba5167ba98b8dbe8ecbbab7a443
* * 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. FossilOrigin-Name: 6889ab2f8d549f96570e66f82a57ae3f595db64b
* * unix/tkUnixWm.c: Applied patch from [Bug: 4405]; fixes memoryericm2000-03-271-1/+13
| | | | | | leak in Unix wm command. FossilOrigin-Name: e19a4833c5f6a04882c4c785bd29affcdddf79e0
* * 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 FossilOrigin-Name: a8e1c74007bc61a1e44695f70f5438b3ee5790bd
* * 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. FossilOrigin-Name: 29decdaf4ace8bd6d2774bb76eff6576425b78d9
* * 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] FossilOrigin-Name: 319a19a17c741b422862379dca21d45833b04407
* * Merged 8.1 branch into the main trunkstanton1999-04-161-105/+215
| | | FossilOrigin-Name: 1120dc4257448ed1955333e682de48e2940cc741
* Fixed memory leak in unix wm commandrjohnson1998-09-301-1/+8
| | | FossilOrigin-Name: 4ba720fca0f4ca695f6898a8a90edc74b6f3dbd0
* Replaced SCCS strings, fixed binary filesstanton1998-09-141-1/+1
| | | FossilOrigin-Name: fb58b663f313796e8ed3115f92d657f0cae1d575
* Initial revisionrjohnson1998-04-011-0/+4813
FossilOrigin-Name: 2bf55ca9aa942b581137b9f474da5ad9c1480de4