summaryrefslogtreecommitdiff
path: root/Userland
AgeCommit message (Collapse)Author
2022-08-14Utilities/lsblk: Remove Interface Type columnLiav A
We are going to remove this slice of data from the SysFS later on, so lsblk must not try to read it.
2022-08-14Base: Add Icon for Partition Editorelectrikmilk
This adds a 16x16 and 32x32 icon that is missing for the Partition Editor.
2022-08-14LibJS: Make Function.prototype a callable function objectLinus Groh
20.2.3 Properties of the Function Prototype Object https://tc39.es/ecma262/#sec-properties-of-the-function-prototype-object The Function prototype object: - is itself a built-in function object.
2022-08-13Browser+Base: Allow opening multiple URLs at once from command lineSam Atkins
This lets you run `br example.com wikipedia.org some/local/file.html` in one go and have them all opened as tabs.
2022-08-13ThemeEditor: Use `FileSystemAccessServer` instead of unveiling filesLucas CHOLLET
2022-08-13HackStudio: Fix update modified document on tab widgetFederico Guerinoni
Closes #14297
2022-08-13PixelPaint: Allow configuration of default image size through GUIcflip
This adds a checkbox to the new image dialog that allows the user to set the default values without needing to manually edit the config file
2022-08-12SystemMonitor: Remove GML references to the deleted Hardware tabLiav A
2022-08-12LibWeb: Implement `linear-gradient()` transition hintsMacDue
These allow you to specify the point were the gradient transitions from one color to the next (without a transition hint the transition occurs at the point 50% of the way between the two colors). There is a little bit of guesswork in this implementation as the specification left out how hints work with the color stop fixup, though it appears that they are treated the same as color stops.
2022-08-11Shell: Avoid StringView OOB access in Formatter ctorAli Mohammad Pur
2022-08-11Shell: Stop printing 'sh -c' commandsAli Mohammad Pur
That's getting too spammy and too useless.
2022-08-10LibWeb: Follow `image-rendering` when painting image style valuesMacDue
2022-08-10HackStudio: Add fullscreen shortcutJunior Rantila
2022-08-09Terminal: Propagate more errorsJunior Rantila
2022-08-09WindowServer: Let WindowManager set serverside effectsthankyouverycool
Menu and Window animations can now be disabled and the geometry overlay made conditional. Shadow options are dependent on the current theme actually supplying bitmaps, but they provide a fast way to toggle those that do without having to edit theme files.
2022-08-09LibGUI+LibGfx: Let Desktop::the() set widget effectsthankyouverycool
Scrolling can now be set Coarse or Smooth system-wide, Splitter knurls and Tab accents toggled on and off, and Menu flashing disabled.
2022-08-09DisplaySettings: Add an Effects tabthankyouverycool
Effects tab provides the UI for setting SystemEffects. DisplaySettings is getting a bit crowded and might need a re-org at some point, but this seems like a good home for effects while the settings mature.
2022-08-09LibGUI+WindowServer: Create IPC calls for passing SystemEffectsthankyouverycool
SystemEffects are sent to the WindowManager through set_system_effects() and broadcast to Desktop clients with update_system_effects(). WindowManager is reponsible for saving, loading and rebroadcasting effects from WindowServer.ini on config changes.
2022-08-09LibGUI: Let Desktop:the() manage SystemEffects inside LibGUIthankyouverycool
These settings might well ultimately be factored into a dedicated settings manager, but until then, a charitable interpretation of Desktop::the() as the desktop environment will suffice.
2022-08-09LibGUI+WindowServer: Add a SystemEffects wrapper and helpersthankyouverycool
SystemEffects provides a tidy way to work with system-wide visual options passed through IPC.
2022-08-08Chess: Import/Export chessboards using LibFileSystemAccessClientKarol Kosek
With this change, the wpath and cpath promises as well as unveiling user's entire home directory are no longer needed. :^)
2022-08-08LibGUI: Correct cursor index during mouseup_eventMatthew B. Jones
Previously, during a m_might_drag mouse_up event, we were updating the selection directly, which caused the selection to be accurate but the location of the cursor index to be stale/incorrect. The side effect of this is then future events may point to the wrong index. Instead, call the set_cursor function with SelectionUpdate::Set, which handles both updating the cursor index as well as the selection index.
2022-08-08LibWeb: Avoid painting background-images under opaque bordersMacDue
Without this the background-image can be painted up to 8 extra times, that contribute nothing to the final image.
2022-08-08LibWeb: Convert images to common AbstractImageStyleValue baseMacDue
This commit moves both the ImageStyleValue and LinearGradientStyleValue to a common base class of AbstractImageStyleValue. This abstracts getting the natural_width/height, loading/resolving, and painting the image. Now for 'free' you get: - Linear gradients working with the various background sizing/repeat properties. - Linear gradients working as list-markers :^) -- best feature ever! P.s. This commit is a little large as it's tricky to make this change incrementally without breaking things.
2022-08-08LibGfx: Add Size<T>::to_rounded<I>()MacDue
Currently this is only specialized for rounding to integer types.
2022-08-08LibWeb: Don't allow mixed commas/no commas in rect() css valuesMacDue
This fixes the clip-rect-comma-002, clip-rect-comma-003, and clip-rect-comma-004 web platform tests.
2022-08-08LibWeb: Fix resolution of CSS clip rectMacDue
Previously the clip rect was not relative to the top/left egdes of the element, which lead to it being positioned incorrectly. This fixes the clip-rect-auto-004 and clip-rect-auto-005 web platform tests.
2022-08-08LibWeb: Enable CSS clip for `position: fixed` elementsMacDue
This fixes the clip-absolute-positioned-002 web platform test.
2022-08-08LibWeb: Fix RectStyleValue to_string() implementationTom
Fix implementation of to_string() for RectStyleValue so that it can be used by JS.
2022-08-07LibWeb: Allow % height of a % height parent in block-formatted elementsMacDue
With this you can start to see Francine's face in the CSS oil painting (https://diana-adrianne.com/purecss-francine/)
2022-08-07LibWeb: Allow absolute boxes to have a % height of a % height parentMacDue
Previously absolutely positioned boxes could only have a % height if their parent had a absolute height (a height in pixels, em, etc). This broke some websites/demos such as the "Francine CSS oil painting", which starts to appear after this commit. Francine: https://diana-adrianne.com/purecss-francine/
2022-08-07LibWeb: Implement clip propertyTom
Implement clip when it is defined in the css property 'clip' as a rect according to spec; only when the div is absolutely positioned.
2022-08-07LibWeb: Use rect value in CSS clip propertyTom
When a rect value is passed to the clip property via CSS, keep it in ComputedValues so that at a later stage can make use of it.
2022-08-07LibWeb: Parse rect style valueTom
Add ability to parse a rect when it is used as the value of a style property.
2022-08-07Browser: Make Refresh action in tab context menu refresh the chosen tabKarol Kosek
It was sending refresh requests to the current tab instead.
2022-08-07Browser: Make the bookmark button use an actionKarol Kosek
This merges 2 duplicated definitions (one for button, second just for the keyboard shortcut) which also makes the button 'react' on that shortcut. :^)
2022-08-07Browser: Show bookmark and history page lists under the their buttonsKarol Kosek
Previously they were showing right under the cursor.
2022-08-07Browser: Set margins for BookmarkBarWidgetKarol Kosek
It's just what GUI::Toolbar is using. Changed this to make the bookmark overflow button align with the bookmark button.
2022-08-07Browser: Use overflow-menu icon for hidden bookmarks the buttonKarol Kosek
97b381652a started using that icon for toolbars. Let's also use it here for the sweet system consistency!
2022-08-07LibWeb: Support `-webkit-linear-gradient()` correctlyMacDue
The -webkit version of linear-gradient does not include the `to` before a <side or corner>. The angles of the <side or corner> for the webkit version are also opposite that of the standard one. So for the standard: linear-gradient(to left, red, blue) The webkit version is: -webkit-linear-gradient(right, red, blue) Adding the `to` in the -webkit version is invalid, omitting it in the standard one is also invalid.
2022-08-06LibJS: Teach String.prototype.concat() to create rope stringsAndreas Kling
Defer serialization of the concatenated strings until later. This is used heavily in SunSpider's string-validate-input subtest, which sees a small progression.
2022-08-06LibJS: Correct BalanceDurationRelative algorithmLinus Groh
This is a normative change in the Temporal spec. See: - https://github.com/tc39/proposal-temporal/commit/cbf5863 - https://github.com/tc39/proposal-temporal/commit/f47d57d
2022-08-06LibJS: Rename PrimitiveString::m_{left,right} to m_{lhs,rhs}Linus Groh
The LHS/RHS naming is already widely used as parameter names and local variables with the same meaning, so let's also use them for the members.
2022-08-06LibJS: Support creation of global object in Realm::set_global_object()Linus Groh
2022-08-06LibJS+LibWeb: Restore type safety of Realm::set_global_object()Linus Groh
The changes from 8a03b17 to allow any JS::Value aren't a good fit, as shown by the excessive amount of verify_cast needed :^)
2022-08-06LibJS: Implement string concatenation using ropesAndreas Kling
Instead of concatenating string data every time you add two strings together in JavaScript, we now create a new PrimitiveString that points to the two concatenated strings instead. This turns concatenated strings into a tree structure that doesn't have to be serialized until someone wants the characters in the string. This *dramatically* reduces the peak memory footprint when running the SunSpider benchmark (from ~6G to ~1G on my machine). It's also significantly faster (1.39x) :^)
2022-08-05Minesweeper: Update GML and fix layout issuesthankyouverycool
Converts Minesweeper's main widget to GML, polishes the custom game window, formats the clock as human readable digital time, and defers invoking Field's callback until the main widget has finished relayout. Fixes inability to downsize the main window when shrinking field size.
2022-08-05LibGUI: Register "bitmap" GML property for ImageWidgetthankyouverycool
2022-08-05LibGUI+Applications: Govern Splitter resizing by opportunistic growththankyouverycool
This patch replaces the concept of fixed resizees with opportunistic ones which use the new SpecialDimension::OpportunisticGrow UISize. This lets us simplify splitter resize code and take advantage of the layout system's automatic calculations for minimum size and expansion. Functionally the same as before, but fixes Splitter's unintended ability to grow window size.
2022-08-05LibGUI: Calculate maximum primary size for Splitter resizeesthankyouverycool