summaryrefslogtreecommitdiff
path: root/Userland/Libraries
AgeCommit message (Collapse)Author
2021-06-03LibGUI: Hide TextEditor dbgln spew under TEXTEDITOR_DEBUGBrian Gianforcaro
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-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-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-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-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-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-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-02LibWasm: Ensure that value signs are preserved when castingAli Mohammad Pur
Also makes normal arithmetic operations more spec-compliant by actually ignoring overflow on them.
2021-06-02LibWasm: Parse the "extend" set of instructionsAli Mohammad Pur
2021-06-02LibWasm: Don't execute the last instruction in the frame after returnAli Mohammad Pur
2021-06-02wasm: Add a way to create dummy function exportsAli Mohammad Pur
This should allow running modules with their imports stubbed out in wasm, to debug them.
2021-06-02LibWasm: Implement reference instructions (ref.{null,func,is_null})Ali Mohammad Pur
2021-06-02LibJS: Add the String.prototype.trim{Left, Right} aliasesIdan Horowitz
These are the same as trim{Start, End} respectively.
2021-06-02LibJS: Fix indendation in CMakeLists.txtLinus Groh
2021-06-01LibCpp: Consider declarations inside a function's bodyItamar
... in FunctionDeclaration::declarations()
2021-06-01LibSQL: Return an error for empty common table expression listsTimothy Flynn
SQL::CommonTableExpressionList is required to be non-empty. Return an error if zero common table expressions were parsed. Fixes #7627
2021-06-01LibWeb: Use correct percent encode set for form submissionsLuke
We currently only support application/x-www-form-urlencoded for form submissions, which uses a special percent encode set when percent encoding the body/query. However, we were not using this percent encode set. With the new URL implementation, we can now specify the percent encode set to be used, allowing us to use this special percent encode set. This is one of the fixes needed to make the Google cookie consent work.
2021-06-01AK+LibWeb: Remove URL::to_string_encoded()Max Wipfli
This replaces URL::to_string_encoded() with to_string() and removes the former, since they are now equivalent.
2021-06-01Everywhere: codepoint => code pointAndreas Kling
2021-06-01AK: Rename Utf8CodepointIterator => Utf8CodePointIteratorAndreas Kling
2021-06-01LibGUI+Shell+bt+ls: Use proper APIs for creating file URLsMax Wipfli
This patch replaces ad-hoc generation of file URL strings with using URL::create_with_file_scheme().
2021-06-01LibHTTP: Percent encode/decode request URIMax Wipfli
This percent encodes/decodes the request URI when creating or parsing raw HTTP requests. This is necessary because AK::URL now contains percent decoded data, meaning we have to re-encode it for creating raw requests.
2021-06-01LibWeb: Remove usage of URL::set_path() in FrameLoaderMax Wipfli
This replaces a call to URL::set_path() with URL::set_paths(), as set_path() will be deprecated and removed.
2021-06-01AK: Remove URLParserMax Wipfli
This removes URLParser, because its two exposed functions, urlencode() and urldecode(), have been superseded by URL::percent_encode() and URL::percent_decode(). This is in preparation for the introduction of a new URL parser.
2021-06-01AK+Everywhere: Replace usages of URLParser::urlencode() and urldecode()Max Wipfli
This replaces all occurrences of those functions with the newly implemented functions URL::percent_encode() and URL::percent_decode(). The old functions will be removed in a further commit.
2021-06-01LibCore: Add StringView overloads for Core::ArgsParserAndreas Kling
These allow you to get StringView wrappers around on-stack string arguments, which seems pretty nice. :^)
2021-06-01LibPthread: Correct error check in `sem_post` and `sem_wait`Jelle Raaijmakers
2021-06-01LibGUI: Add a FIXME about race in AutocompleteBox::apply_suggestion()Itamar
2021-06-01LibGUI: Check that AutocompleteBox's selection row is validItamar
Previously we didn't check that the selection's row index is in a valid range before attempting to access its data via the model. This could cause an out-of-bounds access to the model's Vector of suggestions. I think this should fix #7404, but I can't verify it does because I wasn't able to reproduce it on my machine.
2021-06-01LibGUI/TreeView: Select parent on collapseJelle Raaijmakers
When collapsing a tree that contains the current selection, the parent node becomes selected instead.
2021-05-31LibJS: Add left shift & right shift operator support for BigIntegersIdan Horowitz
Based on https://tc39.es/ecma262/#sec-numeric-types-bigint-leftShift (This commit also includes the matching tests)
2021-05-31LibX86: Replace fprintf(stderr) with warnln()Linus Groh
2021-05-31LibWeb/WrapperGenerator: Replace a fprintf() with warnln()Linus Groh
2021-05-31LibRegex: Replace fprintf()/printf() with warnln()/outln()/dbgln()Linus Groh
2021-05-31LibHTTP: Replace fprintf(stderr) with warnln()Linus Groh
2021-05-31LibGUI: Replace fprintf(stderr)/printf() with warnln()/dbgln()Linus Groh
2021-05-31LibGfx: Replace if constexpr (PNG_DEBUG) printf() with dbgln_if()Linus Groh
The debug console seems more appropriate than stdout here.