summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-04-07LibJS: Consistently call observable Temporal AOs with undefined optionsLinus Groh
This is a normative change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/6fa5b9d
2022-04-07LibWeb: Fix broken AffineTransform::map() implementationAndreas Kling
When opening canvas-rotate.html on my host machine, I noticed that the rotation was going the other way.. :^)
2022-04-06LibJS: Reorder and reduce steps of InitializeDateTimeFormatTimothy Flynn
These are editorial changes in the Intl spec. See: https://github.com/tc39/ecma402/commit/7d0326c https://github.com/tc39/ecma402/commit/05a299b https://github.com/tc39/ecma402/commit/8c24ea7 https://github.com/tc39/ecma402/commit/fd8dea9
2022-04-06LibJS: Remove outdated FIXME from String.prototype.localeCompareTimothy Flynn
This FIXME was addressed in 0975eba7241ff44fcfc5f3be074a09b353ebae5f.
2022-04-06Ports: Added The One True AWKMattias Nilsson
2022-04-06LibUnicode: Replace individual UCD file downloads with single UCD.zipTimothy Flynn
Instead of downloading nearly 20 files individually, we can download a single .zip file similar to how we download a single CLDR .zip. This is to reduce the number of connections/downloads to/from unicode.org.
2022-04-06SystemMonitor: Default initialize all thread state variableskleines Filmröllchen
Having bogus values here when we just initialize the thread state with a process can lead to all sorts of bad things down the line, like infinite draws.
2022-04-06SystemMonitor: Fallback to invalid model index if there's no main threadkleines Filmröllchen
In the process model we check the thread with tid=pid to figure out the main thread of a process. This is used to construct the process view tree with non-main threads listed as children of the process row. However, there are sometimes circumstances where there is no main thread, even though the process should have been removed from the internal list by then. As a safe fallback, let's default to an invalid model index if we can't figure out what the main thread of a process is.
2022-04-06LibWeb: Make BrowsingContext ask PageClient when it wants to be scrolledAndreas Kling
BrowsingContext shouldn't be scrolling itself, instead it has to update the layout (to ensure that we have current document metrics, and then ask the PageClient nicely to scroll it. This fixes an issue where BrowsingContext sometimes believed itself to be scrolled, but OOPWV had a different idea.
2022-04-06LibWeb+Browser: Remove Web::WebViewHooks classAndreas Kling
This was a mixin class that allowed sharing a set of hooks between InProcessWebView and OutOfProcessWebView. Now that there is only OOPWV, we don't need the mixin.
2022-04-06LibWeb: Remove the InProcessWebView widgetAndreas Kling
Let's simplify our offering by only having the OutOfProcessWebView.
2022-04-06HackStudio: Remove "evaluate expression" dialogAndreas Kling
This was built on Web::InProcessWebView which is going to be removed. Since this feature wasn't really used or maintained, let's just remove it for now, and it can be resurrected on top of OutOfProcessWebView if someone finds it useful enough to do that work.
2022-04-06Tests: Remove test-webAndreas Kling
This was not used or maintained, and relied on InProcessWebView which we need to get rid of.
2022-04-06LibWeb: Remove unused HTML::parse_html_document()Andreas Kling
2022-04-06LibWeb: Use FrameLoader::load_html() when loading error pagesAndreas Kling
Use our existing helper function for parsing a HTML string and opening it as the main content of the attached browsing context.
2022-04-06Spreadsheet: Change paste action's enabled state on clipboard changeKarol Kosek
Previously, the paste action was always enabled and always assumed that anything was selected, which led to a crash by clicking the paste action right after the application startup. This patch will automatically enable/disable the paste action depending on whether a selection exists (it usually does, except on the app launch and after adding a new tab) and if the clipboard mime type is a text/ group. So no, you can't paste an image into the app anymore, even though this mostly froze the app before...
2022-04-06LibX86: Add CMPXCHG8B, RDRAND and RDSEEDHendiadyoin1
With this we can run following script with no errors: ```sh for /usr/lib/*.so { disasm "$it" > /dev/zero } ```
2022-04-06UserspaceEmulator: Don't interpret SSE2 instructions as MMX onesHendiadyoin1
This is a huge FIXME right now, and should either be delegated to SoftVPU or handled in these instructions.
2022-04-06LibX86: Support SSE2 :^)Hendiadyoin1
This allows disassembly of binaries with SSE2 instructions in them. SSE2 also extends all MMX instructions without affecting the mnemonic, therefore these are just directed to the same function for now. The UserspaceEmulator does not know this as of this commit.
2022-04-06LibX86: Mark MMX instructions as SSE instructionsHendiadyoin1
SSE2 expands on the same opcodes as MMX, so we have to mutate on prefix here.
2022-04-06UserspaceEmulator: Truncate in CVTTSS2SIHendiadyoin1
2022-04-06LibX86: Correct CVTSS2SI's register signatureHendiadyoin1
This was annotated the wrong way around.
2022-04-06Kernel: Track big lock blocked threads in separate listJelle Raaijmakers
When we lock a mutex, eventually `Thread::block` is invoked which could in turn invoke `Process::big_lock().restore_exclusive_lock()`. This would then try to add the current thread to a different blocked thread list then the one in use for the original mutex being locked, and because it's an intrusive list, the thread is removed from its original list during the `.append()`. When the original mutex eventually unblocks, we no longer have the thread in the intrusive blocked threads list and we panic. Solve this by making the big lock mutex special and giving it its own blocked thread list. Because the process big lock is temporary and is being actively removed from e.g. syscalls, it's a matter of time before we can also remove the fix introduced by this commit. Fixes issue #9401.
2022-04-06LibWeb: Rename compute_intrinsic_height() => calculate_auto_height()Andreas Kling
Change "compute" to "calculate" to make clearer that this is unrelated to the CSS "computed height" concept. Change "intrinsic" to "auto" to make clearer that this is not the same as the intrinsic min-content and max-content sizing calculations.
2022-04-06LibWeb: Remove incorrect comment from FFC flex item cross sizingAndreas Kling
2022-04-06AK+Userland: Rename Array::front/back to first/lastSam Atkins
This is the name that is used for every other collection type so let's be consistent.
2022-04-06InspectorServer: Defer removal of InspectableProcess from tablesin-ack
This prevents a crash when the inspected process closes the socket (i.e. when the app is exited). This crash was caused by the InspectableProcess removing itself from the global process table within a callback Function that is stored as part of the InspectableProcess.
2022-04-06SystemMonitor: Keep current process selection expanded if neededkleines Filmröllchen
This is a hack until persistent model indices work.
2022-04-06SystemMonitor: Display processes and their threads in a tree :^)kleines Filmröllchen
This shows all non-main threads as children of the process they belong to. We also show the TID as that is important to distinguish the different threads in one process. Fixes #65 :skeleyak:
2022-04-06LibGUI: Don't stringify non-textlike data in TreeView's tree columnkleines Filmröllchen
This would previously cause silly things like [GUI::Icon] to appear if a non-textlike column was used as the tree column (like, in this example, an icon column). Let's just not write anything instead.
2022-04-06SystemMonitor: Pass the correct parent when checking for selected valueskleines Filmröllchen
This will cause trouble later when the row is not enough to identify a selection.
2022-04-06SystemMonitor: Move TID to the front in ProcessModelkleines Filmröllchen
This will look much nicer once we enable that column.
2022-04-06LibGUI: Add is_toggled getter for TreeViewkleines Filmröllchen
This has safer fallbacks than toggle_index, because we want to be able to call it on indices that don't have children.
2022-04-06LibGUI: Associate model index metadata directly with the model indexkleines Filmröllchen
This was using internal_data beforehand, which relies on the internal data to be distinct for different model indices. That's not the case for example for SortingProxyModel. Using the model index directly makes tree expansion work properly when using a tree table widget with a SortingProxyModel.
2022-04-06LibGUI: Register many properties of AbstractViewkleines Filmröllchen
2022-04-06LibGUI: Register should_fill_selected_rows for GML in TreeViewkleines Filmröllchen
2022-04-06LibGUI: Delegate the tree column in SortingProxyModelkleines Filmröllchen
This was never properly delegated to the source model, so the tree column would just always be zero.
2022-04-06AK: Add const version of Vector::first_matchingkleines Filmröllchen
2022-04-06AK: Add find_first_index to NonnullPtrVector that strips smart pointerkleines Filmröllchen
When we want to use the find_first_index that base Vector provides, we need to provide an element of the real contained type. That's impossible for OwnPtr, however, and even with RefPtr there might be instances where we have a raw reference to the object we want to find, but no smart pointer. Therefore, overloading this function (with an identical body, the magic is done by the find_index templatization) with `T const&` as a parameter allows there use cases.
2022-04-06LibGUI: Register AbstractTableView.column_headers_visiblekleines Filmröllchen
This was used before by SystemMonitor but not actually registered.
2022-04-06LibGUI: Implement column_headers_visible in AbstractTableViewkleines Filmröllchen
This was declared but not defined. :yakfusion:
2022-04-06LibWeb: Determine intrinsic flex container size from content-sizeAndreas Kling
When running the min-content and max-content sizing algorithms and the target box creates a flex formatting context, we don't need to measure its children. FFC has already assigned the content_width and content_height values, so we just need to pick those up from the container's formatting state.
2022-04-06LibCore+Base: Hide empty options sections in manpagessin-ack
2022-04-06LibCore+Base: Add way to hide ArgsParser opt.s from specific usage textssin-ack
This adds the ability to hide certain options from certain help texts. `--complete` is always hidden, whereas `--help` and `--version` are hidden from Markdown help text only. Note that in all cases these three options are hidden from the short usage line.
2022-04-06LibWeb: Add basic constructor/prototype to exotic objectsIgor Pissolati
2022-04-06AnalogClock: Keep default alpha hit thresholdAli Chraghi
2022-04-06LibGL+LibGPU+LibSoftGPU: Load SoftGPU driver dynamicallyStephan Unverwerth
This loads libsoftgpu.so during GLContext creation and instantiates the device class which is then passed into the GLContext constructor.
2022-04-06LibGL+LibGPU+LibSoftGPU: Add virtual base class for devicesStephan Unverwerth
This adds a virtual base class for GPU devices located in LibGPU. The OpenGL context now only talks to this device agnostic interface. Currently the device interface is simply a copy of the existing SoftGPU interface to get things going :^)
2022-04-06LibGL+LibGPU+LibSoftGPU: Add virtual base class for ImagesStephan Unverwerth
This introduces a new device independent base class for Images in LibGPU that also keeps track of the device from which it was created in order to prevent assigning images across devices.
2022-04-06LibGPU+LibSoftGPU: Move RasterizerOptions into LibGPUStephan Unverwerth