#! perl

sub xy {
   my ($self) = @_;

   $self->XTranslateCoordinates (
      $self->vt, $self->DefaultRootWindow,
      0, 0
   )
}

sub on_osc_seq {
   my ($self, $op, $args) = @_;

   if ($op == 20) {
      my ($pic, $commands) = split(/;/, $args, 2);
      if ($pic !~ /^$/ && $commands !~ /[+\-]/) {
         my ($x, $y) = $self->XTranslateCoordinates (
            $self->vt, $self->DefaultRootWindow,
            0, 0
         );
         my ($x, $y) = $self->xy;
         $self->cmd_parse ("\033]20;$pic;=+$x+$y\007");
         return 1;
      }
   }

   ()
}

sub on_configure_notify {
   my ($self, $event) = @_;
   
   my ($x, $y) = $self->xy;

   $self->cmd_parse ("\033]20;;=+$x+$y\007");

   ()
}
