1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 02:37:42 +00:00
serenity/Userland/Libraries
Andreas Kling f25203f245 LibWeb: Don't re-resolve "auto" flex item sizes after definitizing them
This is rather subtle and points to our architecture around definite
sizes not being exactly right, but...

At some points during flexbox layout, the spec tells us that the sizes
of certain flex items are considered definite from this point on.
We implement this by marking each item's associated UsedValues as
"has-definite-width/height".

However, this breaks code that tries to resolve computed "auto" sizes
by taking the corresponding size from the containing block. The end
result was that the 1st sizing pass in flexbox would find the right size
for an "auto" sized item, but the 2nd pass would override the correct
size with the containing block's content size in that axis instead.

To work around the issue, FFC now remembers when it "definitizes" an
item, and future attempts to resolve an "auto" computed size for that
value will bypass the computed-auto-is-resolved-against-containing-block
step of the algorithm. It's not perfect, and we'll need to think more
about how to really represent these intermediate states relating to
box sizes being definite..
2022-09-14 14:43:17 +02:00
..
LibArchive Everywhere: Add sv suffix to strings relying on StringView(char const*) 2022-07-12 23:11:35 +02:00
LibAudio Base: Launch AudioServer at session start-up 2022-08-14 21:52:35 +01:00
LibC LibC: Consume all whitespace in scanf if present in format 2022-09-09 22:54:25 +01:00
LibCards LibCards: Remove card-back-image scaling 2022-08-22 12:50:41 +02:00
LibChess ChessEngine: Use reduced Board objects in MCTSTree 2022-08-22 21:20:41 +02:00
LibCodeComprehension Everywhere: Replace single-char StringView op. arguments with chars 2022-07-12 23:11:35 +02:00
LibCompress LibCompress: Write Deflate window size in the Zlib header 2022-07-10 13:52:18 +03:00
LibConfig Base: Launch ConfigServer at session start-up 2022-08-14 21:52:35 +01:00
LibCore Everywhere: Use my very shiny serenityos.org email :^) 2022-09-12 15:13:12 +01:00
LibCoredump Everywhere: Make the codebase more architecture aware 2022-07-27 21:46:42 +00:00
LibCpp Everywhere: Replace single-char StringView op. arguments with chars 2022-07-12 23:11:35 +02:00
LibCrypt Everywhere: Explicitly specify the size in StringView constructors 2022-07-12 23:11:35 +02:00
LibCrypto Everywhere: Fix a variety of typos 2022-09-14 04:46:49 +00:00
LibDebug Everywhere: Make the codebase more architecture aware 2022-07-27 21:46:42 +00:00
LibDesktop LibCore+LibIPC: Recognise %uid in path 2022-08-14 21:52:35 +01:00
LibDeviceTree Libraries: Add LibDeviceTree for manipulating OpenFirmware Device Trees 2021-10-21 19:20:03 -07:00
LibDiff Everywhere: Run clang-format 2022-04-01 21:24:45 +01:00
LibDNS Everywhere: Add sv suffix to strings relying on StringView(char const*) 2022-07-12 23:11:35 +02:00
LibDSP LibDSP: Add a fixed mastering processor to Track 2022-07-25 15:25:13 +02:00
LibEDID Kernel+Userland: Rename FB.h => Graphics.h 2022-07-23 10:42:08 +01:00
LibELF LibC: Move dlfcn_integration.h to the bits directory 2022-09-05 10:12:02 +01:00
LibFileSystemAccessClient Base: Launch FileSystemAccessServer at session start-up 2022-08-14 21:52:35 +01:00
LibGemini Everywhere: Replace single-char StringView op. arguments with chars 2022-07-12 23:11:35 +02:00
LibGfx Everywhere: Fix a variety of typos 2022-09-14 04:46:49 +00:00
LibGL LibGL: Simplify setting the color mask 2022-09-13 20:20:03 +02:00
LibGPU LibGL+LibGPU+LibSoftGPU: Report texture clamp to edge support 2022-09-11 22:37:07 +01:00
LibGUI Everywhere: Use my very shiny serenityos.org email :^) 2022-09-12 15:13:12 +01:00
LibHTTP LibHTTP+WebServer: Add querystring support 2022-08-02 21:05:32 +00:00
LibImageDecoderClient Base: Launch ImageDecoder at session start-up 2022-08-14 21:52:35 +01:00
LibIMAP Everywhere: Replace single-char StringView op. arguments with chars 2022-07-12 23:11:35 +02:00
LibIPC LibCore+LibIPC: Recognise %uid in path 2022-08-14 21:52:35 +01:00
LibJS Everywhere: Fix a variety of typos 2022-09-14 04:46:49 +00:00
LibKeyboard Everywhere: Add sv suffix to strings relying on StringView(char const*) 2022-07-12 23:11:35 +02:00
LibLine LibLine: Ignore empty spans when stylizing 2022-07-17 00:51:31 +00:00
LibLocale LibLocale: Move locale source files to the LibLocale library 2022-09-05 14:37:16 -04:00
LibM LibM: Implement fma 2022-07-08 22:27:38 +00:00
LibMain Everywhere: Explicitly specify the size in StringView constructors 2022-07-12 23:11:35 +02:00
LibMarkdown LibMarkdown: Add newline and remove ANSI escape after code blocks 2022-09-01 23:36:23 +00:00
LibPartition LibPartition: Fix end block off by one error 2022-07-21 20:13:44 +01:00
LibPCIDB Everywhere: Add sv suffix to strings relying on StringView(char const*) 2022-07-12 23:11:35 +02:00
LibPDF Everywhere: Replace single-char StringView op. arguments with chars 2022-07-12 23:11:35 +02:00
LibProtocol Base: Launch WebSocket at session start-up 2022-08-14 21:52:35 +01:00
LibRegex LibRegex: Account for eof after \<x> when 'x' leads to legacy behaviour 2022-09-12 16:03:57 +04:30
LibSanitizer Everywhere: Add sv suffix to strings relying on StringView(char const*) 2022-07-12 23:11:35 +02:00
LibSoftGPU LibSoftGPU: Reduce subpixel precision from 6 to 4 bits 2022-09-13 20:20:03 +02:00
LibSQL Base: Launch SQLServer at session start-up 2022-08-14 21:52:35 +01:00
LibSymbolication Everywhere: Make the codebase more architecture aware 2022-07-27 21:46:42 +00:00
LibSyntax Everywhere: Run clang-format 2022-04-01 21:24:45 +01:00
LibSystem Meta+Userland: Add ENABLE_USERSPACE_COVERAGE_COLLECTION CMake option 2022-05-02 01:46:18 +02:00
LibTest LibTest: Extract some useful functions from TestRunner.h 2022-09-11 20:25:51 +01:00
LibTextCodec Everywhere: Add sv suffix to strings relying on StringView(char const*) 2022-07-12 23:11:35 +02:00
LibThreading Everywhere: Prefix 'TYPEDEF_DISTINCT_ORDERED_ID' with 'AK_' 2022-07-22 23:09:43 +01:00
LibTimeZone Everywhere: Explicitly specify the size in StringView constructors 2022-07-12 23:11:35 +02:00
LibTLS Everywhere: Add sv suffix to strings relying on StringView(char const*) 2022-07-12 23:11:35 +02:00
LibUnicode LibUnicode: Parse and generate custom emoji added for SerenityOS 2022-09-11 20:33:57 +01:00
LibUSBDB Everywhere: Add sv suffix to strings relying on StringView(char const*) 2022-07-12 23:11:35 +02:00
LibVideo Everywhere: Add sv suffix to strings relying on StringView(char const*) 2022-07-12 23:11:35 +02:00
LibVT LibGUI+LibVT: Notify widgets of emoji selection with a callback 2022-09-11 20:33:57 +01:00
LibWasm Everywhere: Prefix 'TYPEDEF_DISTINCT_ORDERED_ID' with 'AK_' 2022-07-22 23:09:43 +01:00
LibWeb LibWeb: Don't re-resolve "auto" flex item sizes after definitizing them 2022-09-14 14:43:17 +02:00
LibWebSocket Everywhere: Replace single-char StringView op. arguments with chars 2022-07-12 23:11:35 +02:00
LibWebView Base: Launch WebContent at session start-up 2022-08-14 21:52:35 +01:00
LibX86 Everywhere: Fix a variety of typos 2022-09-14 04:46:49 +00:00
LibXML Everywhere: Add sv suffix to strings relying on StringView(char const*) 2022-07-12 23:11:35 +02:00
CMakeLists.txt LibLocale+LibUnicode: Move generated CLDR data files to LibLocale folder 2022-09-05 14:37:16 -04:00