Sfoglia il codice sorgente

LibGUI: Bias text towards bottom when tabs at top have uneven spacing

This makes the text on inactive tabs in Browser look a lil' bit nicer.
:^)
sin-ack 3 anni fa
parent
commit
a086be993b
1 ha cambiato i file con 7 aggiunte e 0 eliminazioni
  1. 7 0
      Userland/Libraries/LibGUI/TabWidget.cpp

+ 7 - 0
Userland/Libraries/LibGUI/TabWidget.cpp

@@ -218,6 +218,13 @@ void TabWidget::paint_event(PaintEvent& event)
         auto icon_rect_difference = icon_rect.top() - text_rect.top();
         text_rect.set_top(text_rect.top() + icon_rect_difference);
         text_rect.set_height(text_rect.height() - icon_rect_difference);
+
+        // ...unless our leftover height after text drawing is uneven, in which
+        // case we want to bias towards the bottom when the tab position is at
+        // the top.
+        if ((text_rect.height() - font().glyph_height()) % 2 != 0 && m_tab_position == TabPosition::Top) {
+            text_rect.set_top(text_rect.top() + 1);
+        }
     };
 
     for (size_t i = 0; i < m_tabs.size(); ++i) {