tw->tabs.topWidget->core.being_destroyed ) )
tw->tabs.topWidget = NULL ;
+ /* Check whether the highlight tab is still valid. */
+ if( tw->tabs.hilight != NULL &&
+ ( !XtIsManaged(tw->tabs.hilight) ||
+ tw->tabs.hilight->core.being_destroyed ) )
+ tw->tabs.hilight = NULL ;
+
GetPreferredSizes(tw) ;
MakeSizeRequest(tw) ;
if( !XtIsRealized(w) ) {
tw->tabs.topWidget = w ;
tw->tabs.needs_layout = True ;
+ tw->tabs.hilight = NULL; /* The highlight tab might disappear. */
return ;
}
#endif
tab = (TabsConstraints) w->core.constraints ;
+
+ /* Unhighlight before we start messing with the stacking order. */
+ if( tw->tabs.hilight != NULL )
+ {
+ DrawHighlight(tw, tw->tabs.hilight, True) ;
+ tw->tabs.hilight = NULL;
+ }
+
if( tab->tabs.row == 0 )
{
/* Easy case; undraw current top, undraw new top, assign new
if( XtIsRealized(t) && w != tw->tabs.hilight )
{
- if( tw->tabs.hilight != NULL )
- DrawHighlight(tw, tw->tabs.hilight, True) ;
if( w != NULL )
DrawHighlight(tw, w, False) ;
}