From cacba45f1c615257c2c6a9f041e851e0ac030c13 Mon Sep 17 00:00:00 2001 From: Andreas Kling Date: Mon, 4 Feb 2019 11:37:15 +0100 Subject: [PATCH] LizaBold8x10: Import a bold variant of Liza8x10 and make it the default bold. Start using it right away for window titles. --- Base/res/fonts/LizaBold8x10.font | Bin 0 -> 10318 bytes SharedGraphics/Font.cpp | 26 +++++++++++++++++++++++++- SharedGraphics/Font.h | 1 + WindowServer/WSWindowManager.cpp | 7 ++++++- WindowServer/WSWindowManager.h | 5 +++++ 5 files changed, 37 insertions(+), 2 deletions(-) create mode 100644 Base/res/fonts/LizaBold8x10.font diff --git a/Base/res/fonts/LizaBold8x10.font b/Base/res/fonts/LizaBold8x10.font new file mode 100644 index 0000000000000000000000000000000000000000..23e9055a5f79db7d1cc5f42bef2f251e04be8fd5 GIT binary patch literal 10318 zcmY#%%PZmFVt@jl%&J7E{G1dhca$0pfzc2c4S~@RpmGREFfcG+!ys#5;vlve0|NsH z3xPNUa1H|l0|@_v(jYbnBlAHKB-Mk>z1*kU9{CsRglNa`1XG9LOvXhDjwb zFff2H$Q}>|$$>D)uOJLk2l5vv&OmVs!k{<>VUQRIgXBT#K>B1D7#O6W;Q`{KV~{$K zdXPR4hS?2L2eOZifq?-OMj&+{8ssJc1_lOD9E0?M)Ppc6y@2>2bq-KJ6fiI_fYKbO zp#jnhQU}8zbs#a2`7jI$JD5DkEim&yc7ogkO0yufAax*l7>20>nFrGkqG9?#{(xbS zy&&~4y&xJJADg-wsK1cS1*t>EAa{Z=NDM@SFo=zgL1ut3NE}3CQwI|VxgF$h5DiiX z5(nu+#vs3g_%Is8M#sqd(ZdI%7C9V1c7W^xVUQe%24N5zWXE9!1_luR%)r2K8;U_} zW(EcZQ2c<@fz%_L3DO4&Z)6No2U3qLhK&zWX8|qqKw*K7L1iFF9;8kVTAm`C31frG zEs#7&9mqY%=78))=7Z$1sRQXpRtI8()Pd{=xdX%pVNl+L*$WZ}$%E9v#9%bY9vB-& zgVce-j}Qi_1BEdtzOZ4Ce?escNZm1L*$xr|`GJptfdNE=_#k^h@*s5}x8uVg_kz?l zF)%QI^t@wWU;x!W*Pwim7z~5d!Pw^*7#Qv`Ffe>$U|@KLrWT|Q6h5GEf~iNQLE<2J zkUCI2f!qtjAU?W#LFz#2LHdx*0kJ{$gT#M;6hYG~%q$QMG7nq0fWjFh55mZK3B(6s zkUYppQ1}oNZy-JRFw8uVn~^cd?Jx}TBM5`+MOFi1gW>}eFQE7V@j>wgQip6O$PSQO zK{T>BHgzC1AhpOCqz>d?P@*s5}3{wL#3xq-D zf-uMq5C*9M`5PpL3xniA>OlHIZU^}f#3vWS`~fl#WG5-+fb0jk8&rpY+yTNMHpmQE zIDu$T+5^cUV~`j~9Wn-)2T}vl1HvFSNDQO~WDg93>;TCjV~`j~9Wn;#1*rk~5#2nH zI#68>@;68wh(^aCHOLrb2gp1a2Jt~|0_g{t55pk8!PFqrFtb4RfY=}!8wSaNFh~wY zgV^X8l%8OAf@qLkpmGmeJ_n^kbp7ajkX^_a)cykHHBg=dVNiYpVPrKRHX;9l)POK3 zoIq|w#vn0}95O~X55x!g4}_7`fx;izED#?QA0UjZ4x}HX4x}F$BdY)co?vVk4N6NOHOLsGA030-h^z+028AgMgUUcq9tX8YL2}3#rUn!j zAPkC|H^>U0Y>=HGcf;HUVuQq>(r^kShKxaO1BD$(JzNpAtqc+eg$c+^P`U$!0Z0vu z4-x}mQ22sq7zW9M)PXRFjSqv=fb=1&f!PTY1IdHbp<__Efzm#@_$Yrg1V%$(Gz3ON qU^E0qLtr!nMnhmU1V%$(Gz3ONU^E0qLtr!nMnhmU1V%$(Gz0)*0Lread_entire_file(*current); + ASSERT(buffer); + s_default_bold_font = Font::load_from_memory(buffer.pointer()).leak_ref(); +#endif + ASSERT(s_default_bold_font); + } + return *s_default_bold_font; +} + RetainPtr Font::clone() const { size_t bytes_per_glyph = glyph_width() * glyph_height(); diff --git a/SharedGraphics/Font.h b/SharedGraphics/Font.h index b32d672b1ff..0b560d822c4 100644 --- a/SharedGraphics/Font.h +++ b/SharedGraphics/Font.h @@ -9,6 +9,7 @@ class Font : public Retainable { public: static Font& default_font(); + static Font& default_bold_font(); RetainPtr clone() const; diff --git a/WindowServer/WSWindowManager.cpp b/WindowServer/WSWindowManager.cpp index c4fcf0d471f..7e039a94fd0 100644 --- a/WindowServer/WSWindowManager.cpp +++ b/WindowServer/WSWindowManager.cpp @@ -123,6 +123,11 @@ WSWindowManager::WSWindowManager() m_front_painter = make(*m_front_bitmap); m_back_painter = make(*m_back_bitmap); + m_font = Font::default_bold_font(); + + m_front_painter->set_font(font()); + m_back_painter->set_font(font()); + m_background_color = Color(50, 50, 50); m_active_window_border_color = Color(110, 34, 9); m_active_window_border_color2 = Color(244, 202, 158); @@ -159,7 +164,7 @@ void WSWindowManager::paint_window_frame(WSWindow& window) auto titlebar_title_rect = titlebar_inner_rect; - titlebar_title_rect.set_width(Font::default_font().glyph_width() * window.title().length()); + titlebar_title_rect.set_width(font().glyph_width() * window.title().length()); Rect inner_border_rect { window.x() - 1, diff --git a/WindowServer/WSWindowManager.h b/WindowServer/WSWindowManager.h index 3373dba2323..d55ea347917 100644 --- a/WindowServer/WSWindowManager.h +++ b/WindowServer/WSWindowManager.h @@ -39,6 +39,9 @@ public: void invalidate(); void flush(const Rect&); + Font& font() { return *m_font; } + const Font& font() const { return *m_font; } + private: WSWindowManager(); virtual ~WSWindowManager() override; @@ -98,6 +101,8 @@ private: OwnPtr m_back_painter; OwnPtr m_front_painter; + RetainPtr m_font; + mutable Lock m_lock; bool m_flash_flush { false };