Commit graph

1676 commits

Author SHA1 Message Date
Simon Hausmann
604450da47 WIP: slint-compiler: Add support for generating Python stubs
The generated file offers the following two pieces of functionality:

- Convenient front-end to slint.load_file() by loading the .slint file
  (replaces use of auto-loader)
- More importantly: Type information for exported properties, callbacks,
  functions, and globals
2025-07-14 13:36:39 +02:00
Simon Hausmann
5c3a98d0c9 C++: disable renderer-femto-wgpu feature by default
Just like with Rust.

This Fixes the C++ opengl_texture example. Also improve advice for C++ OpenGL examples to explicitly select the FemtoVG GL renderer

Fixes #8901
2025-07-11 09:43:57 +02:00
Simon Hausmann
3101104f5c Switch from WGPU 24 to WGPU 25
- Use a version of FemtoVG that uses WGPU 25
- Rename the unstable-wgpu-24 feature and wgpu_24 module
- Fetch bevy from a revision on master branch that switches to WGPU 25
- Move the bevy example out of the common workspace: That way users of the repo don't get bevy pulled from git, unless they want to build the bevy example.
2025-07-09 11:30:05 +02:00
Montel Laurent
301892d008
Updgrade Catch2 dependency (#8846)
Some checks failed
CI / build_and_test (ubuntu-22.04, 1.85) (push) Has been cancelled
CI / build_and_test (ubuntu-22.04, nightly) (push) Has been cancelled
CI / node_test (macos-14) (push) Has been cancelled
CI / node_test (ubuntu-22.04) (push) Has been cancelled
CI / node_test (windows-2022) (push) Has been cancelled
CI / python_test (macos-14) (push) Has been cancelled
CI / python_test (ubuntu-22.04) (push) Has been cancelled
CI / python_test (windows-2022) (push) Has been cancelled
CI / cpp_test_driver (macos-13) (push) Has been cancelled
CI / cpp_test_driver (ubuntu-22.04) (push) Has been cancelled
CI / cpp_test_driver (windows-2022) (push) Has been cancelled
CI / docs (push) Has been cancelled
CI / cpp_cmake (macos-14, 1.85) (push) Has been cancelled
CI / cpp_cmake (ubuntu-22.04, stable) (push) Has been cancelled
CI / cpp_cmake (windows-2022, nightly) (push) Has been cancelled
CI / cpp_package_test (push) Has been cancelled
CI / wasm (push) Has been cancelled
CI / wasm_demo (push) Has been cancelled
CI / vsce_build_test (push) Has been cancelled
CI / mcu (pico-st7789, thumbv6m-none-eabi) (push) Has been cancelled
CI / mcu (pico2-st7789, thumbv8m.main-none-eabihf) (push) Has been cancelled
CI / mcu (stm32h735g, thumbv7em-none-eabihf) (push) Has been cancelled
CI / mcu-embassy (push) Has been cancelled
CI / tree-sitter (push) Has been cancelled
CI / updater_test (0.3.0) (push) Has been cancelled
CI / fmt_test (push) Has been cancelled
CI / esp-idf-quick (push) Has been cancelled
CI / android (push) Has been cancelled
CI / miri (push) Has been cancelled
CI / test-figma-inspector (push) Has been cancelled
CMake 4.0 remove some deprecated code < 3.5 

Catch2 old version still depend against cmake 3.0 + deprecated method.
Necessary to increase version otherwise when we try to compile
example with cmake 4.0 it will failed to configure it
2025-07-05 08:54:24 +02:00
Olivier Goffart
27f026aeea Examples/Demos: fix warning about unused padding 2025-07-04 18:35:52 +02:00
Olivier Goffart
59ac3ac599
Update MSRV to 1.85
Some checks are pending
CI / files-changed (push) Waiting to run
CI / build_and_test (--exclude ffmpeg --exclude gstreamer-player, macos-14, stable) (push) Blocked by required conditions
CI / cpp_cmake (ubuntu-22.04, stable) (push) Blocked by required conditions
CI / build_and_test (--exclude ffmpeg --exclude gstreamer-player, windows-2022, 1.85) (push) Blocked by required conditions
CI / build_and_test (--exclude ffmpeg --exclude gstreamer-player, windows-2022, beta) (push) Blocked by required conditions
CI / fmt_test (push) Blocked by required conditions
CI / esp-idf-quick (push) Blocked by required conditions
CI / android (push) Blocked by required conditions
CI / miri (push) Blocked by required conditions
CI / test-figma-inspector (push) Blocked by required conditions
CI / build_and_test (--exclude ffmpeg --exclude gstreamer-player, windows-2022, stable) (push) Blocked by required conditions
CI / build_and_test (ubuntu-22.04, 1.85) (push) Blocked by required conditions
CI / docs (push) Blocked by required conditions
CI / build_and_test (ubuntu-22.04, nightly) (push) Blocked by required conditions
CI / node_test (macos-14) (push) Blocked by required conditions
CI / node_test (ubuntu-22.04) (push) Blocked by required conditions
CI / node_test (windows-2022) (push) Blocked by required conditions
CI / python_test (macos-14) (push) Blocked by required conditions
CI / python_test (ubuntu-22.04) (push) Blocked by required conditions
CI / cpp_test_driver (macos-13) (push) Blocked by required conditions
CI / cpp_test_driver (ubuntu-22.04) (push) Blocked by required conditions
CI / cpp_test_driver (windows-2022) (push) Blocked by required conditions
CI / cpp_cmake (macos-14, 1.85) (push) Blocked by required conditions
CI / wasm (push) Blocked by required conditions
CI / cpp_cmake (windows-2022, nightly) (push) Blocked by required conditions
CI / cpp_package_test (push) Blocked by required conditions
CI / vsce_build_test (push) Blocked by required conditions
CI / mcu (pico-st7789, thumbv6m-none-eabi) (push) Blocked by required conditions
CI / mcu (pico2-st7789, thumbv8m.main-none-eabihf) (push) Blocked by required conditions
CI / updater_test (0.3.0) (push) Blocked by required conditions
2025-06-26 22:50:15 +02:00
Joshua Goins
c09ed19a85 Menu: Add icon property
This adds an icon that is displayed to the left of the title, and is
also shown for Menus are inside of a parent menu.

Closes #7791

ChangeLog: Added icon property to MenuItem and Menu
2025-06-26 18:45:37 +02:00
ogoffart
9cc24ff284 Bump version number to 1.13.0 2025-06-26 13:30:43 +00:00
Simon Hausmann
86befbe769 Python: Make space for additional python modules
Move Slint module into sub-directory under api/python
2025-06-25 20:43:09 +02:00
Simon Hausmann
f98f5357a4 esp-idf: Remove the S3-USB-OTG example
The upstream esp32_s3_usb_otg component stopped compiling. We've got more exciting devices nowadays and we've never demonstrated it ourselves.
2025-06-25 10:31:41 +02:00
Simon Hausmann
80f4e32da3 doc: The WGPU example doesn't render into an OpenGL texture 2025-06-17 14:20:46 +02:00
ogoffart
92f9f0e85d Bump version number to 1.12.1 2025-06-16 13:32:39 +00:00
Olivier Goffart
c7424a6300
bevy example: Update screenshot in readme 2025-06-02 13:26:23 +02:00
Olivier Goffart
2ee0904169 uefi demo: Fix compilation in master
After 80de96488a we now detect binding
loop if the window's layout depends on itself
2025-05-26 15:44:30 +02:00
Tasuku Suzuki
30981ca672 muc-board-support: doc - fix tasks.json 2025-05-23 11:40:25 +02:00
Nigel Breslaw
182a4dc58a
Tweak Bevy demo to have a transparent background (#8481)
This shows that Bevy can be composed into a Slint app beyond just taking over a rectangular area. Slint can also be used underneath Bevy rendered objects.
2025-05-20 11:31:16 +03:00
Tasuku Suzuki
1424dbfe7b MCU pico2: increase heap size
Some checks are pending
CI / build_and_test (ubuntu-22.04, nightly) (push) Blocked by required conditions
CI / node_test (macos-14) (push) Blocked by required conditions
CI / node_test (ubuntu-22.04) (push) Blocked by required conditions
CI / node_test (windows-2022) (push) Blocked by required conditions
CI / python_test (macos-14) (push) Blocked by required conditions
CI / python_test (ubuntu-22.04) (push) Blocked by required conditions
CI / python_test (windows-2022) (push) Blocked by required conditions
CI / cpp_test_driver (macos-13) (push) Blocked by required conditions
CI / cpp_test_driver (ubuntu-22.04) (push) Blocked by required conditions
CI / cpp_test_driver (windows-2022) (push) Blocked by required conditions
CI / cpp_cmake (macos-14, 1.82) (push) Blocked by required conditions
CI / cpp_cmake (ubuntu-22.04, stable) (push) Blocked by required conditions
CI / cpp_cmake (windows-2022, nightly) (push) Blocked by required conditions
CI / cpp_package_test (push) Blocked by required conditions
CI / vsce_build_test (push) Blocked by required conditions
CI / mcu (pico-st7789, thumbv6m-none-eabi) (push) Blocked by required conditions
CI / mcu (pico2-st7789, thumbv8m.main-none-eabihf) (push) Blocked by required conditions
CI / mcu (stm32h735g, thumbv7em-none-eabihf) (push) Blocked by required conditions
CI / mcu-embassy (push) Blocked by required conditions
CI / ffi_32bit_build (push) Blocked by required conditions
CI / docs (push) Blocked by required conditions
CI / wasm (push) Blocked by required conditions
CI / wasm_demo (push) Blocked by required conditions
CI / tree-sitter (push) Blocked by required conditions
CI / updater_test (0.3.0) (push) Blocked by required conditions
CI / fmt_test (push) Blocked by required conditions
CI / esp-idf-quick (push) Blocked by required conditions
CI / android (push) Blocked by required conditions
CI / miri (push) Blocked by required conditions
CI / test-figma-inspector (push) Blocked by required conditions
400 kB would be alright because pico 2 has 520 KB on-chip SRAM

See https://github.com/slint-ui/slint/discussions/8477
2025-05-20 07:45:22 +02:00
Simon Hausmann
35c972c227
Add example of rendering a Bevy scene into Slint (#8380)
Some checks are pending
CI / build_and_test (--exclude ffmpeg --exclude gstreamer-player, windows-2022, beta) (push) Blocked by required conditions
CI / build_and_test (--exclude ffmpeg --exclude gstreamer-player, windows-2022, stable) (push) Blocked by required conditions
CI / build_and_test (ubuntu-22.04, nightly) (push) Blocked by required conditions
CI / cpp_test_driver (ubuntu-22.04) (push) Blocked by required conditions
CI / cpp_test_driver (windows-2022) (push) Blocked by required conditions
CI / cpp_cmake (macos-14, 1.82) (push) Blocked by required conditions
CI / cpp_cmake (ubuntu-22.04, stable) (push) Blocked by required conditions
CI / cpp_cmake (windows-2022, nightly) (push) Blocked by required conditions
CI / cpp_package_test (push) Blocked by required conditions
CI / node_test (windows-2022) (push) Blocked by required conditions
CI / python_test (macos-14) (push) Blocked by required conditions
CI / python_test (ubuntu-22.04) (push) Blocked by required conditions
CI / python_test (windows-2022) (push) Blocked by required conditions
CI / cpp_test_driver (macos-13) (push) Blocked by required conditions
CI / mcu (stm32h735g, thumbv7em-none-eabihf) (push) Blocked by required conditions
CI / vsce_build_test (push) Blocked by required conditions
CI / mcu (pico-st7789, thumbv6m-none-eabi) (push) Blocked by required conditions
CI / mcu (pico2-st7789, thumbv8m.main-none-eabihf) (push) Blocked by required conditions
CI / mcu-embassy (push) Blocked by required conditions
CI / ffi_32bit_build (push) Blocked by required conditions
CI / docs (push) Blocked by required conditions
CI / wasm (push) Blocked by required conditions
CI / wasm_demo (push) Blocked by required conditions
CI / tree-sitter (push) Blocked by required conditions
CI / updater_test (0.3.0) (push) Blocked by required conditions
CI / fmt_test (push) Blocked by required conditions
CI / esp-idf-quick (push) Blocked by required conditions
CI / android (push) Blocked by required conditions
CI / miri (push) Blocked by required conditions
CI / test-figma-inspector (push) Blocked by required conditions
2025-05-19 15:25:40 +02:00
Tasuku Suzuki
9bf36d6120 Gallery: Add Japanese translation
Some checks are pending
CI / build_and_test (--exclude ffmpeg --exclude gstreamer-player, macos-14, stable) (push) Blocked by required conditions
CI / build_and_test (--exclude ffmpeg --exclude gstreamer-player, windows-2022, 1.82) (push) Blocked by required conditions
CI / build_and_test (--exclude ffmpeg --exclude gstreamer-player, windows-2022, beta) (push) Blocked by required conditions
CI / build_and_test (--exclude ffmpeg --exclude gstreamer-player, windows-2022, stable) (push) Blocked by required conditions
CI / build_and_test (ubuntu-22.04, 1.82) (push) Blocked by required conditions
CI / build_and_test (ubuntu-22.04, nightly) (push) Blocked by required conditions
CI / node_test (macos-14) (push) Blocked by required conditions
CI / node_test (ubuntu-22.04) (push) Blocked by required conditions
CI / node_test (windows-2022) (push) Blocked by required conditions
CI / python_test (macos-14) (push) Blocked by required conditions
CI / python_test (ubuntu-22.04) (push) Blocked by required conditions
CI / python_test (windows-2022) (push) Blocked by required conditions
CI / cpp_test_driver (macos-13) (push) Blocked by required conditions
CI / cpp_test_driver (ubuntu-22.04) (push) Blocked by required conditions
CI / cpp_test_driver (windows-2022) (push) Blocked by required conditions
CI / cpp_cmake (macos-14, 1.82) (push) Blocked by required conditions
CI / cpp_cmake (ubuntu-22.04, stable) (push) Blocked by required conditions
CI / cpp_cmake (windows-2022, nightly) (push) Blocked by required conditions
CI / mcu-embassy (push) Blocked by required conditions
CI / cpp_package_test (push) Blocked by required conditions
CI / vsce_build_test (push) Blocked by required conditions
CI / mcu (pico-st7789, thumbv6m-none-eabi) (push) Blocked by required conditions
CI / mcu (pico2-st7789, thumbv8m.main-none-eabihf) (push) Blocked by required conditions
CI / mcu (stm32h735g, thumbv7em-none-eabihf) (push) Blocked by required conditions
CI / updater_test (0.3.0) (push) Blocked by required conditions
CI / fmt_test (push) Blocked by required conditions
CI / esp-idf-quick (push) Blocked by required conditions
CI / android (push) Blocked by required conditions
CI / miri (push) Blocked by required conditions
CI / test-figma-inspector (push) Blocked by required conditions
2025-05-15 22:09:14 +02:00
Montel Laurent
4cd6f92013
Hide action when widget is disabled
ChangeLog: TextEdit/LineEdit : disable context menu action when the widget is disabled or read-only
ChangeLog: Added ContextMenuArea::enabled
2025-05-02 13:20:46 +02:00
Simon Hausmann
2f2478d1ea WGPU: Clean up public API
- Create a `slint::wgpu_24` module
- Re-export `wgpu` in it
- Place the WGPU config types used by the `BackendSelector::require_wgpu_24` function in it, and remove the 24 infix.

As an upside, this also adds the feature guard to the docs at least for the `wgpu_24` module.
2025-04-30 15:54:06 +02:00
ogoffart
e0099ea500 Bump version number to 1.12.0 2025-04-30 13:27:50 +00:00
Simon Hausmann
8f68ededcf Gallery Example: Make the data tab work
Provide a default unfiltered/unsorted view of the table, so that
editing the data in the data tab changes.
2025-04-30 14:50:29 +02:00
Simon Hausmann
33581182ef backend-selector: Add the ability to configure WGPU
The `require_wgpu_24` function accepts either a fully setup WGPU, or one
can configure individual aspects such as features/limits.

The wgpu_texture example uses this to add push constants to the required
features and thus eliminates the need for uniform buffers.
2025-04-29 17:46:57 +02:00
Simon Hausmann
da5e7d5b22 WGPU: Add support for using WGPU textures in Slint
This adds a `unstable-wgpu-24` feature that exposes WGPU types in the
GraphicsAPI enum, adds `require_wgpu_24()` to the backend selector,
and adds a conversion from `wgpu::Texture` to `slint::Image`.

The `require_wgpu_24()` function in the selector will be extended in the
future (before the next release) to permit specifying additional aspects
of the WGPU configuration.

Co-Authored-By: Olivier Goffart <olivier.goffart@slint.dev>
2025-04-29 17:46:57 +02:00
Tobias Hunger
dbf8c9e16a
examples: Do not fail todo example test (#8293)
* examples: Do not fail `todo` example test

... when `SLINT_ENABLE_DEBUG_INFO` is not set.

Co-authored-by: Olivier Goffart <olivier.goffart@slint.dev>
2025-04-28 13:20:52 +02:00
Montel Laurent
3cea092fd2
Gallery example: Disable button widget too (#8205) 2025-04-28 11:05:51 +02:00
Olivier Goffart
387a106850 Fix embassy build after dependency updates 2025-04-23 14:11:22 +02:00
Olivier Goffart
680df91f7f Update mcu-embassy dependencies
Most importently env_logger that depends on a deprecated atty that is
raising security issues
2025-04-23 13:28:23 +02:00
Laurent Montel
63756e90cb Add missing include(FetchContent) 2025-04-18 15:27:37 +02:00
Simon Hausmann
e39086c45e Remove unused tt21100 dependency 2025-04-15 11:32:27 +02:00
Simon Hausmann
c91ef1d7e6 Prospective build fix for non-esp mcu-board-support crate builds 2025-04-15 11:32:27 +02:00
Simon Hausmann
00c89626df Introduce a prelude to mcu-board-support to make esp-hal available when the entry point comes from esp_hal::main
esp_hal::main's code requires the availability of `esp_hal` as import.
2025-04-15 11:32:27 +02:00
autofix-ci[bot]
b963046943 [autofix.ci] apply automated fixes 2025-04-15 11:32:27 +02:00
Juraj Michálek
ff876f35ac muc-board-support: esp32-s3-box-3 use Instant::now(), remove timer 2025-04-15 11:32:27 +02:00
autofix-ci[bot]
bfefe72348 [autofix.ci] apply automated fixes 2025-04-15 11:32:27 +02:00
Juraj Michálek
cc76e8f1d7 muc-board-support: doc - update README 2025-04-15 11:32:27 +02:00
Juraj Michálek
d85f27ea9c muc-board-support: esp32-s3-box-3 resolve entry point 2025-04-15 11:32:27 +02:00
Juraj Michálek
4caf947399 muc-board-support: esp-hal dependency only for esp32-s3-box-3 2025-04-15 11:32:27 +02:00
Juraj Michálek
a73b5668ba esp32-s3-box clean up 2025-04-15 11:32:27 +02:00
Juraj Michálek
5712704b6b add timer handling 2025-04-15 11:32:27 +02:00
Juraj Michálek
eeb2f2602c use default gt911 crate without modification 2025-04-15 11:32:27 +02:00
Juraj Michálek
6573b12f9a use fallback address 2025-04-15 11:32:27 +02:00
Juraj Michálek
bdf40967da implement esp32-s3-box initialization correction from ESP-IDF 2025-04-15 11:32:27 +02:00
Juraj Michálek
718a71e4da add delay handling to the driver 2025-04-15 11:32:27 +02:00
Juraj Michálek
4db101fd56 remove driever modification 2025-04-15 11:32:27 +02:00
Juraj Michálek
a4312fd67f fix initialization sequence 2025-04-15 11:32:27 +02:00
Juraj Michálek
cd0274f353 graceful handling of touch 2025-04-15 11:32:27 +02:00
Juraj Michálek
48172c995b add esp32-s3-box-3 with gt911 touch 2025-04-15 11:32:27 +02:00
Juraj Michálek
fafde05338 initial migration to esp-hal-1.0.0 2025-04-15 11:32:27 +02:00