Ответ 1
Я всюду искал решение для GTK3, потому что был уверен, что это вызвано переключением на систему GTK3. Однако после двух часов напрасной траты времени я обнаружил, что "старый трюк с GTK2" просто работает.
Оригинальное сообщение на форуме находится здесь: http://ubuntuforums.org/showthread.php?t=1465712
Добавьте новый файл с именем .gtkrc-2.0
в свой домашний каталог со следующим содержимым:
style "gtkcompact" {
GtkButton::default_border={0,0,0,0}
GtkButton::default_outside_border={0,0,0,0}
GtkButtonBox::child_min_width=0
GtkButtonBox::child_min_heigth=0
GtkButtonBox::child_internal_pad_x=0
GtkButtonBox::child_internal_pad_y=0
GtkMenu::vertical-padding=1
GtkMenuBar::internal_padding=0
GtkMenuItem::horizontal_padding=4
GtkToolbar::internal-padding=0
GtkToolbar::space-size=0
GtkOptionMenu::indicator_size=0
GtkOptionMenu::indicator_spacing=0
GtkPaned::handle_size=4
GtkRange::trough_border=0
GtkRange::stepper_spacing=0
GtkScale::value_spacing=0
GtkScrolledWindow::scrollbar_spacing=0
GtkTreeView::vertical-separator=0
GtkTreeView::horizontal-separator=0
GtkTreeView::fixed-height-mode=TRUE
GtkWidget::focus_padding=0
}
class "GtkWidget" style "gtkcompact"
Перезапустите Eclipse.
Потраченное впустую пространство назад к эффективному использованию!
Обновление 2014-06
Теперь, когда я сам (наконец-то) перешел на Kepler, я обнаружил, что маленькие виджеты минимизации-максимизации больше не будут опускаться ниже 28 пикселей. Эти .gtkrc-2.0
кажется, имеют лучшие результаты для Kepler.
style "gtkcompact" {
GtkButton::defaultborder={0,0,0,0}
GtkButton::defaultoutsideborder={0,0,0,0}
GtkButtonBox::childminwidth=0
GtkButtonBox::childminheigth=0
GtkButtonBox::childinternalpadx=0
GtkButtonBox::childinternalpady=0
GtkMenu::vertical-padding=1
GtkMenuBar::internalpadding=0
GtkMenuItem::horizontalpadding=4
GtkToolbar::internal-padding=0
GtkToolbar::space-size=0
GtkOptionMenu::indicatorsize=0
GtkOptionMenu::indicatorspacing=2
GtkPaned::handlesize=4
GtkRange::troughborder=0
GtkRange::stepperspacing=0
GtkScale::valuespacing=0
GtkScrolledWindow::scrollbarspacing=0
GtkExpander::expandersize=10
GtkExpander::expanderspacing=0
GtkTreeView::vertical-separator=0
GtkTreeView::horizontal-separator=0
GtkTreeView::expander-size=8
GtkTreeView::fixed-height-mode=TRUE
GtkWidget::focuspadding=1
}
class "GtkWidget" style "gtkcompact"
style "gtkcompactextra" {
xthickness=2 ythickness=2
}
class "GtkButton" style "gtkcompactextra"
class "GtkToolbar" style "gtkcompactextra"
class "GtkPaned" style "gtkcompactextra"
Если вы добавите xthickness
и ythickness
ко всему классу GtkWidget
, ваша строка меню будет плотно сжата. Это слишком много на мой взгляд, но просто, чтобы вы знали.
Вы можете отредактировать файл и сохранить его, открыть что-нибудь простое, например Geany
, настроить сохранение, заново открыть Geany
и т.д., Чтобы быстро настроить его. Для получения подробной информации вы можете открывать Eclipse каждый раз, но загрузка займет больше времени, в зависимости от того, сколько плагинов вам нужно загрузить.
Обновление 2015-10-02
О Луне и Марсе
@eocanha сказал 15 января:
Если у вас установлен Gtk3, Eclipse Luna будет использовать систему стилей на основе Gtk3 CSS и будет игнорировать .gtkrc-2.0. Однако вы можете заставить Eclipse снова использовать Gtk2 (если он у вас установлен) через переменные окружения оболочки: "export SWT_GTK3 = 0" в вашем .bashrc или в каком-нибудь скрипте-оболочке, вызывающем Eclipse.
Первоисточник: https://bugs.eclipse.org/bugs/show_bug.cgi?id=420180