Commit graph

2608 commits

Author SHA1 Message Date
autofix-ci[bot]
c0bdfa7169 [autofix.ci] apply automated fixes 2025-04-22 22:30:32 +02:00
Kavindra Palaraja
cafa43ff22 Minor updates to the documentation for readability and polish 2025-04-22 22:30:32 +02:00
Simon Hausmann
f94e5a73b0 Node.js: Fix support for loadFile() with an URL on Windows
We recommend the use of `loadFile(new URL("...", import.metal.url))`,
but this never worked on Windows, because we're not using the API
the Node.js docs even recommend to correctly covert to a local path on Windows.

(Apply the same logic to initTranslations)

Fixes #8209
2025-04-22 18:01:48 +02:00
Simon Hausmann
5dc8410f0a Python: Fix mis-rendering 2025-04-22 16:24:21 +02:00
Simon Hausmann
9ce290b706 Python: Remove empty building from source section as well as trying out section
The latter is not very useful on our website, and we typically don't do this with the intros for other languages.
2025-04-22 16:17:27 +02:00
Simon Hausmann
ae50fcde8a Take the Python API out of alpha to beta 2025-04-22 14:02:45 +02:00
Olivier Goffart
cd8ab8ce53
Fix array index access at negative index
Conversion from negative float to unsigned is saturating to 0 in rust
and undefined behavior in C++, we should therefore handle the case
properly

Fixes #8222
2025-04-22 11:28:09 +02:00
Simon Hausmann
c4386ce22c Fix esp32-p4 build
jtag is not supported with esp-println
2025-04-16 09:47:01 +02:00
Olivier Goffart
9b1d4e740c Document better the argument of the select_bundled_translation 2025-04-16 06:03:31 +02:00
Simon Hausmann
5cd1c157f1 Fix C++ crate build
The newer version of esp-println requires choosing the output channel.
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
Olivier Goffart
78a3757b7f
Remormat all the toml file again to fix npm upload
Commit cd6f2e2 reformated the .toml, but the 80 char width column is
judged too small to be practical

Add a .taplo.toml file

Also do not split feature array
2025-04-09 15:06:00 +02:00
Simon Hausmann
ac256d61d8 winit: replace special private function to spawn event loop with public API in the winit backend builder
This means the event loop spawning goes through the backend, which will permit for state from the Backend struct to be available when spinning the event loop even when spawning it merely.
2025-04-09 08:50:39 +02:00
Simon Hausmann
4e65998016 Clean up wasm-interpreter / winit interface
Use the window attributes hook instead of a private function in the winit backend.
2025-04-09 08:50:39 +02:00
dependabot[bot]
2feb048fa5
build(deps): bump typescript from 5.8.2 to 5.8.3 (#8069)
Bumps [typescript](https://github.com/microsoft/TypeScript) from 5.8.2 to 5.8.3.
- [Release notes](https://github.com/microsoft/TypeScript/releases)
- [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release-publish.yml)
- [Commits](https://github.com/microsoft/TypeScript/commits)

---
updated-dependencies:
- dependency-name: typescript
  dependency-version: 5.8.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-08 11:00:19 +03:00
dependabot[bot]
b7467df94a
build(deps-dev): bump typedoc from 0.28.1 to 0.28.2 (#8073) 2025-04-08 08:24:04 +03:00
Simon Hausmann
826ad7a865 Upgrade to PyO3 0.24
The main change is that Rust paths are mapped to pathlib.Path, which changes our API (stricter).
2025-04-03 12:24:02 +02:00
Simon Hausmann
0c51f69b0a Upgrade to PyO3 0.23 2025-04-03 12:24:02 +02:00
Simon Hausmann
ad74c31ed4 Remove dependency on gil-refs feature
(which will be removed in future versions)
2025-04-03 12:24:02 +02:00
Simon Hausmann
9253af05b1 Upgrade to PyO3 0.22 2025-04-03 12:24:02 +02:00
Olivier Goffart
12a2493269
C++: add notify_ prefix to the Model functions and add docs
* C++: add `notify_` prefix to the Model functions and add docs

The `notify_*` function are used by the model to notify the view.
As opposed to the function without the prefix, which are used to get
notified when a source model change

Fixes #3888
CC #3945 (for the docs about thread safety)
2025-04-03 07:59:15 +02:00
Olivier Goffart
4145eafe14 C++: Fix segfault when calling Model::row_changed() after Model::reset()
Fixes #8021
2025-04-02 12:41:57 +02:00
Tobias Hunger
cd6f2e2cf2 ci: Format toml files
... using taplo with default settings

I tried this with 4 spaces indentation, but the patch is almost as
big as this one, so I went with default settings instead as that
is just easier:-)
2025-04-02 11:03:41 +02:00
Olivier Goffart
6f4f5aeefa Replace no_mangle with unsafe(no_mangle) in example and docs
We can't just do `s/#\[no_mangle]/#[unsafe(no_mangle)]/g`
because the version of cbingen we use doesn't understand the unsafe
attribute yet.

Part of #7998
2025-03-31 17:35:22 +02:00
Olivier Goffart
bf3c47f1fa C++: add code sample form model adapters
Fixes #4967
2025-03-31 16:13:45 +02:00
Simon Hausmann
ed878f01ac Python: Add third-party licenses page to the docs
Fixes #6634
2025-03-29 18:04:30 +01:00
Olivier Goffart
aca30901be C++: put the parent in a weak pointer
Right now we always `lock().value()` it which is the equivalent of
`upgrade().unwrap()` in rust, this helps because it keeps the parent
alive when we are calling function in it.

Ideally we should also check that it wasn't deleted, but that's another
issue.

Fixes #7880
2025-03-28 17:24:14 +01:00
Olivier Goffart
a80f14e7d8 Fix re-instentiating if elements when the condition is dirty
Fixes #3953
2025-03-27 15:37:07 +01:00
Olivier Goffart
54a3506f4d C++: move model code to its own file
Most of the slint.h file is used for model code, so before doing some
work on the model i wanted to refactor the code in its own file.
Since the model need access to the ComponentHandle, i also had to move
that in its own file
2025-03-25 10:37:20 +01:00
dependabot[bot]
c5527e3311
build(deps-dev): bump typedoc from 0.28.0 to 0.28.1 (#7928)
Bumps [typedoc](https://github.com/TypeStrong/TypeDoc) from 0.28.0 to 0.28.1.
- [Release notes](https://github.com/TypeStrong/TypeDoc/releases)
- [Changelog](https://github.com/TypeStrong/typedoc/blob/master/CHANGELOG.md)
- [Commits](https://github.com/TypeStrong/TypeDoc/compare/v0.28.0...v0.28.1)

---
updated-dependencies:
- dependency-name: typedoc
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-24 09:30:33 +02:00
Simon Hausmann
ced9ae7b5f
Python: Fix rendering or callback decorator docs 2025-03-23 13:16:45 +01:00
Simon Hausmann
64d446921d Python: Fix pdoc invocation to render index and search module 2025-03-23 10:29:04 +01:00
Simon Hausmann
c7d158afe7
Python: fix doc building (#7921) 2025-03-23 08:31:37 +01:00
Simon Hausmann
a313916ce6 Python: Begin docs for model
This requires use of the pdoc API to work around an issue with the base methods not showing up in the docs.
2025-03-22 17:14:15 +01:00
Simon Hausmann
d420bd8113 Python: docs for ListModel 2025-03-22 17:14:15 +01:00
Simon Hausmann
44336e0e10 Python: docs for callback and set_xdg_app_id 2025-03-22 17:14:15 +01:00
Simon Hausmann
fc18b69a65 Sync python timer docs
Sync with commit 6aff60b38f
2025-03-22 11:58:34 +01:00
Simon Hausmann
e57e155a2d Python: Add some API docs for timer, timermode, and the loader 2025-03-21 09:37:52 +01:00
Tobias Hunger
e5ecb9cf6c infra: Test out mise
I found `mise` a tool to help manage development projects.
https://mise.jdx.dev/

It basically can manage ENV vars based on the directory you are in,
manages tools you need (and makes thoser available based on the
directory you are in), and allows to define simple tasks that can
then be shared between developers.

Tools can be found in npm, pipx, aqua, binaries on github, ...
and it tries to verify signatures and all that (if supported by the
repo the data comes from).

I replaces the entire autofix workflow with mise tooling and tasks,
just to give it a try :-)

To reproduce:

```sh
> cargo install mise # to get the tool itself

# Follow the necessary step
# https://mise.jdx.dev/installing-mise.html#shells
# to intergate into your shell

> cd /your/slint/folder

# Mise will now ask whether or not to trust this dir and prints the
# command needed to do so. Run that.

> mise install # Install all the tools defined in .mise/config.toml

# Add a .mise.local.toml with local overrides. Git will ignore this file.
# Or add tasks into .mise/tasks/local ... Git will also ignore those.

> mise run 'ci:autofix:**:all' # To run all the ci:autofix tasks.
```

It is so much fatser to see these checks fail locally than it is to
bother CI with them :-)
2025-03-20 16:33:00 +01:00
Simon Hausmann
98ad1e3aa4 Python: Incrementally add some more API docs 2025-03-20 09:14:17 +01:00
dependabot[bot]
5c9a737754
build(deps-dev): bump typedoc from 0.27.9 to 0.28.0 (#7871)
Bumps [typedoc](https://github.com/TypeStrong/TypeDoc) from 0.27.9 to 0.28.0.
- [Release notes](https://github.com/TypeStrong/TypeDoc/releases)
- [Changelog](https://github.com/TypeStrong/typedoc/blob/master/CHANGELOG.md)
- [Commits](https://github.com/TypeStrong/TypeDoc/compare/v0.27.9...v0.28.0)

---
updated-dependencies:
- dependency-name: typedoc
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-18 14:41:40 +02:00
crai0
4bb7412460 ChangeLog: Add float.to-fixed and float.to-precision
Add two new float to string conversion methods that mimic
JavaScript's Number.toFixed() and Number.toPrecision().

They are implemented as no_mangle functions similar to the already
existing float to shared string conversion.

Closes #5822
2025-03-18 11:44:28 +01:00
ogoffart
178cf21c2e Bump version number to 1.11.0 2025-03-18 09:48:22 +00:00
Simon Hausmann
bc42b30eac Quick pass at some Python API docs
... and fixed library_paths type signature while at it.
2025-03-18 09:03:47 +01:00
Simon Hausmann
154d877d9f CMake: Add support for overriding the translation domain via a target property
This is useful in environments such as esp-idf, where the component name is something awkward like __esp_idf_main or so.
2025-03-14 14:46:29 +01:00
scristall-bennu
be59032ecb
Use find_package to search for Corrosion (#7797)
First try to search for corrosion before fetching it
2025-03-05 19:19:47 +01:00
Olivier Goffart
d40a8b6d23 esp-idf: Be smarter about RGB888 and RGB565
This changes the default if the user has selected
`CONFIG_BSP_LCD_COLOR_FORMAT_RGB888` in their sdkconfig,
(which will result in build error if the buffer were passed as
Rgb565Pixel, or in garbage of the screen if the screen was configured
programatically to use rgb565 without calling `bsp_display_new` which is
unlikely if they set CONFIG_BSP_LCD_COLOR_FORMAT_RGB888)
2025-03-05 12:18:12 +01:00
dependabot[bot]
da33ffa6f5 build(deps-dev): bump typedoc from 0.27.8 to 0.27.9
Bumps [typedoc](https://github.com/TypeStrong/TypeDoc) from 0.27.8 to 0.27.9.
- [Release notes](https://github.com/TypeStrong/TypeDoc/releases)
- [Changelog](https://github.com/TypeStrong/typedoc/blob/master/CHANGELOG.md)
- [Commits](https://github.com/TypeStrong/TypeDoc/compare/v0.27.8...v0.27.9)

---
updated-dependencies:
- dependency-name: typedoc
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-05 08:21:19 +01:00
dependabot[bot]
efb4d23f38
build(deps): bump typescript from 5.7.3 to 5.8.2 (#7780)
Bumps [typescript](https://github.com/microsoft/TypeScript) from 5.7.3 to 5.8.2.
- [Release notes](https://github.com/microsoft/TypeScript/releases)
- [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release.yml)
- [Commits](https://github.com/microsoft/TypeScript/compare/v5.7.3...v5.8.2)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-04 16:39:14 +02:00
Olivier Goffart
5ab791416b Implement Property::set_constant in C++ 2025-03-03 00:50:09 +01:00