В проекте Ubuntu Accomplishments у нас есть несколько необычных ошибок:
А именно, что у нас есть окно с GtkNotebook и GtkIconView на странице и другое на другой странице.
Когда пользователь изменяет размеры окна, представление значков не заполняет пространство автоматически значками (они остаются в исходном макете столбца), но если пользователь изменяет страницы GtkNotebook и, таким образом, обновляет представление значков, пространство занимает ожидаемое место. Как мы можем автоматически использовать пространство при изменении размера окна?
Что еще более важно, так это то, что когда появляется окно, мы можем изменить его размер меньше - кажется, что иконка не позволяет нам изменить размер, а затем имеет область прокрутки для иконок.
Код выглядит так. ListStores, которые управляют IconViews:
self.trophystore = Gtk.ListStore(str, GdkPixbuf.Pixbuf, bool, bool, str, str) # title, icon accomplished, locked, app, accomplishment
self.trophystore.set_sort_column_id(COL_TITLE, Gtk.SortType.ASCENDING)
self.trophy_icon.set_model(self.trophystore)
self.oppstore = Gtk.ListStore(str, GdkPixbuf.Pixbuf, bool, bool, str, str) # title, icon, accomplished, locked, app, accomplishment
self.oppstore.set_sort_column_id(COL_TITLE, Gtk.SortType.ASCENDING)
self.opp_icon.set_model(self.oppstore)
self.trophy_icon.set_text_column(COL_TITLE)
self.trophy_icon.set_pixbuf_column(COL_PIXBUF)
self.opp_icon.set_text_column(COL_TITLE)
self.opp_icon.set_pixbuf_column(COL_PIXBUF)
Кроме этого, мы на самом деле не копаемся с IconViews, мы просто добавляем контент в ListStores для обновления представлений.
Код для проекта здесь - кто-нибудь может порекомендовать, как мы можем решить эти две проблемы?