--- rxvt-unicode/src/perl/tabbed 2006/01/20 12:16:28 1.1 +++ rxvt-unicode/src/perl/tabbed 2006/01/20 14:02:41 1.5 @@ -51,13 +51,27 @@ sub configure { my ($self) = @_; - my $tabheight = $self->int_bwidth + $self->fheight + $self->lineSpace; + my $tab = $self->{cur}; - $self->{cur}->XMoveResizeWindow ( - $self->{cur}->parent, - 0, $tabheight, - $self->width, $self->height - $tabheight + $tab->XMoveResizeWindow ( + $tab->parent, + 0, $self->{tabheight}, + $self->width, $self->height - $self->{tabheight} ); + + my $wm_normal_hints = $self->XInternAtom ("WM_NORMAL_HINTS"); + + for my $atom ($tab->XListProperties ($tab->parent)) { + my ($type, $format, $items) = $self->XGetWindowProperty ($tab->parent, $atom); + + if ($atom == $wm_normal_hints) { + my (@hints) = unpack "l!*", $items; + + $hints[ 4] += $self->{tabheight}; + $hints[16] += $self->{tabheight}; + } + $self->XChangeWindowProperty ($self->parent, $atom, $type, $format, $items); + } } sub make_current { @@ -126,6 +140,8 @@ sub on_start { my ($self) = @_; + $self->{tabheight} = $self->int_bwidth + $self->fheight + $self->lineSpace; + $self->cmd_parse ("\x1b[?25l\x1b[?7l"); $self->new_tab; $self->new_tab;