--- rxvt-unicode/src/perl/automove-background 2006/02/05 01:24:44 1.4 +++ rxvt-unicode/src/perl/automove-background 2006/03/04 22:36:50 1.6 @@ -1,18 +1,32 @@ #! perl +sub on_osc_seq { + my ($self, $op, $args) = @_; + + if ($op == 20) { + my ($pic, $commands) = split(/;/, $args, 2); + warn " pic=$pic commands=$commands"; + if ($pic !~ /^$/ && $commands !~ /[+\-]/) { + my ($x, $y) = $self->XTranslateCoordinates ( + $self->vt, $self->DefaultRootWindow, + 0, 0 + ); + warn " $x $y \\033]20;$pic;=+$x+$y\\007"; + $self->cmd_parse ("\033]20;$pic;=+$x+$y\007"); + return 1; + } + } + + () +} + sub on_configure_notify { my ($self, $event) = @_; - my ($x, $y); - - if ($event->{send_event}) { - ($x, $y) = ($event->{x}, $event->{y}); - } else { - ($x, $y) = $self->XTranslateCoordinates ( - $self->vt, $self->DefaultRootWindow, - 0, 0 - ); - } + my ($x, $y) = $self->XTranslateCoordinates ( + $self->vt, $self->DefaultRootWindow, + 0, 0 + ); $self->cmd_parse ("\033]20;;=+$x+$y\007"); }