summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-05-03LibWeb: Implement "create navigation params from a srcdoc resource"Aliaksandr Kalenik
Implements: https://html.spec.whatwg.org/multipage/browsing-the-web.html#create-navigation-params-from-a-srcdoc-resource This is supporting function for populating document in session history entry. This function populates navigation params response with HTML text passed in document resource.
2023-05-03LibWeb: Implement "create navigation params by fetching"Aliaksandr Kalenik
Implements: https://html.spec.whatwg.org/multipage/browsing-the-web.html#create-navigation-params-by-fetching This is supporting function for population of document in a session history entry. This function populates response in navigation params by fetching url in navigation params and handling redirects if required.
2023-05-03LibWeb: Implement "attempt to populate the history entry's document"Aliaksandr Kalenik
Implements: https://html.spec.whatwg.org/multipage/browsing-the-web.html#attempt-to-populate-the-history-entry's-document This is going to be a replacement for `FrameLoader::load()` after switching to navigables. Brief description of `populate_session_history_entry_document`: - If navigation params have url with fetch scheme then DOM document will be populated by fetching url and parsing response. This is going to be a replacement for `FrameLoader::load(AK::URL&)`. - If url in navigation params is abort:srcdoc then DOM document will be populated by parsing HTML text passed in document resource. This is going to be a replacement for `FrameLoader::load_html()`
2023-05-03LibWeb: Move document loading into separate fileAliaksandr Kalenik
In upcoming navigables refactor new function that uses fetch instead of ResourceLoader to load document content is going to be introduced: https://html.spec.whatwg.org/multipage/browsing-the-web.html#create-navigation-params-by-fetching `parse_document()` need to be separated from FrameLoader to reuse code responsible for parsing HTTP response into DOM document.
2023-05-03LibWeb: Reuse ReferrerType from Fetch in HTML::DocumentStateAliaksandr Kalenik
2023-05-03LibWeb: Add fetch_controller property in HTML::NavigationParamsAliaksandr Kalenik
2023-05-03LibWeb: Add navigable property in NavigationParamsAliaksandr Kalenik
2023-05-03LibWeb: Change id to be optional in HTML::NavigationParamsAliaksandr Kalenik
2023-05-03LibWeb: Fix typo in HTML::DocumentStateAliaksandr Kalenik
ever_navigable_target_name -> navigable_target_name
2023-05-03LibWeb: Add resource property in DocumentStateAliaksandr Kalenik
2023-05-03LibWeb: Add request_body property in HTML::POSTResourceAliaksandr Kalenik
2023-05-03LibWeb: Introduce SourceSnapshotParamsAliaksandr Kalenik
2023-05-03HexEditor: Remember all of the layout options in the configurationCaoimhe
2023-05-03Chess: Spawn new engine process immediately after engine is selectedTim Ledbetter
A new engine process is now started immediately, rather than waiting until a move needs to be made. This means that if the engine is playing as black, it can start up while the human player is making a move. This is noticable with stockfish, which can be slow to start up.
2023-05-03Chess: Allow stockfish to be used if availableTim Ledbetter
The stockfish chess engine can now be selected from the engine menu if the port has been installed.
2023-05-03LibChess+ChessEngine: Don't crash on error when reading UCI commandsTim Ledbetter
ChessEngine and the chess GUI will no longer crash on error while reading UCI commands. ChessEngine will print a message to the standard output, while the GUI will ignore unknown commands. Both will print the error to the debug log if the UCI_DEBUG flag is enabled. Trailing and preceding whitespace is now stripped from commands before they are parsed. Commands which are just whitespace no longer produce errors.
2023-05-03LibChess: Add optional ponder move to the BestMove commandTim Ledbetter
The BestMove command can now include an optional ponder token, with the move that the engine would like to ponder on.
2023-05-03LibChess: Flesh out InfoCommand implementationTim Ledbetter
UCI info commands can now be received and parsed. All info types from the UCI specification are supported. The info command is not currently used by our engine or GUI, but the GUI can now receive an info command from a 3rd party engine without complaining.
2023-05-03LibChess: Use the correct command type for InfoCommandTim Ledbetter
2023-05-02LibWeb: Only change inside value during blockificationEmil Militzer
2023-05-02LibWeb: Support multi-keyword syntax for CSS display propertyEmil Militzer
The Display class already supported all specific values, and now they will be parsed too. The display property now has a special type DisplayStyleValue.
2023-05-02LibWeb: Expose list_item value in CSS displayEmil Militzer
2023-05-02LibWeb: Set max-values for display CSS propertyEmil Militzer
2023-05-02LibWeb: Add missing inline-grid for display CSS propertyEmil Militzer
2023-05-02LibWeb: Fix intrinsic sizing when min or max width is specifiedAliaksandr Kalenik
Fixes the problem that width is incorrectly computed in intrinsic sizing mode when there are blocks that have min-width or max-width specified. Actually that is just the fix of a symptom of the larger problem that Length::to_px() returns 0 when value is auto regardless of available size.
2023-05-02ICC: Implement TRC inversion in from_pcs for parametric curvesNico Weber
2023-05-02ICC: Implement some of Profile::from_pcs()Nico Weber
This implements conversion from profile connection space to the device-dependent color for matrix-based profiles. It only does the inverse color transform but does not yet do the inverse tone reproduction curve transform -- i.e. it doesn't implement many cases (LUT transforms), and it does the one thing it does implement incorrectly. But to vindicate the commit a bit, it also does the incorrect thing very inefficiently.
2023-05-02ICC: Use snake_case instead of matching spec's camelCase in to_pcs()Nico Weber
2023-05-02LibGfx: Fix -Wdouble-promotion for float matricesNico Weber
2023-05-02ICC: Make a "not yet implemented" string more preciseNico Weber
2023-05-02ICC: Rename tag_for_rendering_intent()Nico Weber
To make clear it's for forward transforms, it's now called forward_transform_tag_for_rendering_intent(). No behavior change.
2023-05-02AK: Accomodate always-32-bit data member pointers in IntrusiveListAli Mohammad Pur
This only exists on windows, but we've made an effort to keep jakt working on windows, so let's support this silliness.
2023-05-02LibJS: Fix mix-up between assignment and comparisonDaniel Bertalan
2023-05-02Everywhere: Make Lagom build with GCC 13Daniel Bertalan
GCC 13 was released on 2023-04-26. This commit fixes Lagom build errors when using an updated host toolchain: - Adds a workaround for a bug in constraint handling, which made LibJS fail to compile: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109683 - Silences the new `-Wdangling-reference` diagnostic globally. It produces multiple false positives with no clear way to silence them without `#pragmas`. - Silences `-Wself-move` in `RefPtr` tests as GCC 13 adds this previously Clang-exclusive warning.
2023-05-02LibVideo/VP9: Revert framebuffer size reduction to allow OOB blocksZaggy1024
The framebuffer size was reduced in f2c0cee, but this caused some niche block layouts to write outside of the frame. This could be fixed by adding checks to see if a block being predicted/ reconstructed is within the frame, but the branches introduced by that reduce performance slightly. Therefore, it's better to keep the framebuffer sized according to the decoded frame size in 8x8 blocks so that any block can be decoded without bounds checking. A test was added to ensure that this continues to work.
2023-05-02LibWeb: Set zero underflow when calculating intrinsic width of blockAliaksandr Kalenik
This fix resolves issue where calculating the min size of a block could result in incorrect value if width of the block's children was compensated by margins to fit into container width (which is equal to 0 during min size calculation).
2023-05-02LibWeb: Account for box-sizing:border-box in layout-less definite sizesAndreas Kling
When we determine that a size is definite because it can be resolved now without performing layout, we also need to account for the box-sizing property. This lets us remove a hack from flex layout where box-sizing:border-box was manually undone at one point in the layout algorithm.
2023-05-02LibWeb: Remove vestigial resolve_definite_width/height helper functionsAndreas Kling
These functions no longer do anything interesting and just forward to content_width/content_height. Let's make the callers use those directly instead and remove this indirection layer.
2023-05-02SoundPlayer: Fix glitchy visualization on pause/stopJoel Petersson
Previously when pausing or stoping a track in SoundPlayer, the visualizations would glitch out. This was caused by them being updated with the same buffer over and over. With this patch a pause action will freeze the visualization at the point of the pause and a stop action will reset the visualization so it displays nothing until a track is started.
2023-05-02SoundPlayer: Introduce buffer_reset api to VisualizationWidgetJoel Petersson
Previously there was no way to clear the internal buffer in a VisualizationWidget. These buffers are what determines how a VisualizationWidget is rendered, so with this commit we are now able to reset visualizations.
2023-05-02LibGUI: Only clear `TreeView::m_view_metadata` when requiredCaoimhe
Prior to this commit, we were always clearing the TreeView's metadata, even if it wasn't needed. Now, we only clear it if the callee says that we should invalidate indices. This fixes an issue in FileManager (#6903), where updating the file system by creating/deleting any file/folder would cause the tree to collapse completely. This may be more of a 'patch' than an actual fix, since I don't have a lot of experience with `GUI::TreeView` or `GUI::Model`, but it doesn't appear to break any other `TreeView` use-cases and using FileManager is now much better than it was before :^)
2023-05-01LibWeb: Make XMLDocumentBuilder create elements with the HTML namespaceAli Mohammad Pur
Otherwise we'll end up with all-generic elements and not run any special HTML sauce logic, leading to very plain pages.
2023-05-01LibWeb: Support getting the grid-template-areas from resolved styleAndreas Kling
Without this, we crash when opening the DOM inspector.
2023-05-01Userland+Base: Treat ".webp" files as images :^)Andreas Kling
2023-05-01CertificateSettings: Add missing ellipsis on import/export buttonsAndreas Kling
2023-04-30nc: Fix overflow in port and local_port argumentFabian Dellwing
2023-04-30LibCore: Implement integral ArgsParser positionals through a templateFabian Dellwing
This matches the behaviour of options.
2023-04-30LibCore: Add support for short integral type to ArgsParserFabian Dellwing
2023-04-30Ports: Add ssmtp portFabian Dellwing
2023-04-30LibELF: Report file path for unimplemented `DYNAMIC` tagsJelle Raaijmakers
This allows us to immediately locate the shared library with the unimplemented tag.