summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-06-03LibC: Switch ChunkedBlock to IntrusiveList from InlineLinkedListBrian Gianforcaro
2021-06-03AK: Remove unused JsonValue <=> IPv4Address conversion codeGunnar Beutner
This removes code that isn't used anywhere.
2021-06-03LibGUI: Hide TextEditor dbgln spew under TEXTEDITOR_DEBUGBrian Gianforcaro
2021-06-03TextEditor: Remove unused header includesBrian Gianforcaro
2021-06-03Solitaire: Add keys for drawing and moving cards to foundation stacksMatthew B. Jones
Also shifts logic of starting game length timer into function `start_timer_if_necessary`, so it can be called from original mouse event handler and new `auto_move_eligible_cards_to_stacks`
2021-06-03LibGUI: Properly wrap multiple lines in IconView search highlightingMatthew B. Jones
2021-06-03LibSQL: Report a syntax error for unsupported LIMIT clause syntaxTimothy Flynn
Rather than aborting when a LIMIT clause of the form 'LIMIT expr, expr' is encountered, fail the parser with a syntax error. This will be nicer for the user and fixes the following fuzzer bug: https://crbug.com/oss-fuzz/34837
2021-06-03WindowServer: Add sanity checks to `create_window` IPCMatthew Jones
2021-06-03LibGUI: ComboBox now goes upwards when running out of room to renderMatthew Jones
2021-06-03LibGUI: ComboBox now correctly sizes height in relation to taskbarMatthew Jones
2021-06-03LibGUI: Desktop.h should get actual value from TaskbarWindow.hMatthew Jones
2021-06-03WindowServer: Position popup menu with offset of 1 pixelMatthew Jones
2021-06-03AK: Allow inlining more string functionsGunnar Beutner
2021-06-03AK: Allow inlining ref-count functionalityGunnar Beutner
Previously we'd incur the costs for a function call via the PLT even for the most trivial ref-count actions like increasing/decreasing the reference count. By moving the code to the header file we allow the compiler to inline this code into the caller's function.
2021-06-03Solitaire: Add undo functionalityMatthew B. Jones
2021-06-03Profiler: Remove m_deepest_stack_depthGunnar Beutner
This isn't used anymore so let's remove it entirely.
2021-06-03Profiler: Use sequential serial numbers for profiling eventsGunnar Beutner
Previously Profiler was using timestamps to distinguish processes. However it is possible that separate processes with the same PID exist at the exact same timestamp (e.g. for execve). This changes Profiler to use unique serial numbers for each event instead.
2021-06-03LibGUI: Show pressed state for Space and Return key eventsMatthew Jones
Also allows the user to press Esc while the button is being pressed to cancel the button action.
2021-06-03Toolchain: Use gcc's arHediadyoin1
the vanilla versions might not handle all things, that gcc can do; For example is lto not really supported by the vanilla versions source: https://gcc.gnu.org/wiki/LinkTimeOptimizationFAQ
2021-06-03LibWasm: Use builtins for clz, ctz, and popcntBrandonKi
2021-06-03LibWasm: Implement rotr and rotlBrandonKi
2021-06-02LibGUI+LibGfx+WindowServer: Sanity check window size dimensionsMatthew Jones
Previous to this commit, if a `Window` wanted to set its width or height greater than `INT16_MAX` (32768), both the application owning the Window and the WindowServer would crash. The root of this issue is that `size_would_overflow` check in `Bitmap` has checks for `INT16_MAX`, and `Window.cpp:786` that is called by `Gfx::Bitmap::create_with_anonymous_buffer` would get null back, then causing a chain of events resulting in crashes. Crashes can still occur but with `VERIFY` and `did_misbehave` the causes of the crash can be more readily identified.
2021-06-02Toolchain: Set CMAKE_AR to the right executableOleg Kosenkov
2021-06-02HackStudio: Make locator lose focus on closeMarcus Nilsson
Make locator lose focus when pressing escape or by clicking in the editor area.
2021-06-02HackStudio: Remove unused includesMarcus Nilsson
2021-06-02HackStudio: Close locator on exitMarcus Nilsson
2021-06-02Hearts: Play the first valid card (left-to-right) when pressing spaceMatthew B. Jones
2021-06-02Kernel: Avoid allocations in the VMObject constructorGunnar Beutner
This avoids allocations in the VMObject constructor. The number of inline elements was determined empirically and covers most common cases including LibC malloc.
2021-06-02Kernel: Add operator delete for KStringGunnar Beutner
This doesn't change anything because our global operator delete also calls kfree() - however instead of relying on this implementation detail this makes this dependency more explicit.
2021-06-02LibGUI: Tooltip no longer exceeds screen width, now truncatesMatthew Jones
2021-06-02LibJS: Remove declarations of some TODO()'d BigInt and Promise functionsLinus Groh
In hindsight declaring these prematurely wasn't the greatest idea - that just makes any script checking for their existence believe they'll work, and what follows next is a crash of the js or WebContent process. If we omit the declarations, a polyfill can be provided instead. This also affects the test262, which tests these - instead of reporting a bunch of assertion crash errors, we should simply report test failure for 'not a function', which in turn makes it easier to spot any actual bugs causing crashes.
2021-06-02LibJS: Replace iterator hint string argument with an enumLinus Groh
There's no reason at all for this to be a string or to accept arbitrary values - just because it's displayed as strings in the spec doesn't mean we have to do the same :^)
2021-06-02LibRegex: Hide stray dbgln() behind REGEX_DEBUGLinus Groh
2021-06-02LibGUI: Fixes Widget->set_visible(false) still maintains focus bugMatthew Jones
When setting a Widget->set_visible(false), if that Widget->has_focus() it will continue to have focus, even though it's not visible to the user anymore. Now calling Widget->set_visible(false) will remove focus from the Widget if it had focus, and the Window will give focus back to the Widget that had it previously, if there was one.
2021-06-02TextEditor/GMLPlayground: Don't close app if user aborts save on exitMatthew Jones
2021-06-02KeyboardMapper: Add default path to keymapsNonStandardModel
2021-06-02LibC: Use memory_order_acquire instead of memory_order_acq_relGunnar Beutner
Acquire ordering should be sufficient for pthread_mutex_lock and pthread_mutex_trylock.
2021-06-02LibC: Fix race condition in pthread_mutex_unlock()Gunnar Beutner
This ensures the store to mutex->lock doesn't get re-ordered before the store to mutex->owner which could otherwise result in a locked owner-less mutex if another thread tries to acquire the lock at the same time.
2021-06-02LibC: Remove reinterpret_cast in pthread_mutex_{try,}lockGunnar Beutner
2021-06-02Terminal/LibGUI::TextEditor: Add shift+return to search forwardsMarcus Nilsson
This adds support for shift+return key combo in single line TextEditor fields. Used in this case for searching backwards/forwards in the Terminal find window.
2021-06-02Terminal: Remove unused includesMarcus Nilsson
2021-06-02Terminal: Close find & settings windows on application exitMarcus Nilsson
Since the find & settings windows are not children of the main window, they stayed open after exiting the application.
2021-06-02WindowServer: Use RefPtr instead of raw pointersGunnar Beutner
Now that we have static initializers and destructors we can use RefPtr here.
2021-06-02PixelPaint: Update Image.{cpp, h} to use east constMarco Cutecchia
2021-06-02PixelPaint: Support opening more image file formatsMarco Cutecchia
Previously we could only open .pp files, now we can open all formats supported by Gfx::Bitmap::load_from_file
2021-06-02Documentation: Correct some typos in kernel and browser docsSiddhant Rao
2021-06-02AK+LibWasm+LibJS: Disallow Variant.has() on types that aren't containedAli Mohammad Pur
Checking for this (and get()'ing it) is always invalid, so let's just disallow it. This also finds two bugs where the code is checking for types that can never actually be in the variant (which was actually a refactor artifact).
2021-06-02Kernel: Make KString non-copyable and non-movableGunnar Beutner
The user is supposed to hold these in an OwnPtr but bad things would happen if the user takes these out of the OwnPtr so let's make the class non-copyable and non-movable.
2021-06-02Kernel: Fix use-after-free in sys$mremapGunnar Beutner
Now that Region::name() has been changed to return a StringView we can't rely on keeping a copy of the region's name past the region's destruction just by holding a copy of the StringView.
2021-06-02Utilities: Add support for relative paths in open commandFilip Kania