This is the counter-part, which removes focus from the element if it's currently focused. The window - if focused - may still be focused towards the windowing system.
As discussed on Reddit, the magic import logic is not very tool friendly and a little too magic perhaps. Instead, this patch introduces an automatic loader (`slint.loader`), which can traverse `sys.path` and lazily load `.slint` files by attribute lookup.
Closes#4856
CPACK_SYSTEM_NAME is what we used before, and that has the win64 suffix
that the prepare_release job in nightly_snapshot.yaml expects. Also
fixed the docs to add the missing MSVC suffix that's new.
Cargo disallows dashes in library target names (lib.name in Cargo.toml), but when not set it uses
the package name. That meant that dashes snuck in and https://github.com/rust-lang/cargo/pull/12783 fixes that.
The targets Corrosion creates correspond to the library name, so after that change it's slint_cpp.
To make this work with stable cargo, explicitly switch lib.name to slint_cpp.
This reverts commit a159562ea7 and just
the version part of commit 1d2201a7ce to
downgrade image to 0.24 again.
This is not a straight revert, the workspace unification remains, just
the version is down to 0.24.
The update to the new image crate version causes two issues
- With the Xtensa Rust toolchain, a release build of the image crate
takes excessively long (cargo +esp build --release in image-rs)
- The image crate version updates to zune-jpeg for JPEG decoding,
which uses "cdylib" in crate-type, which in turn breaks the
cross-compilation with Corrosion against a Linux sysroot, because
the (unnecessary) zune-jpeg cdylib creation doesn't see corrosion's
link args that provide the sysroot.
(upstream PR at https://github.com/etemesi254/zune-image/pull/187 )
By reverting, this also closes#5068.
The version number is not set, so the package name would end up as
Slint-cpp---MSVC.exe. Instead, just append the MSVC suffix, as
suggested by Olivier.
Amends cacc13343f
Add the ability to depend on the testing backend and opt into it
when running tests/cases, like we do for the other drivers.
The testing backend dependency is removed in the packaging step, as
we don't publish i-slint-backend-testing.
Updated the version from 1.1 to 1.2
Renamed the header to "Slint Royalty-free Desktop, Mobile, and Web Applications License"
Added definition of "Mobile Application" and grant of right
Moved "Limitations" to 3rd section and "License Conditions - Attributions" to 2nd section
Added flexibility to choose between showing "MadeWithSlint" as a dialog/splash screen or on a public webpage
Moved the para on copyright notices to section under "Limitations"
To enable the feature from the image crate.
And enable it by default.
Because users of older version of slint may have enabled feature from
the image 0.24 crate. But since we upgrade to image 0.25, this these
format would not be supported by Slint. So enable them by default to
keep compatibility
Note: this could be a breaking change if someone did
```
image = { version = "0.24", features = [...] }
```
To enable more features decoder of the image to support more file format
in slint
Rendering by line into a line buffer that's in IRAM can be faster than accessing framebuffers in slower PSRAM, so offer this by allowing users
to omit even the initial framebuffer.
They were causing infinite recursion because they were calling
themselves.
Also add the missing MapModel::reset
Yet another motivation for https://github.com/slint-ui/slint/issues/3888
as the code was mixing the `reset` function on the adapter meaning
"please re-apply the adapter filter/map/sort function" with the `reset`
function on Model which means "the subclass has changed and we should
notify listeners".
Fixes#4968
A MSRV update is required to update the image crate to 0.25, otherwise
we get link error that are ficed in newer version.
Also other dependency update such as env_logger needs a newer MSRV.
Update to 1.73 because it has functions like `with_borrow` on thread
storage which we already actually use in some platform.
This is also the last release before the the drop of macOs < 10.12
in Rust 1.74