Serenity Operating System
at master 55 lines 1.5 kB view raw
1/* 2 * Copyright (c) 2022, Andreas Kling <kling@serenityos.org> 3 * 4 * SPDX-License-Identifier: BSD-2-Clause 5 */ 6 7#include "FontPluginSerenity.h" 8#include <AK/DeprecatedString.h> 9#include <LibGfx/Font/FontDatabase.h> 10 11namespace Web::Platform { 12 13FontPluginSerenity::FontPluginSerenity() 14{ 15 // NOTE: These will eventually get replaced by system defaults. 16 Gfx::FontDatabase::set_default_font_query("Katica 10 400 0"); 17 Gfx::FontDatabase::set_fixed_width_font_query("Csilla 10 400 0"); 18} 19 20FontPluginSerenity::~FontPluginSerenity() = default; 21 22Gfx::Font& FontPluginSerenity::default_font() 23{ 24 return Gfx::FontDatabase::default_font(); 25} 26 27Gfx::Font& FontPluginSerenity::default_fixed_width_font() 28{ 29 return Gfx::FontDatabase::default_fixed_width_font(); 30} 31 32DeprecatedString FontPluginSerenity::generic_font_name(GenericFont generic_font) 33{ 34 // FIXME: Make these configurable at the browser settings level. Fall back to system defaults. 35 switch (generic_font) { 36 case GenericFont::SansSerif: 37 case GenericFont::UiSansSerif: 38 case GenericFont::Cursive: 39 case GenericFont::UiRounded: 40 return default_font().family(); 41 case GenericFont::Monospace: 42 case GenericFont::UiMonospace: 43 return default_fixed_width_font().family(); 44 case GenericFont::Serif: 45 case GenericFont::UiSerif: 46 return "Roman"; 47 case GenericFont::Fantasy: 48 return "Comic Book"; 49 case GenericFont::__Count: 50 VERIFY_NOT_REACHED(); 51 } 52 VERIFY_NOT_REACHED(); 53} 54 55}