>> >> Maybe this unasked-for default fallback is not needed after all: >> >> >> >> diff --git a/src/xdisp.c b/src/xdisp.c >> >> index f9a10267bad..18834c6b781 100644 >> >> --- a/src/xdisp.c >> >> +++ b/src/xdisp.c >> >> @@ -15155,8 +15155,6 @@ note_tab_bar_highlight (struct frame *f, int x, >> >> int y) >> >> help_echo_object = help_echo_window = Qnil; >> >> help_echo_pos = -1; >> >> help_echo_string = AREF (f->tab_bar_items, prop_idx + >> >> TAB_BAR_ITEM_HELP); >> >> - if (NILP (help_echo_string)) >> >> - help_echo_string = AREF (f->tab_bar_items, prop_idx + >> >> TAB_BAR_ITEM_CAPTION); >> >> } >> >> >> >> #endif /* HAVE_WINDOW_SYSTEM */ >> > >> > Do you remember why was this introduced? >> >> It was copy-pasted from tool-bar code. > > But on the tool bar there are no empty space between buttons. On the > tab bar, there is. What I don't understand is why those empty spaces > have tooltips. Because each tab-bar button has a valid, non-nil > tooltip, so the problem is with the tooltips popped up when the mouse > is between buttons. Do you understand why this happens?
When there is no TAB_BAR_ITEM_HELP, then it falls back to TAB_BAR_ITEM_CAPTION. But the tab bar doesn't need tooltips on spaces. So this patch is needed.