Isso ajuda um pouco:
gtk_widget_set_margin_top(GTK_WIDGET(statusbar), 0);
gtk_widget_set_margin_bottom(GTK_WIDGET(statusbar), 0);
Atualizei recentemente alguns programas para o gtk3 (plugin deadbeef gtk3, pcmanfm-gtk3, l3afpad) e há uma coisa que realmente me incomodava:
Por que a barra de status é três vezes maior do que a versão gtk2?
Não é claramente porque há mais informações ou uma fonte maior - o texto é o mesmo para as duas versões, é apenas uma margem de 10 px para a barra de status em gtk3. Então eu pensei "hey, gtk3 tem algum CSS legal, talvez eu possa ajustar isso com gtk.css oder settings.ini" - acontece que não, na verdade não. Qualquer coisa em gtk.css como
GtkStatusbar { margin:0px; margin-top:0px; margin-bottom:0px; }
não faz nada, infelizmente.
Então eu tentei brincar com o GtkInspector no pcmanfm. Quando eu seleciono todo o elemento Statusbar (você tem que selecionar o espaço entre os rótulos esquerdo e direito, apenas 10 px de largura) e eu verifico as propriedades, vejo um valor de 10 px para todas as margens definidas para GtkWidget (exceto para baixo e superior, esses são 6). Agora, se eu clicar duas vezes nesse valor e definir "all margins" para 0, ele me dará imediatamente uma barra de status gtk2 - alegra-te!
Então eu sei que é possível, mas eu não encontrei uma maneira de colocar isso no gtk.css. Eu fiquei desesperada o suficiente para tentar:
GtkWidget { margin:0px; margin-top:0px; margin-bottom:0px; }
mas eu realmente não esperava que funcionasse - então é claro que não funcionou.
Eu também tentei procurar soluções online, mas acabei com algumas dicas muito específicas para fazer o downgrade do eclipse de gtk3 para gtk2, a fim de economizar espaço na tela ou este patch para o engrampa que remove essas margens.
Inferno, pode ser que haja alguma GUI-Tool para o GNOME que faz isso em 5 segundos, e eu tenho procurado por coisas erradas o tempo todo.
Isso ajuda um pouco:
gtk_widget_set_margin_top(GTK_WIDGET(statusbar), 0);
gtk_widget_set_margin_bottom(GTK_WIDGET(statusbar), 0);