Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Changes In Branch mistake Excluding Merge-Ins
This is equivalent to a diff from 83c3bea5 to 58cb6075
2025-03-31
| ||
08:36 | testutils.tcl [_pause]: correct qualification of wait variable, and optimize slightly. check-in: 737c20a9 user: erikleunissen tags: tk_collect_test_utils | |
08:23 | testutils.tcl [_pause]: correct registration of wait variable which was broken by relocation, and optimize slightly. Closed-Leaf check-in: 58cb6075 user: erikleunissen tags: mistake | |
2025-03-30
| ||
13:53 | Utility domain "select": [setup] -> [selectionSetup] check-in: 83c3bea5 user: erikleunissen tags: tk_collect_test_utils | |
12:54 | testutils.tcl: keep alphabetical order (domain "generic") check-in: eabc92a3 user: erikleunissen tags: tk_collect_test_utils | |
Changes to tests/event.test.
︙ | ︙ | |||
75 76 77 78 79 80 81 | # a focus follows mouse will not steal away # the focus if the mouse is moved around. if {[focus] != $win} { focus -force $win } event generate $win <Key-$keysym> | | | | 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 | # a focus follows mouse will not steal away # the focus if the mouse is moved around. if {[focus] != $win} { focus -force $win } event generate $win <Key-$keysym> pause 50 if {[focus] != $win} { focus -force $win } event generate $win <KeyRelease-$keysym> pause 50 } # Call _keypress for each character in the given string proc _keypress_string {win string} { foreach letter [split $string ""] { _keypress $win $letter |
︙ | ︙ | |||
201 202 203 204 205 206 207 | tkwait visibility $e _keypress_string $e JUMP set result [$e get] event generate $e <Enter> for {set i 0} {$i < 3} {incr i} { | | | | 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 | tkwait visibility $e _keypress_string $e JUMP set result [$e get] event generate $e <Enter> for {set i 0} {$i < 3} {incr i} { pause 100 event generate $e <Button-1> pause 100 event generate $e <ButtonRelease-1> } _keypress $e Delete _keypress_string $e UP lappend result [$e get] } -cleanup { |
︙ | ︙ | |||
256 257 258 259 260 261 262 | tkwait visibility $e _keypress_string $e JUMP set result [$e get 1.0 1.end] event generate $e <Enter> for {set i 0} {$i < 3} {incr i} { | | | | 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 | tkwait visibility $e _keypress_string $e JUMP set result [$e get 1.0 1.end] event generate $e <Enter> for {set i 0} {$i < 3} {incr i} { pause 100 event generate $e <Button-1> pause 100 event generate $e <ButtonRelease-1> } _keypress $e Delete _keypress_string $e UP lappend result [$e get 1.0 1.end] } -cleanup { |
︙ | ︙ | |||
301 302 303 304 305 306 307 | # Now drag until selend is highlighted, then click up set current $anchor while {[$e compare $current <= $selend]} { foreach {current_x current_y} [_text_ind_to_x_y $e $current] break event generate $e <B1-Motion> -x $current_x -y $current_y set current [$e index [list $current + 1 char]] | | | | | | 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 | # Now drag until selend is highlighted, then click up set current $anchor while {[$e compare $current <= $selend]} { foreach {current_x current_y} [_text_ind_to_x_y $e $current] break event generate $e <B1-Motion> -x $current_x -y $current_y set current [$e index [list $current + 1 char]] pause 50 } event generate $e <ButtonRelease-1> -x $current_x -y $current_y pause 200 # Save the position of the insert cursor lappend result [$e index insert] # Save the highlighted text lappend result [_get_selection $e] # Now click and click and drag to the left, over "Tcl/Tk selection" event generate $e <Button-1> -x $current_x -y $current_y while {[$e compare $current >= [list $anchor - 4 char]]} { foreach {current_x current_y} [_text_ind_to_x_y $e $current] break event generate $e <B1-Motion> -x $current_x -y $current_y set current [$e index [list $current - 1 char]] pause 50 } event generate $e <ButtonRelease-1> -x $current_x -y $current_y pause 200 # Save the position of the insert cursor lappend result [$e index insert] # Save the highlighted text lappend result [_get_selection $e] |
︙ | ︙ | |||
368 369 370 371 372 373 374 | # Now drag until selend is highlighted, then click up set current $anchor while {$current <= $selend} { foreach {current_x current_y} [_text_ind_to_x_y $e $current] break event generate $e <B1-Motion> -x $current_x -y $current_y incr current | | | | | | 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 | # Now drag until selend is highlighted, then click up set current $anchor while {$current <= $selend} { foreach {current_x current_y} [_text_ind_to_x_y $e $current] break event generate $e <B1-Motion> -x $current_x -y $current_y incr current pause 50 } event generate $e <ButtonRelease-1> -x $current_x -y $current_y pause 200 # Save the position of the insert cursor lappend result [$e index insert] # Save the highlighted text lappend result [_get_selection $e] # Now click and click and drag to the left, over "Tcl/Tk selection" event generate $e <Button-1> -x $current_x -y $current_y while {$current >= ($anchor - 4)} { foreach {current_x current_y} [_text_ind_to_x_y $e $current] break event generate $e <B1-Motion> -x $current_x -y $current_y incr current -1 pause 50 } event generate $e <ButtonRelease-1> -x $current_x -y $current_y pause 200 # Save the position of the insert cursor lappend result [$e index insert] # Save the highlighted text lappend result [_get_selection $e] |
︙ | ︙ | |||
422 423 424 425 426 427 428 | # Get the x,y coords of the second e in "select" foreach {anchor_x anchor_y} [_text_ind_to_x_y $e $anchor] break # Click down, release, then click down again event generate $e <Enter> event generate $e <Button-1> -x $anchor_x -y $anchor_y | | | | | | | | 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 | # Get the x,y coords of the second e in "select" foreach {anchor_x anchor_y} [_text_ind_to_x_y $e $anchor] break # Click down, release, then click down again event generate $e <Enter> event generate $e <Button-1> -x $anchor_x -y $anchor_y pause 50 event generate $e <ButtonRelease-1> -x $anchor_x -y $anchor_y pause 50 event generate $e <Button-1> -x $anchor_x -y $anchor_y pause 50 # Save the highlighted text set result [list] lappend result [_get_selection $e] # Insert cursor should be at beginning of "select" lappend result [$e index insert] # Move mouse one character to the left set current [$e index [list $anchor - 1 char]] foreach {current_x current_y} [_text_ind_to_x_y $e $current] break event generate $e <B1-Motion> -x $current_x -y $current_y pause 50 # Insert cursor should be before the l in "select" lappend result [$e index insert] # Selection should still be the word "select" lappend result [_get_selection $e] # Move mouse to the space before the word "select" set current [$e index [list $current - 3 char]] foreach {current_x current_y} [_text_ind_to_x_y $e $current] break event generate $e <B1-Motion> -x $current_x -y $current_y pause 200 lappend result [$e index insert] lappend result [_get_selection $e] # Move mouse to the r in "Word" set current 1.2 foreach {current_x current_y} [_text_ind_to_x_y $e $current] break event generate $e <B1-Motion> -x $current_x -y $current_y pause 50 # Selection should now be "Word select" lappend result [_get_selection $e] # Insert cursor should be before the r in "Word" lappend result [$e index insert] |
︙ | ︙ | |||
493 494 495 496 497 498 499 | # Get the x,y coords of the second e in "select" foreach {anchor_x anchor_y} [_text_ind_to_x_y $e $anchor] break # Click down, release, then click down again event generate $e <Enter> event generate $e <Button-1> -x $anchor_x -y $anchor_y | | | | | | | | 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 | # Get the x,y coords of the second e in "select" foreach {anchor_x anchor_y} [_text_ind_to_x_y $e $anchor] break # Click down, release, then click down again event generate $e <Enter> event generate $e <Button-1> -x $anchor_x -y $anchor_y pause 50 event generate $e <ButtonRelease-1> -x $anchor_x -y $anchor_y pause 50 event generate $e <Button-1> -x $anchor_x -y $anchor_y pause 50 set result [list] lappend result [_get_selection $e] # Insert cursor should be at the end of "select" lappend result [$e index insert] # Move mouse one character to the left set current [expr {$anchor - 1}] foreach {current_x current_y} [_text_ind_to_x_y $e $current] break event generate $e <B1-Motion> -x $current_x -y $current_y pause 50 # Insert cursor should be before the l in "select" lappend result [$e index insert] # Selection should still be the word "select" lappend result [_get_selection $e] # Move mouse to the space before the word "select" set current [expr {$current - 3}] foreach {current_x current_y} [_text_ind_to_x_y $e $current] break event generate $e <B1-Motion> -x $current_x -y $current_y pause 50 lappend result [$e index insert] lappend result [_get_selection $e] # Move mouse to the r in "Word" set current [expr {$current - 2}] foreach {current_x current_y} [_text_ind_to_x_y $e $current] break event generate $e <B1-Motion> -x $current_x -y $current_y pause 50 # Selection should now be "Word select" lappend result [_get_selection $e] # Insert cursor should be before the r in "Word" lappend result [$e index insert] |
︙ | ︙ | |||
565 566 567 568 569 570 571 | # Triple click one third line leaving mouse down foreach {anchor_x anchor_y} [_text_ind_to_x_y $e $anchor] break event generate $e <Enter> event generate $e <Button-1> -x $anchor_x -y $anchor_y | | | | | | | | | 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 | # Triple click one third line leaving mouse down foreach {anchor_x anchor_y} [_text_ind_to_x_y $e $anchor] break event generate $e <Enter> event generate $e <Button-1> -x $anchor_x -y $anchor_y pause 50 event generate $e <ButtonRelease-1> -x $anchor_x -y $anchor_y pause 50 event generate $e <Button-1> -x $anchor_x -y $anchor_y pause 50 event generate $e <ButtonRelease-1> -x $anchor_x -y $anchor_y pause 50 event generate $e <Button-1> -x $anchor_x -y $anchor_y pause 50 set result [list] lappend result [_get_selection $e] # Drag up to second line set current [$e index [list $anchor - 1 line]] foreach {current_x current_y} [_text_ind_to_x_y $e $current] break event generate $e <B1-Motion> -x $current_x -y $current_y pause 50 lappend result [_get_selection $e] # Drag up to first line set current [$e index [list $current - 1 line]] foreach {current_x current_y} [_text_ind_to_x_y $e $current] break event generate $e <B1-Motion> -x $current_x -y $current_y pause 50 lappend result [_get_selection $e] return $result } -cleanup { deleteWindows } -result [list "LINE THREE\n" "LINE TWO\nLINE THREE\n" \ |
︙ | ︙ | |||
654 655 656 657 658 659 660 | set right_x [expr {($x1 + $width) - 2}] set right_y $middle_y # Double click near left hand egde of the letter A event generate $e <Enter> event generate $e <Button-1> -x $left_x -y $left_y | | | | | | | | | | | | 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 | set right_x [expr {($x1 + $width) - 2}] set right_y $middle_y # Double click near left hand egde of the letter A event generate $e <Enter> event generate $e <Button-1> -x $left_x -y $left_y pause 50 event generate $e <ButtonRelease-1> -x $left_x -y $left_y pause 50 event generate $e <Button-1> -x $left_x -y $left_y pause 50 event generate $e <ButtonRelease-1> -x $left_x -y $left_y pause 50 set result [list] lappend result [$e index insert] lappend result [_get_selection $e] # Clear selection by clicking at 0,0 event generate $e <Button-1> -x 0 -y 0 pause 50 event generate $e <ButtonRelease-1> -x 0 -y 0 pause 50 # Double click near right hand edge of the letter A event generate $e <Button-1> -x $right_x -y $right_y pause 50 event generate $e <ButtonRelease-1> -x $right_x -y $right_y pause 50 event generate $e <Button-1> -x $right_x -y $right_y pause 50 event generate $e <ButtonRelease-1> -x $right_x -y $right_y pause 50 lappend result [$e index insert] lappend result [_get_selection $e] return $result } -cleanup { deleteWindows |
︙ | ︙ | |||
721 722 723 724 725 726 727 | set right_x [expr {($x1 + $width) - 2}] set right_y $middle_y # Double click near left hand egde of the letter A event generate $e <Enter> event generate $e <Button-1> -x $left_x -y $left_y | | | | | | | | | | | | 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 | set right_x [expr {($x1 + $width) - 2}] set right_y $middle_y # Double click near left hand egde of the letter A event generate $e <Enter> event generate $e <Button-1> -x $left_x -y $left_y pause 50 event generate $e <ButtonRelease-1> -x $left_x -y $left_y pause 50 event generate $e <Button-1> -x $left_x -y $left_y pause 50 event generate $e <ButtonRelease-1> -x $left_x -y $left_y pause 50 set result [list] lappend result [$e index insert] lappend result [_get_selection $e] # Clear selection by clicking at 0,0 event generate $e <Button-1> -x 0 -y 0 pause 50 event generate $e <ButtonRelease-1> -x 0 -y 0 pause 50 # Double click near right hand edge of the letter A event generate $e <Button-1> -x $right_x -y $right_y pause 50 event generate $e <ButtonRelease-1> -x $right_x -y $right_y pause 50 event generate $e <Button-1> -x $right_x -y $right_y pause 50 event generate $e <ButtonRelease-1> -x $right_x -y $right_y pause 50 lappend result [$e index insert] lappend result [_get_selection $e] return $result } -cleanup { deleteWindows |
︙ | ︙ | |||
800 801 802 803 804 805 806 | } -result {OK} test event-9.1 {enter . window by destroying a toplevel - bug b1d115fa60} -setup { set EnterBind [bind . <Enter>] } -body { wm geometry . 200x200+300+300 wm deiconify . | | | | | | 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 | } -result {OK} test event-9.1 {enter . window by destroying a toplevel - bug b1d115fa60} -setup { set EnterBind [bind . <Enter>] } -body { wm geometry . 200x200+300+300 wm deiconify . pause 200 toplevel .top2 -width 200 -height 200 wm geometry .top2 +[expr {[winfo rootx .]+50}]+[expr {[winfo rooty .]+50}] update idletasks wm deiconify .top2 update idletasks raise .top2 pause 400 event generate .top2 <Motion> -warp 1 -x 50 -y 50 pause 100 bind . <Enter> {lappend res %W} set res [list ] destroy .top2 update idletasks pause 200 set res } -cleanup { deleteWindows bind . <Enter> $EnterBind } -result {.} # This test fails sporadically when run on the macOS CI runner. It does |
︙ | ︙ | |||
837 838 839 840 841 842 843 | update set iconified true } } -body { toplevel .top1 wm geometry .top1 200x200+300+300 wm deiconify .top1 | | | | | | | 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 | update set iconified true } } -body { toplevel .top1 wm geometry .top1 200x200+300+300 wm deiconify .top1 pause 200 toplevel .top2 -width 200 -height 200 wm geometry .top2 +[expr {[winfo rootx .top1]+50}]+[expr {[winfo rooty .top1]+50}] pause 200 wm deiconify .top2 update idletasks raise .top2 pause 400 event generate .top2 <Motion> -warp 1 -x 50 -y 50 pause 100 bind .top1 <Enter> {lappend res %W} set res [list ] destroy .top2 pause 200 set res } -cleanup { deleteWindows ; # destroy all children of ".", this already includes .top1 if {$iconified} { wm deiconify . update } |
︙ | ︙ | |||
927 928 929 930 931 932 933 | test event-9.11 {pointer window container = parent} -setup { setup_win_mousepointer .one wm withdraw .one create_and_pack_frames .one wm deiconify .one tkwait visibility .one.f1.f2 | | | 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 | test event-9.11 {pointer window container = parent} -setup { setup_win_mousepointer .one wm withdraw .one create_and_pack_frames .one wm deiconify .one tkwait visibility .one.f1.f2 pause 200; # needed for Windows update idletasks; # finish display of window set result "|" } -body { bind all <Leave> {append result "<Leave> %d %W|"} bind all <Enter> {append result "<Enter> %d %W|"} destroy .one.f1.f2 update |
︙ | ︙ | |||
952 953 954 955 956 957 958 | wm withdraw .one create_and_pack_frames .one pack propagate .one.f1.f2 0 pack [frame .one.g -bg orange -width 80 -height 80] -anchor se -side bottom -in .one.f1.f2 wm deiconify .one tkwait visibility .one.g event generate .one <Motion> -warp 1 -x 250 -y 250 | | | 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 | wm withdraw .one create_and_pack_frames .one pack propagate .one.f1.f2 0 pack [frame .one.g -bg orange -width 80 -height 80] -anchor se -side bottom -in .one.f1.f2 wm deiconify .one tkwait visibility .one.g event generate .one <Motion> -warp 1 -x 250 -y 250 pause 200; # needed for Windows set result "|" } -body { bind all <Leave> {append result "<Leave> %d %W|"} bind all <Enter> {append result "<Enter> %d %W|"} destroy .one.g update set result |
︙ | ︙ | |||
1046 1047 1048 1049 1050 1051 1052 | # TkPointerDeadWindow() and subsequent reading in GenerateEnterLeave(). setup_win_mousepointer .one wm withdraw .one create_and_pack_frames .one wm deiconify .one tkwait visibility .one.f1.f2 update idletasks; # finish displaying window | | | 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 | # TkPointerDeadWindow() and subsequent reading in GenerateEnterLeave(). setup_win_mousepointer .one wm withdraw .one create_and_pack_frames .one wm deiconify .one tkwait visibility .one.f1.f2 update idletasks; # finish displaying window pause 200; # needed for Windows set result "|" } -body { bind all <Leave> {append result "<Leave> %d %W|"} bind all <Enter> {append result "<Enter> %d %W|"} destroy .one.f1 update set result |
︙ | ︙ | |||
1070 1071 1072 1073 1074 1075 1076 | # TkPointerDeadWindow() and subsequent reading in GenerateEnterLeave(). setup_win_mousepointer .one wm withdraw .one create_and_pack_frames .one wm deiconify .one tkwait visibility .one.f1.f2 update idletasks; # finish displaying window | | | 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 | # TkPointerDeadWindow() and subsequent reading in GenerateEnterLeave(). setup_win_mousepointer .one wm withdraw .one create_and_pack_frames .one wm deiconify .one tkwait visibility .one.f1.f2 update idletasks; # finish displaying window pause 200; # needed for Windows set result "|" } -body { bind all <Leave> {append result "<Leave> %d %W|"} bind all <Enter> {append result "<Enter> %d %W|"} destroy .one.f1.f2 update; # make sure window is gone destroy .one.f1 |
︙ | ︙ | |||
1168 1169 1170 1171 1172 1173 1174 | bind all <Enter> {} unset result } -result {|} # cleanup # macOS sometimes has trouble deleting the test window, # causing a failure in focus.test. | | | 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 | bind all <Enter> {} unset result } -result {|} # cleanup # macOS sometimes has trouble deleting the test window, # causing a failure in focus.test. pause 200; deleteWindows update unset -nocomplain keypress_lookup rename _init_keypress_lookup {} rename _keypress_lookup {} rename _keypress {} rename _text_ind_to_x_y {} |
︙ | ︙ |
Changes to tests/testutils.tcl.
︙ | ︙ | |||
129 130 131 132 133 134 135 | } # Suspend script execution for a given amount of time, but continue # processing events. proc _pause {{msecs 1000}} { variable _pause | | | | | < | | | 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 | } # Suspend script execution for a given amount of time, but continue # processing events. proc _pause {{msecs 1000}} { variable _pause if {! [info exists _pause(count)]} { set _pause(count) 0 } set num [incr _pause(count)] set _pause($num) 1 after $msecs [list unset [namespace current]::_pause($num)] vwait [namespace current]::_pause($num) } # On macOS windows are not allowed to overlap the menubar at the top of the # screen or the dock. So tests which move a window and then check whether it # got moved to the requested location should use a y coordinate larger than the # height of the menubar (normally 23 pixels) and an x coordinate larger than the # width of the dock, if it happens to be on the left. |
︙ | ︙ |
Changes to tests/unixWm.test.
︙ | ︙ | |||
99 100 101 102 103 104 105 | incr i } set i 1 foreach geom "+$X+80 +$X+40 +$X+$Y0" { test unixWm-4.$i {moving window while withdrawn} unix { wm withdraw .t | | | | 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 | incr i } set i 1 foreach geom "+$X+80 +$X+40 +$X+$Y0" { test unixWm-4.$i {moving window while withdrawn} unix { wm withdraw .t pause 10 wm geom .t $geom update idletasks wm deiconify .t pause 10 wm geom .t } 100x150$geom incr i } test unixWm-5.1 {compounded state changes} {unix nonPortable} { destroy .t |
︙ | ︙ |
Changes to tests/wm.test.
︙ | ︙ | |||
349 350 351 352 353 354 355 | focus -force . toplevel .t lower .t update lappend results [focus] wm attributes .t -fullscreen 1 | | | | | | | | | | | | | | | | | | | | | | 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 | focus -force . toplevel .t lower .t update lappend results [focus] wm attributes .t -fullscreen 1 pause 200 lappend results [focus] wm attributes .t -fullscreen 0 pause 200 lappend results [focus] } -cleanup { deleteWindows } -result {. . .} test wm-attributes-1.4.1 {setting fullscreen does not generate FocusIn on wrapper create} -setup { catch {unset focusin} } -constraints win -body { focus -force . toplevel .t pack [entry .t.e] lower .t bind .t <FocusIn> {lappend focusin %W} pause 200 lappend focusin 1 focus -force .t.e pause 200 lappend focusin 2 wm attributes .t -fullscreen 1 pause 200 lappend focusin 3 wm attributes .t -fullscreen 0 pause 200 lappend focusin final [focus] } -cleanup { bind . <FocusIn> {} bind .t <FocusIn> {} deleteWindows } -result {1 .t .t.e 2 3 final .t.e} test wm-attributes-1.5.0 {fullscreen stackorder} -setup { set results [list] } -constraints win -body { toplevel .t lappend results [wm stackorder .] pause 200 lappend results [wm stackorder .] # Default stacking is on top of other windows on the display. Setting the # fullscreen attribute does not change this. wm attributes .t -fullscreen 1 pause 200 lappend results [wm stackorder .] } -cleanup { deleteWindows } -result {. {. .t} {. .t}} test wm-attributes-1.5.1 {fullscreen stackorder} -setup { set results [list] } -constraints win -body { toplevel .t lower .t pause 200 lappend results [wm stackorder .] # If stacking order is explicitly set, then setting the fullscreen # attribute should not change it. wm attributes .t -fullscreen 1 pause 200 lappend results [wm stackorder .] } -cleanup { deleteWindows } -result {{.t .} {.t .}} test wm-attributes-1.5.2 {fullscreen stackorder} -setup { set results [list] } -constraints win -body { toplevel .t # lower forces the window to be mapped, it would not be otherwise lower .t lappend results [wm stackorder .] # If stacking order is explicitly set for an unmapped window, then setting # the fullscreen attribute should not change it. wm attributes .t -fullscreen 1 pause 200 lappend results [wm stackorder .] } -cleanup { deleteWindows } -result {{.t .} {.t .}} test wm-attributes-1.5.3 {fullscreen stackorder} -setup { set results [list] } -constraints win -body { toplevel .t pause 200 lappend results [wm stackorder .] wm attributes .t -fullscreen 1 pause 200 lappend results [wm stackorder .] # Unsetting the fullscreen attribute should not change the stackorder. wm attributes .t -fullscreen 0 pause 200 lappend results [wm stackorder .] } -cleanup { deleteWindows } -result {{. .t} {. .t} {. .t}} test wm-attributes-1.5.4 {fullscreen stackorder} -setup { set results [list] } -constraints win -body { toplevel .t lower .t pause 200 lappend results [wm stackorder .] wm attributes .t -fullscreen 1 pause 200 lappend results [wm stackorder .] # Unsetting the fullscreen attribute should not change the stackorder. wm attributes .t -fullscreen 0 pause 200 lappend results [wm stackorder .] } -cleanup { deleteWindows } -result {{.t .} {.t .} {.t .}} test wm-attributes-1.5.5 {fullscreen stackorder} -setup { set results [list] } -constraints win -body { toplevel .a toplevel .b toplevel .c raise .a raise .b raise .c pause 200 lappend results [wm stackorder .] wm attributes .b -fullscreen 1 pause 200 lappend results [wm stackorder .] # Unsetting the fullscreen attribute should not change the stackorder. wm attributes .b -fullscreen 0 pause 200 lappend results [wm stackorder .] } -cleanup { deleteWindows } -result {{. .a .b .c} {. .a .b .c} {. .a .b .c}} stdWindow |
︙ | ︙ |