mirror of
https://github.com/brl/mutter.git
synced 2024-11-21 15:40:41 -05:00
Instruct the GtkLabel in the tabpopup to ellipsize text that is too big.
2007-11-11 Alex R.M. Turner <armtuk@gmail.com> * src/tabpopup.c (tab_entry_new, meta_ui_tab_popup_new): Instruct the GtkLabel in the tabpopup to ellipsize text that is too big. Set the maximum window width of the tabpopup to screen_width/4, which seems a sensible size for the popup. svn path=/trunk/; revision=3385
This commit is contained in:
parent
6bec74017f
commit
bcc3f56193
@ -1,3 +1,10 @@
|
||||
2007-11-11 Alex R.M. Turner <armtuk@gmail.com>
|
||||
|
||||
* src/tabpopup.c (tab_entry_new, meta_ui_tab_popup_new): Instruct the
|
||||
GtkLabel in the tabpopup to ellipsize text that is too big. Set the
|
||||
maximum window width of the tabpopup to screen_width/4, which seems a
|
||||
sensible size for the popup.
|
||||
|
||||
2007-11-09 Elijah Newren <newren gmail com>
|
||||
|
||||
* src/window.c (meta_window_new_with_attrs): If a window is
|
||||
|
@ -145,11 +145,6 @@ tab_entry_new (const MetaTabEntry *entry,
|
||||
gboolean outline)
|
||||
{
|
||||
TabEntry *te;
|
||||
|
||||
/* FIXME: make max title size some random relationship to the
|
||||
* screen, avg char width of our font would be a better number.
|
||||
*/
|
||||
int max_chars_per_title = screen_width / 15;
|
||||
|
||||
te = g_new (TabEntry, 1);
|
||||
te->key = entry->key;
|
||||
@ -160,7 +155,7 @@ tab_entry_new (const MetaTabEntry *entry,
|
||||
gchar *tmp;
|
||||
gchar *formatter = "%s";
|
||||
|
||||
str = meta_g_utf8_strndup (entry->title, max_chars_per_title);
|
||||
str = meta_g_utf8_strndup (entry->title, 4096);
|
||||
|
||||
if (entry->hidden)
|
||||
{
|
||||
@ -377,6 +372,14 @@ meta_ui_tab_popup_new (const MetaTabEntry *entries,
|
||||
|
||||
/* remove all the temporary text */
|
||||
gtk_label_set_text (GTK_LABEL (popup->label), "");
|
||||
/* Make it so that we ellipsize if the text is too long */
|
||||
gtk_label_set_ellipsize (GTK_LABEL (popup->label), PANGO_ELLIPSIZE_END);
|
||||
|
||||
/* Limit the window size to no bigger than screen_width/4 */
|
||||
if (max_label_width>(screen_width/4))
|
||||
{
|
||||
max_label_width = screen_width/4;
|
||||
}
|
||||
|
||||
max_label_width += 20; /* add random padding */
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user