diff options
38 files changed, 183 insertions, 191 deletions
diff --git a/Userland/Applications/Browser/CookieJar.cpp b/Userland/Applications/Browser/CookieJar.cpp index 7d6705bebd..67e7fcce7a 100644 --- a/Userland/Applications/Browser/CookieJar.cpp +++ b/Userland/Applications/Browser/CookieJar.cpp @@ -7,7 +7,6 @@ #include "CookieJar.h" #include <AK/IPv4Address.h> #include <AK/StringBuilder.h> -#include <AK/StringView.h> #include <AK/URL.h> #include <AK/Vector.h> #include <LibWeb/Cookie/ParsedCookie.h> @@ -49,9 +48,9 @@ void CookieJar::set_cookie(const URL& url, const Web::Cookie::ParsedCookie& pars void CookieJar::dump_cookies() const { - constexpr StringView key_color = "\033[34;1m"; - constexpr StringView attribute_color = "\033[33m"; - constexpr StringView no_color = "\033[0m"; + static const char* key_color = "\033[34;1m"; + static const char* attribute_color = "\033[33m"; + static const char* no_color = "\033[0m"; StringBuilder builder; builder.appendff("{} cookies stored\n", m_cookies.size()); diff --git a/Userland/Applications/Calendar/AddEventDialog.cpp b/Userland/Applications/Calendar/AddEventDialog.cpp index 53e47da257..9f972ea291 100644 --- a/Userland/Applications/Calendar/AddEventDialog.cpp +++ b/Userland/Applications/Calendar/AddEventDialog.cpp @@ -5,7 +5,6 @@ */ #include "AddEventDialog.h" -#include <AK/StringView.h> #include <LibCore/DateTime.h> #include <LibGUI/BoxLayout.h> #include <LibGUI/Button.h> @@ -21,6 +20,11 @@ #include <LibGfx/Font.h> #include <LibGfx/FontDatabase.h> +static const char* short_month_names[] = { + "Jan", "Feb", "Mar", "Apr", "May", "Jun", + "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" +}; + AddEventDialog::AddEventDialog(Core::DateTime date_time, Window* parent_window) : Dialog(parent_window) , m_date_time(date_time) @@ -117,11 +121,6 @@ String AddEventDialog::MonthListModel::column_name(int column) const GUI::Variant AddEventDialog::MonthListModel::data(const GUI::ModelIndex& index, GUI::ModelRole role) const { - constexpr StringView short_month_names[] = { - "Jan", "Feb", "Mar", "Apr", "May", "Jun", - "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" - }; - auto& month = short_month_names[index.row()]; if (role == GUI::ModelRole::Display) { switch (index.column()) { diff --git a/Userland/Applications/FontEditor/FontEditor.cpp b/Userland/Applications/FontEditor/FontEditor.cpp index 82d35d36e4..7aae6efb87 100644 --- a/Userland/Applications/FontEditor/FontEditor.cpp +++ b/Userland/Applications/FontEditor/FontEditor.cpp @@ -9,7 +9,6 @@ #include "GlyphMapWidget.h" #include "NewFontDialog.h" #include <AK/StringBuilder.h> -#include <AK/StringView.h> #include <AK/UnicodeUtils.h> #include <Applications/FontEditor/FontEditorWindowGML.h> #include <LibDesktop/Launcher.h> @@ -38,19 +37,19 @@ #include <LibGfx/TextDirection.h> #include <stdlib.h> +static constexpr int s_pangram_count = 7; +static const char* pangrams[s_pangram_count] = { + "quick fox jumps nightly above wizard", + "five quacking zephyrs jolt my wax bed", + "pack my box with five dozen liquor jugs", + "quick brown fox jumps over the lazy dog", + "waxy and quivering jocks fumble the pizza", + "~#:[@_1%]*{$2.3}/4^(5'6\")-&|7+8!=<9,0\\>?;", + "byxfjärmat föl gick på duvshowen" +}; + static RefPtr<GUI::Window> create_font_preview_window(FontEditorWidget& editor) { - constexpr int pangram_count = 7; - constexpr StringView pangrams[pangram_count] = { - "quick fox jumps nightly above wizard", - "five quacking zephyrs jolt my wax bed", - "pack my box with five dozen liquor jugs", - "quick brown fox jumps over the lazy dog", - "waxy and quivering jocks fumble the pizza", - "~#:[@_1%]*{$2.3}/4^(5'6\")-&|7+8!=<9,0\\>?;", - "byxfjärmat föl gick på duvshowen" - }; - auto window = GUI::Window::construct(); window->set_window_type(GUI::WindowType::ToolWindow); window->set_title("Font preview"); @@ -95,7 +94,7 @@ static RefPtr<GUI::Window> create_font_preview_window(FontEditorWidget& editor) reload_button.set_fixed_width(22); reload_button.on_click = [&] { static int i = 1; - if (i >= pangram_count) + if (i >= s_pangram_count) i = 0; preview_textbox.set_text(pangrams[i]); i++; diff --git a/Userland/Applications/HexEditor/FindDialog.cpp b/Userland/Applications/HexEditor/FindDialog.cpp index 668752fb92..e5ec83f429 100644 --- a/Userland/Applications/HexEditor/FindDialog.cpp +++ b/Userland/Applications/HexEditor/FindDialog.cpp @@ -5,9 +5,9 @@ */ #include "FindDialog.h" -#include <AK/Array.h> #include <AK/Hex.h> #include <AK/String.h> +#include <AK/Vector.h> #include <LibGUI/BoxLayout.h> #include <LibGUI/Button.h> #include <LibGUI/Label.h> @@ -19,12 +19,17 @@ #include <LibGfx/FontDatabase.h> struct Option { - StringView title; + String title; OptionId opt; bool enabled; bool default_action; }; +static const Vector<Option> options = { + { "ACII String", OPTION_ASCII_STRING, true, true }, + { "Hex value", OPTION_HEX_VALUE, true, false }, +}; + int FindDialog::show(GUI::Window* parent_window, String& out_text, ByteBuffer& out_buffer) { auto dialog = FindDialog::construct(); @@ -83,11 +88,6 @@ Result<ByteBuffer, String> FindDialog::process_input(String text_value, OptionId FindDialog::FindDialog() : Dialog(nullptr) { - constexpr Array options = { - Option { "ACII String", OPTION_ASCII_STRING, true, true }, - Option { "Hex value", OPTION_HEX_VALUE, true, false }, - }; - resize(280, 180 + ((static_cast<int>(options.size()) - 3) * 16)); center_on_screen(); set_resizable(false); @@ -113,7 +113,7 @@ FindDialog::FindDialog() radio.set_enabled(action.enabled); radio.set_text(action.title); - radio.on_checked = [&](auto) { + radio.on_checked = [this, i](auto) { m_selected_option = options[i].opt; }; diff --git a/Userland/Applications/SpaceAnalyzer/TreeMapWidget.cpp b/Userland/Applications/SpaceAnalyzer/TreeMapWidget.cpp index d5c47a1b64..00cdf6ee0a 100644 --- a/Userland/Applications/SpaceAnalyzer/TreeMapWidget.cpp +++ b/Userland/Applications/SpaceAnalyzer/TreeMapWidget.cpp @@ -5,7 +5,6 @@ */ #include "TreeMapWidget.h" -#include <AK/Array.h> #include <AK/NumberFormat.h> #include <LibGUI/Painter.h> #include <LibGUI/WindowServerConnection.h> @@ -25,7 +24,7 @@ TreeMapWidget::~TreeMapWidget() { } -static constexpr Array colors = { +static const Color colors[] = { Color(253, 231, 37), Color(148, 216, 64), Color(60, 188, 117), diff --git a/Userland/Applications/SpaceAnalyzer/main.cpp b/Userland/Applications/SpaceAnalyzer/main.cpp index 7688e6be95..e58324d462 100644 --- a/Userland/Applications/SpaceAnalyzer/main.cpp +++ b/Userland/Applications/SpaceAnalyzer/main.cpp @@ -9,7 +9,6 @@ #include <AK/Queue.h> #include <AK/QuickSort.h> #include <AK/RefCounted.h> -#include <AK/StringView.h> #include <AK/URL.h> #include <Applications/SpaceAnalyzer/SpaceAnalyzerGML.h> #include <LibCore/DirIterator.h> @@ -28,6 +27,8 @@ #include <sys/stat.h> #include <unistd.h> +static const char* APP_NAME = "Space Analyzer"; + struct TreeNode : public SpaceAnalyzer::TreeMapNode { TreeNode(String name) : m_name(move(name)) {}; @@ -252,8 +253,6 @@ static String get_absolute_path_to_selected_node(const SpaceAnalyzer::TreeMapWid int main(int argc, char* argv[]) { - constexpr StringView APP_NAME = "Space Analyzer"; - auto app = GUI::Application::construct(argc, argv); RefPtr<Tree> tree = adopt_ref(*new Tree("")); diff --git a/Userland/Demos/Fire/Fire.cpp b/Userland/Demos/Fire/Fire.cpp index b135d19d2c..5d5898cfe1 100644 --- a/Userland/Demos/Fire/Fire.cpp +++ b/Userland/Demos/Fire/Fire.cpp @@ -22,7 +22,6 @@ * [ ] handle fire bitmap edges better */ -#include <AK/Array.h> #include <LibCore/ElapsedTimer.h> #include <LibGUI/Action.h> #include <LibGUI/Application.h> @@ -39,9 +38,22 @@ #include <time.h> #include <unistd.h> -static constexpr auto FIRE_WIDTH = 320; -static constexpr auto FIRE_HEIGHT = 168; -static constexpr auto FIRE_MAX = 29; +#define FIRE_WIDTH 320 +#define FIRE_HEIGHT 168 +#define FIRE_MAX 29 + +static const Color s_palette[] = { + Color(0x07, 0x07, 0x07), Color(0x1F, 0x07, 0x07), Color(0x2F, 0x0F, 0x07), + Color(0x47, 0x0F, 0x07), Color(0x57, 0x17, 0x07), Color(0x67, 0x1F, 0x07), + Color(0x77, 0x1F, 0x07), Color(0x9F, 0x2F, 0x07), Color(0xAF, 0x3F, 0x07), + Color(0xBF, 0x47, 0x07), Color(0xC7, 0x47, 0x07), Color(0xDF, 0x4F, 0x07), + Color(0xDF, 0x57, 0x07), Color(0xD7, 0x5F, 0x07), Color(0xD7, 0x5F, 0x07), + Color(0xD7, 0x67, 0x0F), Color(0xCF, 0x6F, 0x0F), Color(0xCF, 0x7F, 0x0F), + Color(0xCF, 0x87, 0x17), Color(0xC7, 0x87, 0x17), Color(0xC7, 0x8F, 0x17), + Color(0xC7, 0x97, 0x1F), Color(0xBF, 0x9F, 0x1F), Color(0xBF, 0xA7, 0x27), + Color(0xBF, 0xAF, 0x2F), Color(0xB7, 0xAF, 0x2F), Color(0xB7, 0xB7, 0x37), + Color(0xCF, 0xCF, 0x6F), Color(0xEF, 0xEF, 0xC7), Color(0xFF, 0xFF, 0xFF) +}; class Fire : public GUI::Widget { C_OBJECT(Fire) @@ -68,24 +80,11 @@ private: Fire::Fire() { - constexpr Array palette = { - Color(0x07, 0x07, 0x07), Color(0x1F, 0x07, 0x07), Color(0x2F, 0x0F, 0x07), - Color(0x47, 0x0F, 0x07), Color(0x57, 0x17, 0x07), Color(0x67, 0x1F, 0x07), - Color(0x77, 0x1F, 0x07), Color(0x9F, 0x2F, 0x07), Color(0xAF, 0x3F, 0x07), - Color(0xBF, 0x47, 0x07), Color(0xC7, 0x47, 0x07), Color(0xDF, 0x4F, 0x07), - Color(0xDF, 0x57, 0x07), Color(0xD7, 0x5F, 0x07), Color(0xD7, 0x5F, 0x07), - Color(0xD7, 0x67, 0x0F), Color(0xCF, 0x6F, 0x0F), Color(0xCF, 0x7F, 0x0F), - Color(0xCF, 0x87, 0x17), Color(0xC7, 0x87, 0x17), Color(0xC7, 0x8F, 0x17), - Color(0xC7, 0x97, 0x1F), Color(0xBF, 0x9F, 0x1F), Color(0xBF, 0xA7, 0x27), - Color(0xBF, 0xAF, 0x2F), Color(0xB7, 0xAF, 0x2F), Color(0xB7, 0xB7, 0x37), - Color(0xCF, 0xCF, 0x6F), Color(0xEF, 0xEF, 0xC7), Color(0xFF, 0xFF, 0xFF) - }; - bitmap = Gfx::Bitmap::create(Gfx::BitmapFormat::Indexed8, { 320, 200 }); /* Initialize fire palette */ for (int i = 0; i < 30; i++) - bitmap->set_palette_color(i, palette[i]); + bitmap->set_palette_color(i, s_palette[i]); /* Set remaining entries to white */ for (int i = 30; i < 256; i++) diff --git a/Userland/Games/Breakout/Game.h b/Userland/Games/Breakout/Game.h index b5a246cd66..cf37e45427 100644 --- a/Userland/Games/Breakout/Game.h +++ b/Userland/Games/Breakout/Game.h @@ -14,8 +14,8 @@ class Game final : public GUI::Widget { C_OBJECT(Game); public: - static constexpr int game_width = 480; - static constexpr int game_height = 500; + static const int game_width = 480; + static const int game_height = 500; virtual ~Game() override; diff --git a/Userland/Games/Pong/Game.h b/Userland/Games/Pong/Game.h index a775aaf707..64a2be5b34 100644 --- a/Userland/Games/Pong/Game.h +++ b/Userland/Games/Pong/Game.h @@ -22,8 +22,8 @@ class Game final : public GUI::Widget { C_OBJECT(Game); public: - static constexpr int game_width = 560; - static constexpr int game_height = 480; + static const int game_width = 560; + static const int game_height = 480; virtual ~Game() override; diff --git a/Userland/Libraries/LibC/netdb.cpp b/Userland/Libraries/LibC/netdb.cpp index 33d17b5a21..77d0b790dd 100644 --- a/Userland/Libraries/LibC/netdb.cpp +++ b/Userland/Libraries/LibC/netdb.cpp @@ -36,7 +36,7 @@ static constexpr i32 lookup_server_endpoint_magic = 9001; // Get service entry buffers and file information for the getservent() family of functions. static FILE* services_file = nullptr; -static constexpr char services_path[] = "/etc/services"; +static const char* services_path = "/etc/services"; static bool fill_getserv_buffers(const char* line, ssize_t read); static servent __getserv_buffer; @@ -50,7 +50,7 @@ static ssize_t service_file_offset = 0; // Get protocol entry buffers and file information for the getprotent() family of functions. static FILE* protocols_file = nullptr; -static constexpr char protocols_path[] = "/etc/protocols"; +static const char* protocols_path = "/etc/protocols"; static bool fill_getproto_buffers(const char* line, ssize_t read); static protoent __getproto_buffer; diff --git a/Userland/Libraries/LibC/time.cpp b/Userland/Libraries/LibC/time.cpp index 738d8ea594..9add36bb76 100644 --- a/Userland/Libraries/LibC/time.cpp +++ b/Userland/Libraries/LibC/time.cpp @@ -70,9 +70,10 @@ char* ctime_r(const time_t* t, char* buf) return asctime_r(localtime_r(t, &tm_buf), buf); } +static const int __seconds_per_day = 60 * 60 * 24; + static void time_to_tm(struct tm* tm, time_t t) { - constexpr int __seconds_per_day = 60 * 60 * 24; int year = 1970; for (; t >= days_in_year(year) * __seconds_per_day; ++year) t -= days_in_year(year) * __seconds_per_day; diff --git a/Userland/Libraries/LibGUI/Calendar.cpp b/Userland/Libraries/LibGUI/Calendar.cpp index 0156109e43..229b036551 100644 --- a/Userland/Libraries/LibGUI/Calendar.cpp +++ b/Userland/Libraries/LibGUI/Calendar.cpp @@ -5,7 +5,6 @@ * SPDX-License-Identifier: BSD-2-Clause */ -#include <AK/Array.h> #include <LibCore/DateTime.h> #include <LibGUI/Calendar.h> #include <LibGUI/Painter.h> @@ -17,21 +16,21 @@ REGISTER_WIDGET(GUI, Calendar); namespace GUI { -static constexpr Array long_day_names = { +static const char* long_day_names[] = { "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" }; -static constexpr Array short_day_names = { "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" }; -static constexpr Array mini_day_names = { "Su", "Mo", "Tu", "We", "Th", "Fr", "Sa" }; -static constexpr Array micro_day_names = { "S", "M", "T", "W", "T", "F", "S" }; +static const char* short_day_names[] = { "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" }; +static const char* mini_day_names[] = { "Su", "Mo", "Tu", "We", "Th", "Fr", "Sa" }; +static const char* micro_day_names[] = { "S", "M", "T", "W", "T", "F", "S" }; -static constexpr Array long_month_names = { +static const char* long_month_names[] = { "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December" }; -static constexpr Array short_month_names = { +static const char* short_month_names[] = { "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" }; diff --git a/Userland/Libraries/LibGUI/CheckBox.cpp b/Userland/Libraries/LibGUI/CheckBox.cpp index 8de1c2f0a4..2cfd26d88c 100644 --- a/Userland/Libraries/LibGUI/CheckBox.cpp +++ b/Userland/Libraries/LibGUI/CheckBox.cpp @@ -15,9 +15,9 @@ REGISTER_WIDGET(GUI, CheckBox) namespace GUI { -static constexpr int s_box_width = 13; -static constexpr int s_box_height = 13; -static constexpr int s_horizontal_padding = 6; +static const int s_box_width = 13; +static const int s_box_height = 13; +static const int s_horizontal_padding = 6; CheckBox::CheckBox(String text) : AbstractButton(move(text)) diff --git a/Userland/Libraries/LibGUI/ColumnsView.cpp b/Userland/Libraries/LibGUI/ColumnsView.cpp index cef7c89cc4..4c198aa652 100644 --- a/Userland/Libraries/LibGUI/ColumnsView.cpp +++ b/Userland/Libraries/LibGUI/ColumnsView.cpp @@ -13,7 +13,7 @@ namespace GUI { -static constexpr char s_arrow_bitmap_data[] = { +static const char* s_arrow_bitmap_data = { " " " # " " ## " @@ -24,8 +24,8 @@ static constexpr char s_arrow_bitmap_data[] = { " # " " " }; -static constexpr int s_arrow_bitmap_width = 9; -static constexpr int s_arrow_bitmap_height = 9; +static const int s_arrow_bitmap_width = 9; +static const int s_arrow_bitmap_height = 9; ColumnsView::ColumnsView() { diff --git a/Userland/Libraries/LibGUI/FileIconProvider.cpp b/Userland/Libraries/LibGUI/FileIconProvider.cpp index 8015596798..bff9ed0b10 100644 --- a/Userland/Libraries/LibGUI/FileIconProvider.cpp +++ b/Userland/Libraries/LibGUI/FileIconProvider.cpp @@ -169,10 +169,7 @@ Icon FileIconProvider::icon_for_executable(const String& path) int image_size; }; - constexpr Array icon_sections = { - IconSection { .section_name = "serenity_icon_s", .image_size = 16 }, - IconSection { .section_name = "serenity_icon_m", .image_size = 32 } - }; + static const IconSection icon_sections[] = { { .section_name = "serenity_icon_s", .image_size = 16 }, { .section_name = "serenity_icon_m", .image_size = 32 } }; bool had_error = false; for (const auto& icon_section : icon_sections) { diff --git a/Userland/Libraries/LibGUI/ResizeCorner.cpp b/Userland/Libraries/LibGUI/ResizeCorner.cpp index 58ef6eb9c0..d4bb24455f 100644 --- a/Userland/Libraries/LibGUI/ResizeCorner.cpp +++ b/Userland/Libraries/LibGUI/ResizeCorner.cpp @@ -12,7 +12,7 @@ namespace GUI { -static constexpr char s_resize_corner_shadows_data[] = { +static const char* s_resize_corner_shadows_data = { " " " ## " " # " @@ -31,7 +31,7 @@ static constexpr char s_resize_corner_shadows_data[] = { " " }; -static constexpr char s_resize_corner_highlights_data[] = { +static const char* s_resize_corner_highlights_data = { " " " " " # " @@ -52,8 +52,8 @@ static constexpr char s_resize_corner_highlights_data[] = { static Gfx::CharacterBitmap* s_resize_corner_shadows_bitmap; static Gfx::CharacterBitmap* s_resize_corner_highlights_bitmap; -static constexpr int s_resize_corner_bitmap_width = 16; -static constexpr int s_resize_corner_bitmap_height = 16; +static const int s_resize_corner_bitmap_width = 16; +static const int s_resize_corner_bitmap_height = 16; ResizeCorner::ResizeCorner() { diff --git a/Userland/Libraries/LibGUI/Scrollbar.cpp b/Userland/Libraries/LibGUI/Scrollbar.cpp index 74703b9470..199443e136 100644 --- a/Userland/Libraries/LibGUI/Scrollbar.cpp +++ b/Userland/Libraries/LibGUI/Scrollbar.cpp @@ -15,7 +15,7 @@ REGISTER_WIDGET(GUI, Scrollbar) namespace GUI { -static constexpr char s_up_arrow_bitmap_data[] = { +static const char* s_up_arrow_bitmap_data = { " " " # " " ### " @@ -27,7 +27,7 @@ static constexpr char s_up_arrow_bitmap_data[] = { " " }; -static constexpr char s_down_arrow_bitmap_data[] = { +static const char* s_down_arrow_bitmap_data = { " " " ### " " ### " @@ -39,7 +39,7 @@ static constexpr char s_down_arrow_bitmap_data[] = { " " }; -static constexpr char s_left_arrow_bitmap_data[] = { +static const char* s_left_arrow_bitmap_data = { " " " # " " ## " @@ -51,7 +51,7 @@ static constexpr char s_left_arrow_bitmap_data[] = { " " }; -static constexpr char s_right_arrow_bitmap_data[] = { +static const char* s_right_arrow_bitmap_data = { " " " # " " ## " diff --git a/Userland/Libraries/LibGfx/ClassicStylePainter.cpp b/Userland/Libraries/LibGfx/ClassicStylePainter.cpp index 8fa1479e3d..6509350f58 100644 --- a/Userland/Libraries/LibGfx/ClassicStylePainter.cpp +++ b/Userland/Libraries/LibGfx/ClassicStylePainter.cpp @@ -354,7 +354,7 @@ void ClassicStylePainter::paint_radio_button(Painter& painter, const IntRect& re painter.blit(rect.location(), bitmap, bitmap.rect()); } -static constexpr char s_checked_bitmap_data[] = { +static const char* s_checked_bitmap_data = { " " " # " " ## " @@ -367,8 +367,8 @@ static constexpr char s_checked_bitmap_data[] = { }; static Gfx::CharacterBitmap* s_checked_bitmap; -static constexpr int s_checked_bitmap_width = 9; -static constexpr int s_checked_bitmap_height = 9; +static const int s_checked_bitmap_width = 9; +static const int s_checked_bitmap_height = 9; void ClassicStylePainter::paint_check_box(Painter& painter, const IntRect& rect, const Palette& palette, bool is_enabled, bool is_checked, bool is_being_pressed) { diff --git a/Userland/Libraries/LibGfx/Color.h b/Userland/Libraries/LibGfx/Color.h index 5c0b9b6aa1..f3f2f98a09 100644 --- a/Userland/Libraries/LibGfx/Color.h +++ b/Userland/Libraries/LibGfx/Color.h @@ -140,7 +140,7 @@ public: #endif } - Color interpolate(const Color& other, float weight) const + constexpr Color interpolate(const Color& other, float weight) const { u8 r = red() + roundf(static_cast<float>(other.red() - red()) * weight); u8 g = green() + roundf(static_cast<float>(other.green() - green()) * weight); diff --git a/Userland/Libraries/LibGfx/GIFLoader.cpp b/Userland/Libraries/LibGfx/GIFLoader.cpp index 7c1d55ba37..d8b60c0dbb 100644 --- a/Userland/Libraries/LibGfx/GIFLoader.cpp +++ b/Userland/Libraries/LibGfx/GIFLoader.cpp @@ -19,6 +19,10 @@ namespace Gfx { +// Row strides and offsets for each interlace pass. +static const int INTERLACE_ROW_STRIDES[] = { 8, 8, 4, 2 }; +static const int INTERLACE_ROW_OFFSETS[] = { 0, 4, 2, 1 }; + struct ImageDescriptor { u16 x { 0 }; u16 y { 0 }; @@ -108,8 +112,8 @@ enum class GIFFormat { static Optional<GIFFormat> decode_gif_header(InputMemoryStream& stream) { - constexpr char valid_header_87[] = "GIF87a"; - constexpr char valid_header_89[] = "GIF89a"; + static const char valid_header_87[] = "GIF87a"; + static const char valid_header_89[] = "GIF89a"; Array<u8, 6> header; stream >> header; @@ -374,8 +378,6 @@ static bool decode_frame(GIFLoadingContext& context, size_t frame_index) if (pixel_index % image.width == 0) { if (image.interlaced) { if (interlace_pass < 4) { - constexpr Array INTERLACE_ROW_STRIDES = { 8, 8, 4, 2 }; - constexpr Array INTERLACE_ROW_OFFSETS = { 0, 4, 2, 1 }; if (row + INTERLACE_ROW_STRIDES[interlace_pass] >= image.height) { ++interlace_pass; if (interlace_pass < 4) diff --git a/Userland/Libraries/LibGfx/JPGLoader.cpp b/Userland/Libraries/LibGfx/JPGLoader.cpp index d2b80a6f55..1c2aefc209 100644 --- a/Userland/Libraries/LibGfx/JPGLoader.cpp +++ b/Userland/Libraries/LibGfx/JPGLoader.cpp @@ -861,20 +861,20 @@ static void dequantize(JPGLoadingContext& context, Vector<Macroblock>& macrobloc static void inverse_dct(const JPGLoadingContext& context, Vector<Macroblock>& macroblocks) { - const float m0 = 2.0 * cos(1.0 / 16.0 * 2.0 * M_PI); - const float m1 = 2.0 * cos(2.0 / 16.0 * 2.0 * M_PI); - const float m3 = 2.0 * cos(2.0 / 16.0 * 2.0 * M_PI); - const float m5 = 2.0 * cos(3.0 / 16.0 * 2.0 * M_PI); - const float m2 = m0 - m5; - const float m4 = m0 + m5; - const float s0 = cos(0.0 / 16.0 * M_PI) / sqrt(8); - const float s1 = cos(1.0 / 16.0 * M_PI) / 2.0; - const float s2 = cos(2.0 / 16.0 * M_PI) / 2.0; - const float s3 = cos(3.0 / 16.0 * M_PI) / 2.0; - const float s4 = cos(4.0 / 16.0 * M_PI) / 2.0; - const float s5 = cos(5.0 / 16.0 * M_PI) / 2.0; - const float s6 = cos(6.0 / 16.0 * M_PI) / 2.0; - const float s7 = cos(7.0 / 16.0 * M_PI) / 2.0; + static const float m0 = 2.0 * cos(1.0 / 16.0 * 2.0 * M_PI); + static const float m1 = 2.0 * cos(2.0 / 16.0 * 2.0 * M_PI); + static const float m3 = 2.0 * cos(2.0 / 16.0 * 2.0 * M_PI); + static const float m5 = 2.0 * cos(3.0 / 16.0 * 2.0 * M_PI); + static const float m2 = m0 - m5; + static const float m4 = m0 + m5; + static const float s0 = cos(0.0 / 16.0 * M_PI) / sqrt(8); + static const float s1 = cos(1.0 / 16.0 * M_PI) / 2.0; + static const float s2 = cos(2.0 / 16.0 * M_PI) / 2.0; + static const float s3 = cos(3.0 / 16.0 * M_PI) / 2.0; + static const float s4 = cos(4.0 / 16.0 * M_PI) / 2.0; + static const float s5 = cos(5.0 / 16.0 * M_PI) / 2.0; + static const float s6 = cos(6.0 / 16.0 * M_PI) / 2.0; + static const float s7 = cos(7.0 / 16.0 * M_PI) / 2.0; for (u32 vcursor = 0; vcursor < context.mblock_meta.vcount; vcursor += context.vsample_factor) { for (u32 hcursor = 0; hcursor < context.mblock_meta.hcount; hcursor += context.hsample_factor) { diff --git a/Userland/Libraries/LibGfx/PNGLoader.cpp b/Userland/Libraries/LibGfx/PNGLoader.cpp index 4cb37a0714..31d62d9e5d 100644 --- a/Userland/Libraries/LibGfx/PNGLoader.cpp +++ b/Userland/Libraries/LibGfx/PNGLoader.cpp @@ -25,7 +25,7 @@ namespace Gfx { -static constexpr Array png_header = { 0x89, 'P', 'N', 'G', 13, 10, 26, 10 }; +static const u8 png_header[8] = { 0x89, 'P', 'N', 'G', 13, 10, 26, 10 }; struct PNG_IHDR { NetworkOrdered<u32> width; @@ -512,7 +512,7 @@ static bool decode_png_header(PNGLoadingContext& context) return false; } - if (memcmp(context.data, png_header.data(), sizeof(png_header)) != 0) { + if (memcmp(context.data, png_header, sizeof(png_header)) != 0) { dbgln_if(PNG_DEBUG, "Invalid PNG header"); context.state = PNGLoadingContext::State::Error; return false; @@ -661,14 +661,14 @@ static int adam7_width(PNGLoadingContext& context, int pass) } } +// Index 0 unused (non-interlaced case) +static int adam7_starty[8] = { 0, 0, 0, 4, 0, 2, 0, 1 }; +static int adam7_startx[8] = { 0, 0, 4, 0, 2, 0, 1, 0 }; +static int adam7_stepy[8] = { 1, 8, 8, 8, 4, 4, 2, 2 }; +static int adam7_stepx[8] = { 1, 8, 8, 4, 4, 2, 2, 1 }; + static bool decode_adam7_pass(PNGLoadingContext& context, Streamer& streamer, int pass) { - // Index 0 unused (non-interlaced case) - constexpr Array adam7_starty = { 0, 0, 0, 4, 0, 2, 0, 1 }; - constexpr Array adam7_startx = { 0, 0, 4, 0, 2, 0, 1, 0 }; - constexpr Array adam7_stepy = { 1, 8, 8, 8, 4, 4, 2, 2 }; - constexpr Array adam7_stepx = { 1, 8, 8, 4, 4, 2, 2, 1 }; - PNGLoadingContext subimage_context; subimage_context.width = adam7_width(context, pass); subimage_context.height = adam7_height(context, pass); diff --git a/Userland/Libraries/LibGfx/Painter.cpp b/Userland/Libraries/LibGfx/Painter.cpp index 1ccbbdcf43..89bec0cf58 100644 --- a/Userland/Libraries/LibGfx/Painter.cpp +++ b/Userland/Libraries/LibGfx/Painter.cpp @@ -1476,7 +1476,7 @@ void do_draw_text(const IntRect& rect, const TextType& text, const Font& font, T lines.append(line); } - constexpr int line_spacing = 4; + static const int line_spacing = 4; int line_height = font.glyph_height() + line_spacing; IntRect bounding_rect { 0, 0, 0, (static_cast<int>(lines.size()) * line_height) - line_spacing }; diff --git a/Userland/Libraries/LibJS/Runtime/NumberPrototype.cpp b/Userland/Libraries/LibJS/Runtime/NumberPrototype.cpp index cb935a09f5..cfc793ee09 100644 --- a/Userland/Libraries/LibJS/Runtime/NumberPrototype.cpp +++ b/Userland/Libraries/LibJS/Runtime/NumberPrototype.cpp @@ -5,7 +5,6 @@ */ #include <AK/Function.h> -#include <AK/StringView.h> #include <LibJS/Runtime/Error.h> #include <LibJS/Runtime/GlobalObject.h> #include <LibJS/Runtime/NumberObject.h> @@ -13,6 +12,17 @@ namespace JS { +static const u8 max_precision_for_radix[37] = { + // clang-format off + 0, 0, 52, 32, 26, 22, 20, 18, 17, 16, + 15, 15, 14, 14, 13, 13, 13, 12, 12, 12, + 12, 11, 11, 11, 11, 11, 11, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, + // clang-format on +}; + +static char digits[] = "0123456789abcdefghijklmnopqrstuvwxyz"; + NumberPrototype::NumberPrototype(GlobalObject& global_object) : NumberObject(0, *global_object.object_prototype()) { @@ -31,8 +41,6 @@ NumberPrototype::~NumberPrototype() JS_DEFINE_NATIVE_FUNCTION(NumberPrototype::to_string) { - constexpr StringView digits = "0123456789abcdefghijklmnopqrstuvwxyz"; - Value number_value; auto this_value = vm.this_value(global_object); @@ -99,14 +107,6 @@ JS_DEFINE_NATIVE_FUNCTION(NumberPrototype::to_string) if (decimal_part != 0.0) { characters.append('.'); - constexpr u8 max_precision_for_radix[37] = { - // clang-format off - 0, 0, 52, 32, 26, 22, 20, 18, 17, 16, - 15, 15, 14, 14, 13, 13, 13, 12, 12, 12, - 12, 11, 11, 11, 11, 11, 11, 10, 10, 10, - 10, 10, 10, 10, 10, 10, 10, - // clang-format on - }; u8 precision = max_precision_for_radix[radix]; for (u8 i = 0; i < precision; ++i) { diff --git a/Userland/Libraries/LibJS/Runtime/Value.cpp b/Userland/Libraries/LibJS/Runtime/Value.cpp index fef9fb123b..98a8c0eec2 100644 --- a/Userland/Libraries/LibJS/Runtime/Value.cpp +++ b/Userland/Libraries/LibJS/Runtime/Value.cpp @@ -37,7 +37,7 @@ namespace JS { // Used in various abstract operations to make it obvious when a non-optional return value must be discarded. -static constexpr double INVALID { 0 }; +static const double INVALID { 0 }; static inline bool same_type_for_equality(const Value& lhs, const Value& rhs) { diff --git a/Userland/Libraries/LibM/math.cpp b/Userland/Libraries/LibM/math.cpp index ed0a62ab50..1ce7cebb53 100644 --- a/Userland/Libraries/LibM/math.cpp +++ b/Userland/Libraries/LibM/math.cpp @@ -56,11 +56,11 @@ union FloatExtractor; // This assumes long double is 80 bits, which is true with GCC on Intel platforms template<> union FloatExtractor<long double> { - static constexpr int mantissa_bits = 64; - static constexpr unsigned long long mantissa_max = ~0u; - static constexpr int exponent_bias = 16383; - static constexpr int exponent_bits = 15; - static constexpr unsigned exponent_max = 32767; + static const int mantissa_bits = 64; + static const unsigned long long mantissa_max = ~0u; + static const int exponent_bias = 16383; + static const int exponent_bits = 15; + static const unsigned exponent_max = 32767; struct { unsigned long long mantissa; unsigned exponent : 15; @@ -72,11 +72,11 @@ union FloatExtractor<long double> { template<> union FloatExtractor<double> { - static constexpr int mantissa_bits = 52; - static constexpr unsigned long long mantissa_max = (1ull << 52) - 1; - static constexpr int exponent_bias = 1023; - static constexpr int exponent_bits = 11; - static constexpr unsigned exponent_max = 2047; + static const int mantissa_bits = 52; + static const unsigned long long mantissa_max = (1ull << 52) - 1; + static const int exponent_bias = 1023; + static const int exponent_bits = 11; + static const unsigned exponent_max = 2047; struct { unsigned long long mantissa : 52; unsigned exponent : 11; @@ -87,11 +87,11 @@ union FloatExtractor<double> { template<> union FloatExtractor<float> { - static constexpr int mantissa_bits = 23; - static constexpr unsigned mantissa_max = (1 << 23) - 1; - static constexpr int exponent_bias = 127; - static constexpr int exponent_bits = 8; - static constexpr unsigned exponent_max = 255; + static const int mantissa_bits = 23; + static const unsigned mantissa_max = (1 << 23) - 1; + static const int exponent_bias = 127; + static const int exponent_bits = 8; + static const unsigned exponent_max = 255; struct { unsigned long long mantissa : 23; unsigned exponent : 8; diff --git a/Userland/Libraries/LibPthread/forward.cpp b/Userland/Libraries/LibPthread/forward.cpp index f44e2ce329..5d7eae2bc5 100644 --- a/Userland/Libraries/LibPthread/forward.cpp +++ b/Userland/Libraries/LibPthread/forward.cpp @@ -6,24 +6,25 @@ #include <LibC/bits/pthread_forward.h> -[[gnu::constructor]] static void forward_pthread_functions() -{ - constexpr PthreadFunctions s_functions = { - .pthread_mutex_trylock = pthread_mutex_trylock, - .pthread_mutex_destroy = pthread_mutex_destroy, +static const PthreadFunctions s_functions = { + .pthread_mutex_trylock = pthread_mutex_trylock, + .pthread_mutex_destroy = pthread_mutex_destroy, + + .pthread_mutexattr_init = pthread_mutexattr_init, + .pthread_mutexattr_settype = pthread_mutexattr_settype, + .pthread_mutexattr_destroy = pthread_mutexattr_destroy, - .pthread_mutexattr_init = pthread_mutexattr_init, - .pthread_mutexattr_settype = pthread_mutexattr_settype, - .pthread_mutexattr_destroy = pthread_mutexattr_destroy, + .pthread_once = pthread_once, - .pthread_once = pthread_once, + .pthread_cond_broadcast = pthread_cond_broadcast, + .pthread_cond_init = pthread_cond_init, + .pthread_cond_signal = pthread_cond_signal, + .pthread_cond_wait = pthread_cond_wait, + .pthread_cond_destroy = pthread_cond_destroy, + .pthread_cond_timedwait = pthread_cond_timedwait, +}; - .pthread_cond_broadcast = pthread_cond_broadcast, - .pthread_cond_init = pthread_cond_init, - .pthread_cond_signal = pthread_cond_signal, - .pthread_cond_wait = pthread_cond_wait, - .pthread_cond_destroy = pthread_cond_destroy, - .pthread_cond_timedwait = pthread_cond_timedwait, - }; +[[gnu::constructor]] static void forward_pthread_functions() +{ __init_pthread_forward(s_functions); } diff --git a/Userland/Libraries/LibRegex/RegexMatcher.h b/Userland/Libraries/LibRegex/RegexMatcher.h index c6a30ff7be..4be02b2ec1 100644 --- a/Userland/Libraries/LibRegex/RegexMatcher.h +++ b/Userland/Libraries/LibRegex/RegexMatcher.h @@ -23,8 +23,8 @@ namespace regex { -static constexpr size_t c_max_recursion = 5000; -static constexpr size_t c_match_preallocation_count = 0; +static const constexpr size_t c_max_recursion = 5000; +static const constexpr size_t c_match_preallocation_count = 0; struct RegexResult final { bool success { false }; diff --git a/Userland/Libraries/LibVT/Attribute.h b/Userland/Libraries/LibVT/Attribute.h index 349fee689c..c5d154e5c0 100644 --- a/Userland/Libraries/LibVT/Attribute.h +++ b/Userland/Libraries/LibVT/Attribute.h @@ -16,8 +16,8 @@ namespace VT { struct Attribute { Attribute() { reset(); } - static constexpr u32 default_foreground_color = xterm_colors[7]; - static constexpr u32 default_background_color = xterm_colors[0]; + static const u32 default_foreground_color = xterm_colors[7]; + static const u32 default_background_color = xterm_colors[0]; void reset() { diff --git a/Userland/Libraries/LibWeb/Cookie/ParsedCookie.cpp b/Userland/Libraries/LibWeb/Cookie/ParsedCookie.cpp index f5a07bc667..10d37206a9 100644 --- a/Userland/Libraries/LibWeb/Cookie/ParsedCookie.cpp +++ b/Userland/Libraries/LibWeb/Cookie/ParsedCookie.cpp @@ -5,7 +5,6 @@ */ #include "ParsedCookie.h" -#include <AK/Array.h> #include <AK/StdLibExtras.h> #include <AK/Vector.h> #include <LibIPC/Decoder.h> @@ -265,7 +264,7 @@ Optional<Core::DateTime> parse_date_time(StringView date_string) }; auto parse_month = [&](StringView token) { - constexpr Array months { "jan", "feb", "mar", "apr", "may", "jun", "jul", "aug", "sep", "oct", "nov", "dec" }; + static const char* months[] { "jan", "feb", "mar", "apr", "may", "jun", "jul", "aug", "sep", "oct", "nov", "dec" }; for (unsigned i = 0; i < 12; ++i) { if (token.equals_ignoring_case(months[i])) { diff --git a/Userland/Libraries/LibX86/Instruction.cpp b/Userland/Libraries/LibX86/Instruction.cpp index cfcdd6b45a..a0d74c23cf 100644 --- a/Userland/Libraries/LibX86/Instruction.cpp +++ b/Userland/Libraries/LibX86/Instruction.cpp @@ -100,7 +100,7 @@ static void build(InstructionDescriptor* table, u8 op, const char* mnemonic, Ins case OP_AX_moff16: case OP_EAX_moff32: case OP_NEAR_imm: - d.imm1_bytes = InstructionDescriptor::CurrentAddressSize; + d.imm1_bytes = CurrentAddressSize; break; //default: case InvalidFormat: diff --git a/Userland/Libraries/LibX86/Instruction.h b/Userland/Libraries/LibX86/Instruction.h index f34e63ee53..b65b573e26 100644 --- a/Userland/Libraries/LibX86/Instruction.h +++ b/Userland/Libraries/LibX86/Instruction.h @@ -28,9 +28,9 @@ protected: template<typename T> struct TypeTrivia { - static constexpr size_t bits = sizeof(T) * 8; - static constexpr T sign_bit = 1 << (bits - 1); - static constexpr T mask = MakeUnsigned<T>(-1); + static const size_t bits = sizeof(T) * 8; + static const T sign_bit = 1 << (bits - 1); + static const T mask = MakeUnsigned<T>(-1); }; template<typename T, typename U> @@ -159,9 +159,9 @@ enum InstructionFormat { OP_NEAR_imm, }; -struct InstructionDescriptor { - static constexpr unsigned CurrentAddressSize = 0xB33FBABE; +static const unsigned CurrentAddressSize = 0xB33FBABE; +struct InstructionDescriptor { InstructionHandler handler { nullptr }; bool opcode_has_register_index { false }; const char* mnemonic { nullptr }; diff --git a/Userland/Services/Taskbar/ShutdownDialog.cpp b/Userland/Services/Taskbar/ShutdownDialog.cpp index 96289266ca..8bc39e1c50 100644 --- a/Userland/Services/Taskbar/ShutdownDialog.cpp +++ b/Userland/Services/Taskbar/ShutdownDialog.cpp @@ -5,7 +5,7 @@ */ #include "ShutdownDialog.h" -#include <AK/StringView.h> +#include <AK/String.h> #include <AK/Vector.h> #include <LibGUI/BoxLayout.h> #include <LibGUI/Button.h> @@ -17,7 +17,7 @@ #include <LibGfx/FontDatabase.h> struct Option { - StringView title; + String title; Vector<char const*> cmd; bool enabled; bool default_action; diff --git a/Userland/Services/WindowServer/Compositor.cpp b/Userland/Services/WindowServer/Compositor.cpp index c72db2926f..806ddca403 100644 --- a/Userland/Services/WindowServer/Compositor.cpp +++ b/Userland/Services/WindowServer/Compositor.cpp @@ -634,7 +634,7 @@ void Compositor::flip_buffers() void Compositor::run_animations(Gfx::DisjointRectSet& flush_rects) { - constexpr int minimize_animation_steps = 10; + static const int minimize_animation_steps = 10; auto& painter = *m_back_painter; Gfx::PainterStateSaver saver(painter); painter.set_draw_op(Gfx::Painter::DrawOp::Invert); diff --git a/Userland/Services/WindowServer/Menu.cpp b/Userland/Services/WindowServer/Menu.cpp index 910b6e8257..3d1562b332 100644 --- a/Userland/Services/WindowServer/Menu.cpp +++ b/Userland/Services/WindowServer/Menu.cpp @@ -55,7 +55,7 @@ const Gfx::Font& Menu::font() const return Gfx::FontDatabase::default_font(); } -static constexpr char s_checked_bitmap_data[] = { +static const char* s_checked_bitmap_data = { " " " # " " ## " @@ -67,7 +67,7 @@ static constexpr char s_checked_bitmap_data[] = { " " }; -static constexpr char s_submenu_arrow_bitmap_data[] = { +static const char* s_submenu_arrow_bitmap_data = { " " " # " " ## " @@ -80,12 +80,12 @@ static constexpr char s_submenu_arrow_bitmap_data[] = { }; static Gfx::CharacterBitmap* s_checked_bitmap; -static constexpr int s_checked_bitmap_width = 9; -static constexpr int s_checked_bitmap_height = 9; -static constexpr int s_submenu_arrow_bitmap_width = 9; -static constexpr int s_submenu_arrow_bitmap_height = 9; -static constexpr int s_item_icon_width = 16; -static constexpr int s_stripe_width = 24; +static const int s_checked_bitmap_width = 9; +static const int s_checked_bitmap_height = 9; +static const int s_submenu_arrow_bitmap_width = 9; +static const int s_submenu_arrow_bitmap_height = 9; +static const int s_item_icon_width = 16; +static const int s_stripe_width = 24; int Menu::content_width() const { diff --git a/Userland/Services/WindowServer/WindowManager.cpp b/Userland/Services/WindowServer/WindowManager.cpp index db9e69e55b..6ccdae3799 100644 --- a/Userland/Services/WindowServer/WindowManager.cpp +++ b/Userland/Services/WindowServer/WindowManager.cpp @@ -59,7 +59,7 @@ WindowManager::~WindowManager() NonnullRefPtr<Cursor> WindowManager::get_cursor(const String& name) { - constexpr auto s_default_cursor_path = "/res/cursors/arrow.x2y2.png"; + static const auto s_default_cursor_path = "/res/cursors/arrow.x2y2.png"; auto path = m_config->read_entry("Cursor", name, s_default_cursor_path); auto gb = Gfx::Bitmap::load_from_file(path, compositor_icon_scale()); if (gb) diff --git a/Userland/Utilities/ddate.cpp b/Userland/Utilities/ddate.cpp index d3c61264b9..09fae4abce 100644 --- a/Userland/Utilities/ddate.cpp +++ b/Userland/Utilities/ddate.cpp @@ -42,9 +42,9 @@ public: } private: - static constexpr int m_days_in_week = 5; - static constexpr int m_days_in_season = 73; - static constexpr int m_st_tibs_day_of_yold = 60; + static const int m_days_in_week = 5; + static const int m_days_in_season = 73; + static const int m_st_tibs_day_of_yold = 60; Core::DateTime m_gregorian_date; String m_day_of_week; String m_season; diff --git a/Userland/Utilities/lspci.cpp b/Userland/Utilities/lspci.cpp index 58d4fdbf4d..c71dd39cbb 100644 --- a/Userland/Utilities/lspci.cpp +++ b/Userland/Utilities/lspci.cpp @@ -8,7 +8,6 @@ #include <AK/JsonArray.h> #include <AK/JsonObject.h> #include <AK/String.h> -#include <AK/StringView.h> #include <LibCore/ArgsParser.h> #include <LibCore/File.h> #include <LibPCIDB/Database.h> @@ -17,8 +16,8 @@ static bool flag_show_numerical = false; -static constexpr StringView format_numerical = "{:04x}:{:02x}:{:02x}.{} {}: {}:{} (rev {:02x})"; -static constexpr StringView format_textual = "{:04x}:{:02x}:{:02x}.{} {}: {} {} (rev {:02x})"; +static const char* format_numerical = "{:04x}:{:02x}:{:02x}.{} {}: {}:{} (rev {:02x})"; +static const char* format_textual = "{:04x}:{:02x}:{:02x}.{} {}: {} {} (rev {:02x})"; int main(int argc, char** argv) { @@ -44,7 +43,7 @@ int main(int argc, char** argv) args_parser.add_option(flag_show_numerical, "Show numerical IDs", "numerical", 'n'); args_parser.parse(argc, argv); - const auto format = flag_show_numerical ? format_numerical : format_textual; + const char* format = flag_show_numerical ? format_numerical : format_textual; RefPtr<PCIDB::Database> db; if (!flag_show_numerical) { |