summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-05-14Ports: Add thesilversearcher (ag)Raymond Lucke
2022-05-14Meta: Move compiler flags into standalone CMake filesLinus Groh
This way we can have all of them in a single place, similar to how we structure options added via the serenity_option() macro.
2022-05-13Ports: Set right launcher command for QuakeJelle Raaijmakers
By setting the absolute path for `launcher_command`, the menu item actually shows up. Provide an `icon_file` as well so it's pretty.
2022-05-13TextEditor: Allow typing AltGr+letter into editorPaweł Łukasik
Previous check did not allow AltGr+letter to be used due to AltGr being emulated as Ctrl+Alt. That caused .ctrl() to be true. In the new code we check that ctrl() is not set or if it is set, it is with altgr() and if so, we pass the character into the editor.
2022-05-13LibWeb: Add window.clientInformation propertyReimarPB
2022-05-13LibWeb: Don't treat any empty resources as errorsSam Atkins
HTML, CSS, JS and text files (among other things) can all legitimately be empty. Other types may be invalid, but that will be caught when trying to parse it as a document, so this check can safely be removed.
2022-05-13PixelPaint: Rebuild FilterGallery tree using TreeViewModelLinus Groh
2022-05-13LibGUI: Add TreeViewModel as a simpler interface for building TreeViewsLinus Groh
Having to subclass GUI::Model for even the simplest type of hand-built TreeView makes them a bit unpleasant to work with at the moment. :^) This adds such a GUI::Model subclass that is specifically designed for adding nodes to a TreeView manually, supporting text and an optional icon by default, and allowing for further data when subclassing the Node class.
2022-05-13Revert "FileManager: Reduce scope of some variables related to context…Sam Atkins
menu" This reverts commit 61dc48977832c7f705b9ccd29b74c9dd69ef5627. This commit was causing FileManager to crash whenever you selected to open a file using the context menu.
2022-05-13LibGUI: Make Dialog::ScreenPosition an enum classSam Atkins
2022-05-13LibGUI+Userland: Make Dialog::ExecResult an enum classSam Atkins
2022-05-13LibWeb: Make about:blank load correctlySam Atkins
- Don't treat an empty `about:blank` resource as an error. - Give `about:` urls a content-type so `FrameLoader::parse_document()` won't reject them.
2022-05-13FileManager: Check for write permission before enabling certain actionsofftkp
Upon DirectoryView selection change, check for write permission before enabling delete and cut. This disallows attempting to delete/cut and paste a file that you don't have write permission to by using keybinds. Fixes #13983.
2022-05-13Base: Add Contrast themeadoni
2022-05-13Meta: Move LibWeb's CMake generation script to its own fileDexesTTP
This patch has no functional changes, but prepares the CMake script to be able to handle LibWeb on Lagom.
2022-05-13LibDSP+Piano: Convert DSP APIs to accept entire sample rangeskleines Filmröllchen
This has mainly performance benefits, so that we only need to call into all processors once for every audio buffer segment. It requires adjusting quite some logic in most processors and in Track, as we have to consider a larger collection of notes and samples at each step. There's some cautionary TODOs in the currently unused LibDSP tracks because they don't do things properly yet.
2022-05-13LibDSP: Remove Transport's time counter reference APIkleines Filmröllchen
This is what the old Transport in Piano had, but as everyone just references Transport directly, there's no need for it anymore.
2022-05-13LibDSP: Make the note frequencies an AK::Array instead of a C arraykleines Filmröllchen
This was a leftover from the early days of Piano, and there's no reason to leave it that way especially if we want to use more complex collection APIs in the future.
2022-05-13LibDSP: Improve const correctnesskleines Filmröllchen
2022-05-13LibDSP: Refactor OOP non-functionallykleines Filmröllchen
* Don't inherit from Core::Object everywhere, that's overkill. Use RefCounted instead. * Change some constructor visibilites to facilitate the above. * default-implement all virtual destructors if possible. * Drive-by include hygiene.
2022-05-13LibWeb: Stop inactive requestAnimationFrame() callbacks from runningMacDue
Previously requestAnimationFrame() callbacks were registered with a static global RequestAnimationFrameDriver shared between all windows. This led to callbacks still running after navigating away from a page (This could be seen with the WASM GoL demo). This commit moves the RequestAnimationFrameDriver (now AnimationFrameCallbackDriver) to be a member of the HTML::Window object, then uses the 'active document' parameter of run_animation_frame_callbacks() to run only the active callbacks.
2022-05-12Kernel: Put code in the aarch64 init.cpp file into the Kernel namespaceTimon Kruiper
2022-05-12Kernel: Move __assertion_failed to aarch64/Panic.cppTimon Kruiper
This is for an upcoming change to add the Kernel namespace to the init.cpp file.
2022-05-12Kernel: Remove PREKERNEL_SOURCES from aarch64 CMakeLists.txtTimon Kruiper
2022-05-12Kernel: Use the Kernel UBSanitizer implementation in the aarch64 KernelTimon Kruiper
Now we actually print useful information when an UBSAN fault is detected. :^)
2022-05-12Kernel: Remove Prekernel namespace in the aarch64 KernelTimon Kruiper
Now that we merged all the Prekernel files into the Kernel files, we can get rid of the Prekernel namespace as well.
2022-05-12Kernel: Move the aarch64 boot.S out of the Prekernel directoryTimon Kruiper
2022-05-12Kernel: Move Prekernel{CPU, Exceptions}.cpp out of Prekernel directoryTimon Kruiper
This lets us delete the Prekernel.h file, and gets us closer to deleting the Prekernel from the aarch64 Kernel.
2022-05-12Kernel: Move Prekernel assembly utils to aarch64/ASM_wrapper.hTimon Kruiper
By moving these functions to the ASM_wrapper.h file, we can get rid of another Prekernel file.
2022-05-12Kernel: Replace Prekernel::halt with Processor::halt in aarch64 buildTimon Kruiper
This allows us to get rid of one more Prekernel file.
2022-05-12LibArchive: Use named members for ZIP general purpose flagsTim Schumacher
This fixes the faulty bit check that misclassified ZIPs as having data descriptors.
2022-05-12Ports: Update curl to 7.83.1Luke Wilde
2022-05-12LibCrypto: Add Ed25519stelar7
2022-05-12LibCrypto: Move Curve25519 related code into separate filestelar7
2022-05-12LibC: Add herror() and hstrerror()Michał Lach
2022-05-12LibC: Make h_errno thread-localMichał Lach
2022-05-12Ports/gcc: Update to version 12.1.0Daniel Bertalan
2022-05-12Toolchain: Upgrade to GCC 12.1.0Daniel Bertalan
This release brings support for various C++23 constructs like `if consteval` and multidimensional subscript operators. Vectorization is now enabled for O2 too, and `-ftrivial-auto-var-init` has been added which can help us find and prevent security issues coming from uninitialized variables. Toolchain/Patches/gcc.patch is now significanly smaller as some unused, autoconf-generated code has been removed.
2022-05-12LibC+Kernel: Prevent string functions from calling themselvesDaniel Bertalan
Most of the string.h and wchar.h functions are implemented quite naively at the moment, and GCC's pattern recognition pass might realize what we are trying to do, and transform them into libcalls. This is usually a useful optimization, but not when we're implementing the functions themselves :^) Relevant discussion from the GCC Bugzilla: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102725 This prevents the infamous recursive `strlen`. A more proper fix would be writing these functions in assembly. That would likely give a small performance boost as well ;)
2022-05-12Kernel: Do not implement VERIFY_NOT_REACHED() as VERIFY(false)Daniel Bertalan
If a switch case ends in VERIFY_NOT_REACHED(), gcc 12 thinks it might fall through.
2022-05-12AK+DHCPClient: Fix false positive gcc 12 warningsDaniel Bertalan
The compiler would complain about `__builtin_memcpy` in ByteBuffer::copy writing out of bounds, as it isn't able to deduce the invariant that the inline buffer is only used when the requested size is smaller than the inline capacity. The other change is more bizarre. If the destructor's declaration exists, gcc complains about a `delete` operation causing an out-of-bounds array access. error: array subscript 'DHCPv4Client::__as_base [0]' is partly outside array bounds of 'unsigned char [8]' [-Werror=array-bounds] 14 | ~DHCPv4Client() = default; | ^ This looks like a compiler bug, and I'll report it if I find a suitable reduced reproducer.
2022-05-12PixelPaint: Fix incorrect use of RefCounted CRTPDaniel Bertalan
I'm not even sure why this worked. How would the compiler know which type to destruct the FilterInfo object as? Fixes this janky error from gcc 12: AK/RefCounted.h:70:13: error: array subscript 0 is outside array bounds of 'void [56]' [-Werror=array-bounds] 70 | delete static_cast<const T*>(this); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2022-05-12Tests: Fix new GCC 12 warningsDaniel Bertalan
2022-05-12Ports: Add $STRIP and $HOST_STRIP variablesDaniel Bertalan
This fixes stripping the debug information from the gcc port when building on macOS hosts.
2022-05-12Ports/gcc: Install dependencies as portsDaniel Bertalan
This lets us remove a couple manual config.sub patches.
2022-05-12Ports: Enable ccache for SERENITY_TOOLCHAIN=ClangDaniel Bertalan
2022-05-12Ports: Add Integer Set Library (isl)Daniel Bertalan
This is a dependency of gcc.
2022-05-12DisplaySettings: Set window modified stateSam Atkins
2022-05-12TerminalSettings: Set window modified stateSam Atkins
2022-05-12MouseSettings: Set window modified stateSam Atkins