- GetChildWindows
- GetWindowName
Fetch the list of Child Windows
my @children = GetChildWindows $Main; foreach my $id (@children) { my $name = GetWindowName($id) || ''; print "Child: '$id' '$name'\n"; }
perl examples/X/xcalc11.pl
Non of them has a title, this seem to be like a dead-end, but wait a second, maybe we can find the location of the child windows.
examples/X/xcalc11.pl
#!/usr/bin/perl use strict; use warnings; use X11::GUITest qw(:ALL); StartApp('xcalc'); my ($Main) = WaitWindowViewable('Calculator'); if (!$Main) { die("Couldn't find xcalc window in time!"); } print "Main: $Main\n"; my $Focus = GetInputFocus(); print "Focus: $Focus\n"; if ($Focus != $Main) { die "The focus is not on the main window or you have two xcalcs open\n"; } my @children = GetChildWindows $Main; foreach my $id (@children) { my $name = GetWindowName($id) || ''; print "Child: '$id' '$name'\n"; } { my ($x, $y, $width, $height) = GetWindowPos($Main); MoveMouseAbs($x+2, $y-2); ClickMouseButton M_LEFT; SendKeys('c'); }