Начиная с последнего пакета обновления Linux Mint Debian, кнопки GTK3 внезапно нуждаются в большей ширине, чем раньше, чтобы они не помещались в приложение, которое я написал. Проблема в том, что они выделяют больше места вокруг метки кнопки (примерно по 25 пикселей с каждой стороны), и их нельзя убедить не делать этого.
Кнопка была создана с gtk_button_new_with_label, так что ничего особенного
Я пытался все, чтобы уменьшить это потерянное пространство, но ничего не получалось:
gtk_widget_set_size_request(GTK_WIDGET(mybutton),1,1); does nothing.
gtk_widget_set_margin_right(sidebar.button[i],0); decreases the spacing around the button, not inside.
gtk_container_set_border_width(GTK_CONTAINER(mybutton),0); decreases the spacing around the button, not inside.
что я пропустил?
Я предполагаю, что это определено в таблице стилей используемой вами темы. Вы можете попробовать переопределить стиль виджета, используя GtkCssProvider. Пример Python может выглядеть примерно так
my_style_provider = Gtk.CssProvider()
my_style_provider.load_from_data(b'GtkWidget { padding-left: 0; padding-right: 0; }')
context = widget.get_style_context()
context.add_provider(my_style_provider, Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION)
Примечание: не проверено.
Других решений пока нет …