Захотелось много анимированных смайликов в Pidgin, благо готовых коллекций полно (для широко известного qip ).
Чуть подправил файл темы - Pidgin его подцепил.
Вроде бы всё хорошо - но при нажатии кнопки для отображения смайликов - рисуется огромное окно ( больше размера экрана ) - жутко тормозящее - где одновременно отображается 200 смайликов....
Виновных искать не интересно ( хотя можно вспомнить "тормознутость" GTK, HIG который не подсказал создателям добавить скролл...ну и кучу всего...может и создатели не думали о 200 анимированных смайлах...)
Не долго думая, чуть подправил исходники - вот результат:
#diff gtkimhtmltoolbar.c_back gtkimhtmltoolbar.c
815c815
< dialog = pidgin_create_dialog(_("Smile!"), 0, "smiley_dialog", FALSE);
---
> dialog = pidgin_create_dialog(_("Smile!"), 0, "smiley_dialog", TRUE);
850c850
< max_line_width = MAX(button_width, max_line_width / num_lines);
---
> max_line_width = 200;//MAX(button_width, max_line_width / num_lines);
875c875
< GTK_POLICY_NEVER, GTK_POLICY_NEVER);
---
> GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC);
903,905c903,905
< gtk_window_set_resizable(GTK_WINDOW(dialog), TRUE);
< gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW (scrolled),
< GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
---
> // gtk_window_set_resizable(GTK_WINDOW(dialog), TRUE);
> // gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW (scrolled),
> // GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
В результате - рисуется окно в 200 пикселей ( по идее надо как то рассчитывать, но не стал заморачиваться...) с вертикальным сроллом.
л
Я доволен )
p.s. Теперь понимаю что шлёт подруга
p.p.s. Не стандартные смайлы зло
ссзб