summaryrefslogtreecommitdiff
path: root/Userland/Libraries
AgeCommit message (Collapse)Author
2022-02-07LibGUI: Remove GML prefix in favor of proper namespacekleines Filmröllchen
Prefixes are very much a C thing which we don't need in C++. This commit moves all GML-related classes in LibGUI into the GUI::GML namespace, a change somewhat overdue.
2022-02-07LibGfx: Return proper ColorRole for GutterBordersthankyouverycool
2022-02-07LibGUI: Simplify DisplayOnly painting for TextEditorthankyouverycool
2022-02-07LibGUI: Fix typo in TextEditor::paint_eventthankyouverycool
2022-02-07LibGUI+TextEditor: Highlight the entire current linethankyouverycool
And fix Line Highlighting's duplicate alt-menu shortcut. Previously only text on the cursor's line was highlighted. This makes discerning cursor focus on empty lines easier.
2022-02-07LibGUI: Adjust TextEditor's clipping rect for textthankyouverycool
And simplify its construction. The first visual line was being over-clipped vertically by an amount equal to the frame's thickness. Selections and icons in TextBoxes and the first line of Editors now display correctly.
2022-02-07LibGUI: Register gutter and ruler GML properties for TextEditorthankyouverycool
2022-02-07LibJS: Add spec comments to the NativeError constructorLinus Groh
2022-02-07LibJS: Add spec comments to the Error constructorLinus Groh
2022-02-07LibJS: Add spec comments to Error.prototype.toString()Linus Groh
2022-02-07LibJS: Let Error prototypes inherit from PrototypeObjectLinus Groh
2022-02-07LibJS: Implement non standard error.stack attributeHendiadyoin1
All other browser already support this feature. There is a Stage 1 proposal to standardize this, but it does not seem to be active.
2022-02-07LibWeb: Rename "result" => "evaluation_status" in ClassicScript::run()Andreas Kling
This matches the variable name used in the spec.
2022-02-07LibWeb: Remove outdated FIXME from ClassicScript::run()Andreas Kling
Interpreter::run() *does* now return a Completion. :^)
2022-02-07LibWeb: Implement ErrorEventLuke Wilde
This will be used by the new EventTarget to check if it needs to do special error event handling. Currently it isn't used for anything else.
2022-02-07LibJS: Fix JSON.stringify with stale surrogate codepointsJorropo
This fix this test262 test: built-ins/JSON/stringify/value-string-escape-unicode.js
2022-02-07LibWeb: Dispatch a click event after mousedown+mouseup on same targetAndreas Kling
2022-02-07LibWeb: Add MouseEvent.x and MouseEvent.yAndreas Kling
Per the CSSOM View spec, these are aliases for clientX and clientY.
2022-02-07LibGUI: Paint GUI::TextEditor's optional icon before applying text clipAndreas Kling
We were chopping the top row of pixels off of the website favicons in Browser's location editor. :^)
2022-02-07LibJS: Use GetV to look up the toJSON property in SerializeJSONPropertyTimothy Flynn
The current implementation of step 2a sort of manually implemented GetV with a ToObject + Get combo. But in the call to Get, the receiver wasn't the correct object. So when invoking toJSON, the receiver was an Object type rather than a BigInt. This also adds spec comments to SerializeJSONProperty.
2022-02-07LibWeb: Fix broken step 4.3 implementation in run_focus_update_steps()Andreas Kling
Some over-eager copy-pasting led to incorrect code for the new chain.
2022-02-07LibWeb: Use NonnullRefPtrVector<DOM::Node> for focus chainsAndreas Kling
Let's just use reference-counting pointers for this, even if it seems safe not to.
2022-02-07LibWeb: Improve step 3 of "focus chain" from the HTML specAndreas Kling
This function was unnecessarily nested, which created a scenario where we could get stuck in an infinite loop without advancing the current_object pointer up the browsing context container chain.
2022-02-07LibWeb: Fix inverted null check in run_focusing_steps()Andreas Kling
Thanks to U9G for catching this! :^)
2022-02-07LibWeb: Add a proper FocusEvent interface for "focus" and "blur" eventsAndreas Kling
2022-02-06Everywhere: Rename JS::PropertyKey variables from property_{name => key}Linus Groh
PropertyKey used to be called PropertyName, but got renamed. Let's update all the variables of this type as well.
2022-02-06LibWeb: Update focus target when handling mousedown eventsAndreas Kling
If the mousedown event hits something with is_focusable()==true, we now update the document's focused element *instead* of placing the text cursor at the focusable element. This allows you to begin editing input elements by clicking them. This feels very hackish and we'll need to come up with something nicer.
2022-02-06LibWeb: Move is_focusable() virtual from Element to EventTargetAndreas Kling
2022-02-06LibWeb: Make HTMLInputElement move cursor into text node when focusedAndreas Kling
This mechanism feels rather awkward, but it's better than nothing.
2022-02-06LibWeb: Plumb OOPWV focus state across the IPC boundaryAndreas Kling
This makes focus outlines show up in OOPWV at last! :^)
2022-02-06LibWeb: Implement (most of) HTMLElement.focus()Andreas Kling
The main deviation from the spec is that we don't have a straightforward representation of the spec's "focusable area" concept. I've left a bunch of FIXME's around for our future selves. :^)
2022-02-06LibWeb: Implement BrowsingContext::currently_focused_area()Andreas Kling
This is "currently focused area of a top level browsing context" from the HTML spec.
2022-02-06LibWeb: Implement SVG `S` (SmoothCurve) commandsSam Atkins
These were being parsed, but skipped when rendering. With this fix, the SVG on discord's invite screen looks pretty nice! :^)
2022-02-06LibWeb: Don't dump all stylesheets with CSS_PARSER_DEBUG enabledSam Atkins
Browser has a handy debug menu option to dump all stylesheets, so we don't need to spam the console with this. (All the spam massively slows down page loads.)
2022-02-06AK: Move integral log2 and exp to IntegerMath.hHendiadyoin1
2022-02-06LibCore+Userland: Remove Core::TCPSocket :^)sin-ack
This was deprecated in favor of Core::Stream::TCPSocket, and now has no users.
2022-02-06LibJS: Implement BigInt.asUintNTimothy Flynn
2022-02-06LibJS: Implement BigInt.asIntNTimothy Flynn
2022-02-06LibJS: Enable Temporal tests that now passTimothy Flynn
These pass now that negative zero is disallowed by SignedBigInteger.
2022-02-06LibCrypto: Do not allow signed big integers to be negative zeroTimothy Flynn
If a big integer were to become negative zero, set the sign to instead be positive. This prevents odd scenarios where users of signed big ints would falsely think the result of some big int arithmetic is negative.
2022-02-06LibJS: Mark Completion constructors with ALWAYS_INLINEAndreas Kling
These were showing up in profiles.
2022-02-06LibWeb: Rename "frame" to "browsing_context" in various placesAndreas Kling
We renamed the Frame class to BrowsingContext a while back, but forgot to update some variable names.
2022-02-06LibWeb: Put ResolvedCSSStyleDeclaration debug spam behind a macroAndreas Kling
Blowing up the debug console with a fajillion FIXME's whenever you navigate in the web inspector is no fun.
2022-02-06LibHTTP: Propagate and gracefully handle errors in Jobsin-ack
Most of these errors mean that we will fail the job, but it won't crash the application, at least.
2022-02-06LibWebSocket: Switch to using Core::StreamAli Mohammad Pur
As LibTLS now supports the Core::Stream APIs, we can get rid of the split paths for TCP/TLS and significantly simplify the code as well. Provided to you free of charge by the Core::Stream-ification team :^)
2022-02-06LibTLS: Remove some unused/unimplemented declarationsAli Mohammad Pur
2022-02-06Userland: Convert TLS::TLSv12 to a Core::Stream::SocketAli Mohammad Pur
This commit converts TLS::TLSv12 to a Core::Stream object, and in the process allows TLS to now wrap other Core::Stream::Socket objects. As a large part of LibHTTP and LibGemini depend on LibTLS's interface, this also converts those to support Core::Stream, which leads to a simplification of LibHTTP (as there's no need to care about the underlying socket type anymore). Note that RequestServer now controls the TLS socket options, which is a better place anyway, as RS is the first receiver of the user-requested options (though this is currently not particularly useful).
2022-02-06LibCore: Stop buffering when a zero-size slice is read regardless of EOFAli Mohammad Pur
The meaning of EOF depends on the underlying socket, but an empty slice should terminate the buffering (otherwise we'd just spin forever).
2022-02-06LibCore: Rewrite BufferedStream::read_until_any_of() with memmemAli Mohammad Pur
This function used to sometimes return the entire input instead of the value up to the delimiter, fix that and rewrite it to be a bit more readable.
2022-02-06LibCore: Make sure BufferedSocket takes the buffer into accountAli Mohammad Pur
pending_bytes() and can_read_without_blocking() should also take the buffered data into account, otherwise we'll end up pretending that the socket cannot be read from while it has buffered data.