1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-10-29 01:12:33 +00:00
serenity/Userland/Libraries/LibGfx
Daniel Bertalan 7d11edbe17 Userland: Fix unnecessary heap allocation of singleton objects
In order to avoid having multiple instances, we were keeping a pointer
to these singleton objects and only allocating them when it was null.

We have `__cxa_guard_{acquire,release}` in the userland, so there's no
need to do this dance, as the compiler will ensure that the constructors
are only called once.
2022-01-28 23:31:00 +01:00
..
Filters PixelPaint+LibGfx: Add sepia color filter 2022-01-08 12:31:11 +01:00
TrueTypeFont LibGfx: Harden TTF parsing against fuzzers 2021-12-23 17:43:31 -08:00
AffineTransform.cpp
AffineTransform.h AK: Convert AK::Format formatting helpers to returning ErrorOr<void> 2021-11-17 00:21:13 +01:00
AntiAliasingPainter.cpp
AntiAliasingPainter.h
Bitmap.cpp Everywhere: Convert ByteBuffer factory methods from Optional -> ErrorOr 2022-01-24 22:36:09 +01:00
Bitmap.h LibGfx: Add support for "The Quite OK Image Format" (QOI) 2021-12-21 13:27:27 +01:00
BitmapFont.cpp LibGfx: Fix stylistic issues in BitmapFont 2022-01-22 00:26:23 +00:00
BitmapFont.h LibGfx+FontEditor: Add helper to determine raw glyph presence 2021-11-30 10:51:51 +01:00
BitmapMixer.cpp LibGfx: Add BitmapMixer 2022-01-04 21:41:14 +02:00
BitmapMixer.h LibGfx: Add BitmapMixer 2022-01-04 21:41:14 +02:00
BMPLoader.cpp Everywhere: Convert ByteBuffer factory methods from Optional -> ErrorOr 2022-01-24 22:36:09 +01:00
BMPLoader.h LibGfx: Make ImageDecoderPlugin::frame() return ErrorOr<> 2021-11-21 20:22:48 +01:00
BMPWriter.cpp Everywhere: Convert ByteBuffer factory methods from Optional -> ErrorOr 2022-01-24 22:36:09 +01:00
BMPWriter.h
CharacterBitmap.cpp
CharacterBitmap.h
ClassicStylePainter.cpp LibGUI: Allow Buttons to set themselves as default 2022-01-26 23:19:54 +01:00
ClassicStylePainter.h LibGUI: Allow Buttons to set themselves as default 2022-01-26 23:19:54 +01:00
ClassicWindowTheme.cpp Theming: Add alignment section 2022-01-01 22:51:53 +01:00
ClassicWindowTheme.h Everywhere: Fix spelling mistakes 2022-01-07 15:44:42 +01:00
CMakeLists.txt LibGfx: Add LumaFilter 2022-01-04 21:41:14 +02:00
Color.cpp LibIPC+IPCCompiler+AK: Make IPC value decoders return ErrorOr<void> 2021-11-28 23:14:19 +01:00
Color.h PixelPaint+LibGfx: Add sepia color filter 2022-01-08 12:31:11 +01:00
CursorParams.cpp Everywhere: Pass AK::StringView by value 2021-11-11 01:27:46 +01:00
CursorParams.h Everywhere: Pass AK::StringView by value 2021-11-11 01:27:46 +01:00
DDSLoader.cpp LibGfx: Make ImageDecoderPlugin::frame() return ErrorOr<> 2021-11-21 20:22:48 +01:00
DDSLoader.h LibGfx: Make ImageDecoderPlugin::frame() return ErrorOr<> 2021-11-21 20:22:48 +01:00
DisjointRectSet.cpp
DisjointRectSet.h
Emoji.cpp LibGfx: Use ErrorOr<T> for Bitmap::try_load_from_file() 2021-11-08 00:35:27 +01:00
Emoji.h
FillPathImplementation.h
Font.h LibGfx+FontEditor: Consolidate BitmapFont width and height limits 2021-11-30 10:51:51 +01:00
FontDatabase.cpp Userland: Fix unnecessary heap allocation of singleton objects 2022-01-28 23:31:00 +01:00
FontDatabase.h Everywhere: Pass AK::StringView by value 2021-11-11 01:27:46 +01:00
FontStyleMapping.h LibGUI: Add missing headers 2021-10-06 23:52:40 +01:00
Forward.h
Gamma.h
GIFLoader.cpp LibGfx: Use StringView for header constants in the GIF decoder 2021-11-21 20:22:48 +01:00
GIFLoader.h LibGfx: Make ImageDecoderPlugin::frame() return ErrorOr<> 2021-11-21 20:22:48 +01:00
ICOLoader.cpp LibGfx: Fix incorrect error handling in ICOLoader 2021-12-23 17:43:31 -08:00
ICOLoader.h LibGfx: Make ImageDecoderPlugin::frame() return ErrorOr<> 2021-11-21 20:22:48 +01:00
ImageDecoder.cpp LibGfx: Add support for "The Quite OK Image Format" (QOI) 2021-12-21 13:27:27 +01:00
ImageDecoder.h LibGfx: Make ImageDecoderPlugin::frame() return ErrorOr<> 2021-11-21 20:22:48 +01:00
JPGLoader.cpp LibGfx: Make ImageDecoderPlugin::frame() return ErrorOr<> 2021-11-21 20:22:48 +01:00
JPGLoader.h LibGfx: Make ImageDecoderPlugin::frame() return ErrorOr<> 2021-11-21 20:22:48 +01:00
Line.h LibGUI: Add missing headers 2021-10-06 23:52:40 +01:00
Matrix.h LibGfx+LibGL: Allow singular matrices to be inverted 2022-01-12 01:08:38 +01:00
Matrix3x3.h LibGfx: Add Matrix3x3 2021-12-30 14:24:29 +01:00
Matrix4x4.h
Orientation.h
Painter.cpp LibGfx: Add Painter::draw_triangle_wave() 2022-01-23 15:48:27 +03:30
Painter.h LibGfx: Add Painter::draw_triangle_wave() 2022-01-23 15:48:27 +03:30
Palette.cpp Theming: Add alignment section 2022-01-01 22:51:53 +01:00
Palette.h Theming: Add alignment section 2022-01-01 22:51:53 +01:00
Path.cpp
Path.h
PBMLoader.cpp LibGfx: Make ImageDecoderPlugin::frame() return ErrorOr<> 2021-11-21 20:22:48 +01:00
PBMLoader.h LibGfx: Make ImageDecoderPlugin::frame() return ErrorOr<> 2021-11-21 20:22:48 +01:00
PGMLoader.cpp LibGfx: Make ImageDecoderPlugin::frame() return ErrorOr<> 2021-11-21 20:22:48 +01:00
PGMLoader.h LibGfx: Make ImageDecoderPlugin::frame() return ErrorOr<> 2021-11-21 20:22:48 +01:00
PNGLoader.cpp Everywhere: Fix many spelling errors 2022-01-07 10:56:59 +01:00
PNGLoader.h LibGfx: Make ImageDecoderPlugin::frame() return ErrorOr<> 2021-11-21 20:22:48 +01:00
PNGWriter.cpp Everywhere: Convert ByteBuffer factory methods from Optional -> ErrorOr 2022-01-24 22:36:09 +01:00
PNGWriter.h
Point.cpp LibIPC+IPCCompiler+AK: Make IPC value decoders return ErrorOr<void> 2021-11-28 23:14:19 +01:00
Point.h LibIPC+IPCCompiler+AK: Make IPC value decoders return ErrorOr<void> 2021-11-28 23:14:19 +01:00
PortableImageLoaderCommon.h LibGfx: Remove load_FORMAT() image codec wrappers 2021-11-11 11:32:22 +01:00
PPMLoader.cpp LibGfx: Make ImageDecoderPlugin::frame() return ErrorOr<> 2021-11-21 20:22:48 +01:00
PPMLoader.h LibGfx: Make ImageDecoderPlugin::frame() return ErrorOr<> 2021-11-21 20:22:48 +01:00
QOILoader.cpp LibGfx: Keep alpha value of previous pixel for QOI_OP_RGB chunk 2021-12-22 01:12:51 +01:00
QOILoader.h LibGfx: Add support for "The Quite OK Image Format" (QOI) 2021-12-21 13:27:27 +01:00
Rect.cpp LibIPC+IPCCompiler+AK: Make IPC value decoders return ErrorOr<void> 2021-11-28 23:14:19 +01:00
Rect.h LibIPC+IPCCompiler+AK: Make IPC value decoders return ErrorOr<void> 2021-11-28 23:14:19 +01:00
ShareableBitmap.cpp LibIPC+IPCCompiler+AK: Make IPC value decoders return ErrorOr<void> 2021-11-28 23:14:19 +01:00
ShareableBitmap.h LibIPC+IPCCompiler+AK: Make IPC value decoders return ErrorOr<void> 2021-11-28 23:14:19 +01:00
Size.cpp LibIPC+IPCCompiler+AK: Make IPC value decoders return ErrorOr<void> 2021-11-28 23:14:19 +01:00
Size.h LibIPC+IPCCompiler+AK: Make IPC value decoders return ErrorOr<void> 2021-11-28 23:14:19 +01:00
StandardCursor.h
Streamer.h
StylePainter.cpp LibGUI: Allow Buttons to set themselves as default 2022-01-26 23:19:54 +01:00
StylePainter.h LibGUI: Allow Buttons to set themselves as default 2022-01-26 23:19:54 +01:00
SystemTheme.cpp Theming: Add alignment section 2022-01-01 22:51:53 +01:00
SystemTheme.h Theming: Add alignment section 2022-01-01 22:51:53 +01:00
TextAlignment.h Everywhere: Pass AK::StringView by value 2021-11-11 01:27:46 +01:00
TextAttributes.h LibGfx: Expand TextAttributes with more information about underlining 2022-01-23 15:48:27 +03:30
TextDirection.cpp
TextDirection.h LibGUI: Add missing headers 2021-10-06 23:52:40 +01:00
TextElision.h
TextLayout.cpp
TextLayout.h
TextWrapping.h
Triangle.cpp
Triangle.h
Typeface.cpp
Typeface.h
Vector2.h LibGfx: Add unary operator-() to Vector2/3/4 2022-01-18 01:48:51 +02:00
Vector3.h LibGfx: Add unary operator-() to Vector2/3/4 2022-01-18 01:48:51 +02:00
Vector4.h LibGfx: Add ::xyz() swizzle operator to Vector4 2022-01-18 01:48:51 +02:00
WindowTheme.cpp
WindowTheme.h Everywhere: Pass AK::StringView by value 2021-11-11 01:27:46 +01:00