Commit 122e0b40 authored by Matthias Clasen's avatar Matthias Clasen
Browse files

Improve GtkNotbook behaviour with too little space

This fixes bug 582488. The patch was provided by Morten Welinder.
parent f64ef8ea
......@@ -4981,12 +4981,15 @@ gtk_notebook_calculate_shown_tabs (GtkNotebook *notebook,
remaining_space, STEP_NEXT);
}
if (*remaining_space <= 0)
if (tab_space <= 0 || *remaining_space < 0)
{
/* show 1 tab */
notebook->first_tab = notebook->focus_tab;
*last_child = gtk_notebook_search_page (notebook, notebook->focus_tab,
STEP_NEXT, TRUE);
page = notebook->first_tab->data;
*remaining_space = tab_space - page->requisition.width;
*n = 1;
}
else
{
......@@ -5073,22 +5076,22 @@ gtk_notebook_calculate_shown_tabs (GtkNotebook *notebook,
TRUE);
}
}
}
if (*remaining_space < 0)
{
/* calculate number of tabs */
*remaining_space = - (*remaining_space);
*n = 0;
for (children = notebook->first_tab;
children && children != *last_child;
children = gtk_notebook_search_page (notebook, children,
STEP_NEXT, TRUE))
(*n)++;
}
else
*remaining_space = 0;
if (*remaining_space < 0)
{
/* calculate number of tabs */
*remaining_space = - (*remaining_space);
*n = 0;
for (children = notebook->first_tab;
children && children != *last_child;
children = gtk_notebook_search_page (notebook, children,
STEP_NEXT, TRUE))
(*n)++;
}
else
*remaining_space = 0;
}
/* unmap all non-visible tabs */
for (children = gtk_notebook_search_page (notebook, NULL,
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment