summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-08-26CI: Cache downloaded Unicode CLDR databaseTimothy Flynn
2021-08-26LibUnicode: Download Unicode's CLDR database and generate locale dataTimothy Flynn
The Unicode standard publishes a database known as the Common Locale Data Repository (CLDR). This is a massive set of data from which anyone implementing Unicode's Technical Standard #35 may generate their implementation: https://www.unicode.org/reports/tr35/ This commit updates LibUnicode to download the compressed database and extract a small subset. That subset is used to generate a list of available locales and the territories (AKA regions) associated with each locale.
2021-08-26AK: Implement method to convert a String/StringView to title caseTimothy Flynn
This implementation preserves consecutive spaces in the orginal string.
2021-08-26FileManager: Change the cwd when opening a directoryTheFightingCatfish
The `open()` function of DirectoryView should change the current working directory, so that the "Go to Location" menu item can process relative paths correctly. Update other functions in DirectoryView to use `open()` when opening a directory.
2021-08-26FileManager: Remove "on activation" debug spamTheFightingCatfish
2021-08-26AK: Make explode_byte depend on sizeof(FlatPtr) instead of ARCH(...)Ali Mohammad Pur
The assumption that FlatPtr is 64-bit on every platform except i686 is not correct, and also makes the definition of explode_byte() less nice to look at.
2021-08-26Games: Remove unveiling /tmp/portal/configRalf Donau
Config::pledge_domains is applied before, hence /tmp/portal/config can and should be veiled.
2021-08-26FlappyBug: Use LibConfig instead of Core::ConfigFileRalf Donau
2021-08-26LibGL: Implement glTexEnvfStephan Unverwerth
This controls how fetched texels are combined with the color that was produced by a preceding texture unit or with the vertex color if it is the first texture unit. Currently only a small subset of possible combine modes is implemented as required by glquake.
2021-08-26LibGL: Implement glPixelStoreiStephan Unverwerth
This sets the length of a row for the image to be transferred. This value is measured in pixels. When a rectangle with a width less than this value is transferred the remaining pixels of this row are skipped.
2021-08-26Calculator: The equal key will now also finish the operationScott R. Parish
Prior to this if you typed "1+2=" you would not get the answer, instead you'd be left with "2" on the screen; Calculator wanted you to hit the enter key to get the answer. Now you can either use the enter or the equal key to finish the operation and get the answer.
2021-08-26Solitaire: Use LibConfig instead of Core::ConfigFileThitat Auareesuksakul
2021-08-26Chess: Use LibConfig instead of Core::ConfigFileThitat Auareesuksakul
2021-08-262048: Use LibConfig instead of Core::ConfigFileThitat Auareesuksakul
2021-08-26LibWeb: Make the base StyleValue::to_length() return an undefined lengthAndreas Kling
Previously it was returning an "auto" length. This caused all the new "initial" values to effectively turn into auto values long before layout had a chance to resolve them. This broke replaced elements with intrinsic size but no specified width or height, and is the reason that Mr. ACID2 temporarily lost his eyes.
2021-08-26LibWeb: Correct CSS initial values for min-width and min-heightAndreas Kling
The initial value for these is auto, not 0.
2021-08-26LibWeb: Remove unused CSS::StyleProperties::string_or_fallback()Andreas Kling
2021-08-26FileManager: Change read_i32 call to read_boolAndy Jansson
The FileManager/Window/Maximized flag was incorrectly read from the ConfigServer using read_i32 instead of the intended read_bool function call. It is now being read with the correct type :^)
2021-08-26Minesweeper: Use LibConfig instead of Core::ConfigFileAndreas Kling
2021-08-26Meta: Add Jesse Buhagiar to the contributors list :^)Andreas Kling
2021-08-26Browser: Use LibConfig instead of Core::ConfigFileAndreas Kling
2021-08-26TextEditor: Use LibConfig instead of Core::ConfigFileAndreas Kling
2021-08-26Terminal: Use Config::pledge_domains()Andreas Kling
2021-08-26FileManager: Use Config::pledge_domains()Andreas Kling
2021-08-26ConfigServer+LibConfig: Add pledge_domains() APIAndreas Kling
This API lets applications specify which configuration domains they will be accessing throughout their lifetime. It works similarly in spirit to the kernel's pledge(). You cannot pledge_domains() more than once, and once you have used it, it's no longer possible to access any other configuration domain. This is obviously just a first cut of this mechanism, and we may need to tweak it further as we go.
2021-08-26LibConfig: VERIFY that a Core::EventLoop exists before connectingAndreas Kling
It's not possible to connect to ConfigServer without having an event loop available. This VERIFY makes it much easier to understand why things are not working. :^)
2021-08-26LibCore: Add Core::EventLoop::has_been_instantiated()Andreas Kling
This static bool getter can be used to VERIFY that an event loop exists, in situations where one is expected. This is helpful if the absence of an event loop would generate strange and/or loud errors that don't immediately point to this as a cause.
2021-08-26Terminal+LibVT: Use LibConfig instead of Core::ConfigFileAndreas Kling
2021-08-26FileManager: Use LibConfig instead of Core::ConfigFile :^)Andreas Kling
2021-08-26Userland: Introduce ConfigServer and LibConfigAndreas Kling
ConfigServer is an IPC service that provides access to application configuration and settings. The idea is to replace all uses of Core::ConfigFile with IPC requests to ConfigServer. This first cut of the API is pretty similar to Core::ConfigFile. The old: auto config = Core::ConfigFile::open_for_app("App"); auto value = config->read_entry("Group", "Key"); The new: auto value = Config::read_string("App", "Group", "Key"); ConfigServer uses the ~/.config directory as its backing store and all the files remain human-editable. :^)
2021-08-26Tests: Test setjmp/sigsetjmp LibC functionsJean-Baptiste Boric
Since there are no real users of these functions in Serenity's userland and this is my third attempt at this... This time, the great LibTest test suite will make sure that I do it right!
2021-08-26LibC: Check for expected size of struct __jmp_bufJean-Baptiste Boric
This structure is accessed through assembly code inside setjmp.S, make some effort to ensure both header and assembly files are in sync.
2021-08-26LibC: Fix sigsetjmp on x86_64Jean-Baptiste Boric
Registers were clobbered, offset values into __jmp_buf were wrong...
2021-08-26LibC: Fix sigsetjmp on i686Jean-Baptiste Boric
Calling sigprocmask() through the PLT requires setting the ebx register to the address of the global offset table, otherwise chaos ensues. Also the value of the ecx register was assumed to be preserved across that function call despite the fact that it is caller-saved in the x86 calling convention.
2021-08-26ThemeEditor: Place menu quit action as the last itemKarol Kosek
No other applications put this action as the first item.
2021-08-26Base: Add a Game of Life WebAssembly demoAli Mohammad Pur
2021-08-26Base: Refer to WebAssembly as 'Wasm' and not 'WASM'Ali Mohammad Pur
2021-08-26LibWasm: Use Operators::BitShiftRight for i64.shruAli Mohammad Pur
Using a left-shift operator for a right shift operation is not exactly the most correct action :P
2021-08-25LibGL: Implement fog effect in Software RasterizerJesse Buhagiar
We support three of the possible fog modes, EXP, EXP2 and LINEAR.
2021-08-25LibGL: Implement `glFogi`Jesse Buhagiar
2021-08-25LibGL: Implement `glFogf`Jesse Buhagiar
2021-08-25LibGL: Implement `glFogfv`Jesse Buhagiar
This currently just sets the fog colour in the rasterizer.
2021-08-25LibWeb: Handle CSS "ch" length unit (mostly)Karol Kosek
This isn't 100% spec complaint, as it should use glyph_height() depending on what the value of the writing-mode is, but we haven't implemented it yet, so I think it'll be good enough for now. This can be tested in https://wpt.live/css/css-values/ch-unit-008.html Other css-unit tests fail as: - 001 shows an issue related to a renderer (looks to me like you can't pass a width and height property to a span -- adding `display: block` to it passes the test), - 002-004 and 009-012 use mentioned writing-mode, - 016-017 loads custom fonts, which we also don't support (yet).
2021-08-25HackStudio: Update the tree view cursor on editor change and 'Save as'Karol Kosek
The more important thing here is to update the tree view on 'Save As..', as we want to drop every connection from an old file. Updating the tree view on current editor change is just a cool small bonus. :^)
2021-08-25LibWeb: Implement CSS `unset` builtin valueSam Atkins
This is equivalent to `initial` or `inherit`, depending on if the property is inherited by default.
2021-08-25LibWeb: Intercept CSS `initial`/`inherit` values in StylePropertiesSam Atkins
When property() previously would have returned an InitialStyleValue, we now look up what the initial value would be, and return that instead. We also intercep 'inherit', but inheritance is not implemented yet so we just return nothing. This does cause a regression on Acid2: The eyes no longer appear, and I am not sure why. :^(
2021-08-25Base: Add cascade-keywords.html test page for CSS cascade keyword valuesSam Atkins
These are: - `initial` - `inherit` - `unset` Cascade4 and 5 also define `revert` and `revert-layer`, but let's not get ahead of ourselves. :^)
2021-08-25LibWeb: Generate property_initial_value() function from Properties.jsonSam Atkins
Since we have initial-value data in Properties.json already, it makes sense to use that instead of needing to duplicate the same information in ComputedValues.h However, converting a StyleValue to the kind of types used in InitialValues is non-trivial. So this may or may not actually be useful.
2021-08-25LibWeb: Add StyleValue to Forward.hSam Atkins
2021-08-25LibWeb: Quote all initial values in Properties.jsonSam Atkins
This is in preparation for parsing these into StyleValues automatically. Having them all be Strings makes the generation code simpler.