| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
and already mapped toplevel are raised and receive
the focus when deiconified.
* tests/wm.test: Add wm deiconify tests. Check that
a toplevel that has never been mapped is not mapped
by the deiconify command since it should be done
at idle by MapFrame.
* win/tkWinWm.c (Tk_WmCmd): Check the WM_NEVER_MAPPED
flag while processing the wm deiconify command.
The WM_UPDATE_PENDING flag should never be set when
WM_NEVER_MAPPED is set, but double check so that
the implementation is more explicit and matches
the comment just above.
Return without invoking TkWmRestackToplevel or
TkSetFocusWin on a toplevel that has never been
mapped. This fixes a bug where a toplevel is mapped
with the wrong size and is then resized by the
idle call to MapFrame. [Tk bug 233150]
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
|
| |
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]
|
|
|
|
|
| |
* tests/wm.test: Move wm minsize and wm maxsize
usage tests into the cross platform wm tests.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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.
|
|
|
|
|
|
|
|
|
|
|
| |
* 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.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Check that window passed to -use has the -container
option set.
* tests/wm.test: Remove useless catch call. Deiconify
. just in case, stackorder tests will not pass unless
it is in the normal state. Add -container flag to
embedded stackorder test.
* unix/tkUnixEmbed.c (TkpUseWindow):
* win/tkWinEmbed.c (TkpUseWindow): Lookup Tk window
based on the id passed in as the value for -use.
Generate an error if the Tk window did not have
the -container option set.
|
|
|
|
|
|
|
|
|
|
|
| |
* 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.
|
|
|
|
|
|
|
|
| |
* 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.
|
|
|
|
|
|
|
|
|
| |
* 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]
|
|
|
|
|
| |
deal with toplevels that have the overrideredirect
flag set. [Tk bug 492259]
|
|
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.
|