19th of September 2022 to 25th of September 2022

Slint UI Library

Tooling

  • online_editor: Add properties viewer (#1677, #1673)

    Add a simple widget showing the properties for the current Element.

  • Streamline online editor startup (#1667)

    Put some building blocks in place for an orderly startup sequence. The same method can work for other widgets as well.

  • Online editor smoke test (#1666)

    Add cypress-based smoke test for the online editor and fix the fallout from all the new dependencies showing up :-)

Fixes

  • Dependency analysis: Visit layout properties (#1661)

    In the function visit_layout_items_dependencies we were passing a NamedReference for a property that could have been in the base component type of an element, instead of in one of the element within the current visited component. This would result in wrong computation done later to find out the "element path" of the property. We then need to tell the visitor that the named reference is in a sub component. To do that, we need to visit a PropertyPath instead of just a NamedReference

    Issue 1659 showed one of the symptoms of this, causing an assert. But it could also result in wrong analysis (binding loop not detected when it should or vice versa)

    Fixes #1659

  • Fix panic in online editor when resizing the preview widget (#1662)

    A resize of the HTML canvas element would trigger our own resize handler, which tried to do a special dance to trigger a redraw.

    As it turns out, this breaks with current winit as the event loop target is gone, so calling with_window_target() panics.

    See also commit 8b728d

    Instead, this patch reverts to the simpler method of calling invoke_from_event_loop, has workarounds for how to wake up the event loop and return poll. In there we can just call request_redraw() on the winit window directly to trigger a draw.

Documentation

  • Various doc and one CMake default fix (#1674)

Backends

  • Skia: Improve text handling (#1672)

    Fix rendering of the text cursor at the end of text and in empty text inputs, and support text selections.

Janitor work

PRs: #1655, #1660, #1663, #1664, #1670, #1675

Statistics

29 patches committed in 14 pull requests by 3 authors.

← Next : 26th of September 2022 to 2nd of October 2022 | Previous : 12th of September 2022 to 18th of September 2022


Slint is a declarative GUI toolkit to build native user interfaces for desktop and embedded applications written in Rust, C++, JavaScript, and Python. Find more information at https://slint.dev/ or check out the source code at https://github.com/slint-ui/slint