Mercurial > pidgin.yaz
view finch/libgnt/gntutils.h @ 17674:0e4a789cd027
We use a timeout in our blist selection changed callback to prevent buddy
list flickering when scrolling through the list, but this appears to be the
root cause of buddies sometimes being rendered "half height". Ticket #1511
managed to narrow it down to happening when collapsing (or expanding) a
group below the currently selected node, so I made it so the timeout is
only used when the new selection is not a group node. Fixes #1511
author | Stu Tomlinson <stu@nosnilmot.com> |
---|---|
date | Sun, 03 Jun 2007 18:22:15 +0000 |
parents | 5f204f55af09 |
children | 8410511f4dbb |
line wrap: on
line source
#include <glib.h> #include "gnt.h" #include "gntwidget.h" typedef gpointer (*GDupFunc)(gconstpointer data); void gnt_util_get_text_bound(const char *text, int *width, int *height); /* excluding *end */ int gnt_util_onscreen_width(const char *start, const char *end); const char *gnt_util_onscreen_width_to_pointer(const char *str, int len, int *w); /* Inserts newlines in 'string' where necessary so that its onscreen width is * no more than 'maxw'. * 'maxw' can be <= 0, in which case the maximum screen width is considered. * * Returns a newly allocated string. */ char *gnt_util_onscreen_fit_string(const char *string, int maxw); GHashTable *g_hash_table_duplicate(GHashTable *src, GHashFunc hash, GEqualFunc equal, GDestroyNotify key_d, GDestroyNotify value_d, GDupFunc key_dup, GDupFunc value_dup); /** * To be used with g_signal_new. Look in the key_pressed signal-definition in * gntwidget.c for usage. */ gboolean gnt_boolean_handled_accumulator(GSignalInvocationHint *ihint, GValue *return_accu, const GValue *handler_return, gpointer dummy); /** * Returns a GntTree populated with "key" -> "binding" for the widget. */ GntWidget *gnt_widget_bindings_view(GntWidget *widget); /** * Parse widgets from 'string'. */ void gnt_util_parse_widgets(const char *string, int num, ...);