Commit graph

13000 commits

Author SHA1 Message Date
Simon Hausmann
438ebae52e gtreamer-player: minor cleanup
Since we're in a callback invoked from within the event loop, we don't
need to us upgrade_in_event_loop().
2025-01-17 07:32:50 +00:00
OwerPlay
ae25c64ac0 Implemented Play/Pause for gstreamer example 2025-01-17 08:28:15 +01:00
Olivier Goffart
28e54175f6 Work on the ContextMenu
- Add the `entries` property in the ContextMenu
 - Make right click on the ContextMenu show the menu
 - Use the proper technique to register ContextMenu and MenuBar as
   experimental (same as ComponentContainer)
2025-01-16 20:21:06 +01:00
Olivier Goffart
a6d43461a4
Fix runtime panic with colspan or rowspan set to zero
Fix panic:
```
panicked at internal/core/layout.rs:459:33:
index out of bounds: the len is 2 but the index is 2
```
2025-01-16 19:13:05 +01:00
Olivier Goffart
f72e8a1c01 C++/Interpreter: Be consistant with rust in the order in which we create the window
Same as previous commit for Rust
2025-01-16 19:11:31 +01:00
Olivier Goffart
9d1be5209c Don't panic in the generated rust ComponentHandle::window()
It can panic if lazily constructing the window adapter.
Make sure it is actially not lasily constructed, we don't need lazy constructor when not embedding anyway.
2025-01-16 19:11:31 +01:00
Simon Hausmann
62d9f8b13f Minor dependency cleanup
- static_assertions is only needed with ffi.
- i-slint-core-macro is not needed in the build crate.
2025-01-16 14:45:05 +01:00
Olivier Goffart
4985421d6c Android: fix parsing of version output
The version of the JDK 24 constains a `-`

Fixes #4973
That issue can be closed as it works with newer android SDK

ChangeLog: fix build with newer JDK
2025-01-16 14:38:47 +01:00
Simon Hausmann
1bc4f8e7d3 backend-winit: Don't call deprecated xdg settings portal method
Read() returns the value wrapped in a variant, which still works because
downcast_ref() recurses, but it's deprecated and we should be calling
the right function.

Thanks @bilelmoussaoui for spotting!
2025-01-16 09:57:00 +00:00
Simon Hausmann
22ad614bf4 Fix formatting 2025-01-15 19:09:55 +01:00
Simon Hausmann
5030d66765 Replace ashpd dependency with just zbus
This makes our dependency tree lighter and zbus is an already existing dependency (through accesskit).

cc #7276
2025-01-15 17:32:00 +01:00
Simon Hausmann
b8ffca01b4 live-preview(macOs): Add a Window menu with keep on top item
Fixes #7371
2025-01-15 17:14:02 +01:00
dependabot[bot]
2724d60584
build(deps-dev): bump cspell from 8.17.1 to 8.17.2 (#7374)
Bumps [cspell](https://github.com/streetsidesoftware/cspell/tree/HEAD/packages/cspell) from 8.17.1 to 8.17.2.
- [Release notes](https://github.com/streetsidesoftware/cspell/releases)
- [Changelog](https://github.com/streetsidesoftware/cspell/blob/main/packages/cspell/CHANGELOG.md)
- [Commits](https://github.com/streetsidesoftware/cspell/commits/v8.17.2/packages/cspell)

---
updated-dependencies:
- dependency-name: cspell
  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-01-15 17:39:50 +02:00
dependabot[bot]
e4559d48e2 build(deps): bump the github-actions group with 2 updates
Bumps the github-actions group with 2 updates: [autofix-ci/action](https://github.com/autofix-ci/action) and [zephyrproject-rtos/action-zephyr-setup](https://github.com/zephyrproject-rtos/action-zephyr-setup).


Updates `autofix-ci/action` from ff86a557419858bb967097bfc916833f5647fa8c to 551dded8c6cc8a1054039c8bc0b8b48c51dfc6ef
- [Release notes](https://github.com/autofix-ci/action/releases)
- [Commits](ff86a55741...551dded8c6)

Updates `zephyrproject-rtos/action-zephyr-setup` from 1.0.5 to 1.0.6
- [Commits](https://github.com/zephyrproject-rtos/action-zephyr-setup/compare/v1.0.5...v1.0.6)

---
updated-dependencies:
- dependency-name: autofix-ci/action
  dependency-type: direct:production
  dependency-group: github-actions
- dependency-name: zephyrproject-rtos/action-zephyr-setup
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-actions
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-15 16:09:56 +01:00
Nigel Breslaw
741627f1b0
Fix dependabot unable to update Typedoc (#7376) 2025-01-15 16:24:28 +02:00
dependabot[bot]
7fc32e5149
build(deps): bump the starlight_astro group with 3 updates (#7373)
Bumps the starlight_astro group with 3 updates: [@astrojs/starlight](https://github.com/withastro/starlight/tree/HEAD/packages/starlight), [@expressive-code/plugin-line-numbers](https://github.com/expressive-code/expressive-code/tree/HEAD/packages/@expressive-code/plugin-line-numbers) and [astro](https://github.com/withastro/astro/tree/HEAD/packages/astro).


Updates `@astrojs/starlight` from 0.30.6 to 0.31.0
- [Release notes](https://github.com/withastro/starlight/releases)
- [Changelog](https://github.com/withastro/starlight/blob/main/packages/starlight/CHANGELOG.md)
- [Commits](https://github.com/withastro/starlight/commits/@astrojs/starlight@0.31.0/packages/starlight)

Updates `@expressive-code/plugin-line-numbers` from 0.39.0 to 0.40.0
- [Release notes](https://github.com/expressive-code/expressive-code/releases)
- [Changelog](https://github.com/expressive-code/expressive-code/blob/main/packages/@expressive-code/plugin-line-numbers/CHANGELOG.md)
- [Commits](https://github.com/expressive-code/expressive-code/commits/@expressive-code/plugin-line-numbers@0.40.0/packages/@expressive-code/plugin-line-numbers)

Updates `astro` from 5.1.5 to 5.1.7
- [Release notes](https://github.com/withastro/astro/releases)
- [Changelog](https://github.com/withastro/astro/blob/main/packages/astro/CHANGELOG.md)
- [Commits](https://github.com/withastro/astro/commits/astro@5.1.7/packages/astro)

---
updated-dependencies:
- dependency-name: "@astrojs/starlight"
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: starlight_astro
- dependency-name: "@expressive-code/plugin-line-numbers"
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: starlight_astro
- dependency-name: astro
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: starlight_astro
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-15 16:23:53 +02:00
Nigel Breslaw
b067e71901
Dependabot: Group ES plugin with Astro Starlight (#7372) 2025-01-15 14:28:14 +02:00
Simon Hausmann
37ed7e6129 Fix Bazel build
Work around rav1e's use of the built crate panicing if certain cargo
provided environment variables aren't set. These don't seem to be needed
by rav1e, it merely wants the version, but still...
2025-01-15 08:27:48 +00:00
Olivier Goffart
fbaa18aafc
Docs: Update docs for image
Link to the API docs from the image type.
2025-01-15 08:03:00 +01:00
Simon Hausmann
8e6d2c80e5 Use unicode-segmentation from the Cargo workspace 2025-01-14 19:31:34 +01:00
Tasuku Suzuki
68b9dfc247 String: Add .is-empty and .character-count properties
Introduce two new properties for string in .slint:
- .is-empty: Checks if a string is empty.
- .character-count: Retrieves the number of grapheme clusters
  https://www.unicode.org/reports/tr29/#Grapheme_Cluster_Boundaries

These additions enhance functionality and improve convenience when working with string properties.
2025-01-14 19:29:05 +01:00
Olivier Goffart
12fe2bb36d Extra tests for Timer::stop
Just in case (CC #5885)
2025-01-14 18:02:41 +01:00
Olivier Goffart
8a5df27469
Update to Image 0.25 (#7365)
Added image-default-formats with all the format supported by image by
default, and enable that feature by default.
Also put that feature in compat-1-2 for compatibility with user that
have used image 0.24 with enabled features.
Make a new compat-1-10 feature that does not enable default format by
default

ChangeLog: upgraded image crate to 0.25, added a new cargo feature
to enable all image formats. (that feature is enabled by default with
compat-1-2, added compat-1-10 to disable it

Fixes https://github.com/slint-ui/slint/issues/7251
2025-01-14 16:31:05 +01:00
Simon Hausmann
ed2ff073b8 CI: speed up version determination step in npm publishing step
We don't need linux dependencies and Rust just to read some fields from
package.json.
2025-01-14 16:11:13 +01:00
dependabot[bot]
68a5adec94 build(deps): bump @expressive-code/plugin-line-numbers
Bumps [@expressive-code/plugin-line-numbers](https://github.com/expressive-code/expressive-code/tree/HEAD/packages/@expressive-code/plugin-line-numbers) from 0.38.3 to 0.39.0.
- [Release notes](https://github.com/expressive-code/expressive-code/releases)
- [Changelog](https://github.com/expressive-code/expressive-code/blob/main/packages/@expressive-code/plugin-line-numbers/CHANGELOG.md)
- [Commits](https://github.com/expressive-code/expressive-code/commits/@expressive-code/plugin-line-numbers@0.39.0/packages/@expressive-code/plugin-line-numbers)

---
updated-dependencies:
- dependency-name: "@expressive-code/plugin-line-numbers"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-14 15:27:05 +01:00
dependabot[bot]
870805ec19 build(deps): bump typescript from 5.2.2 to 5.7.3
Bumps [typescript](https://github.com/microsoft/TypeScript) from 5.2.2 to 5.7.3.
- [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.2.2...v5.7.3)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-14 15:25:56 +01:00
Nigel Breslaw
b4d2782ee4
docs: Fix missing trailing slash (#7353)
The docs were generated so links did not end with a trailing slash. e.g. https://docs.slint.dev/latest/docs/slint/guide/tooling/vscode but the website setup then redirects this to https://docs.slint.dev/latest/docs/slint/guide/tooling/vscode/. This now ensures the trailing slash is added.
2025-01-14 15:49:47 +02:00
Simon Hausmann
dacfea7466 Include rust-module.d.cts in the biome linter output
Some of this is also part of our public API, so let's also check it
(and avoid API clashes like `arguments`).
2025-01-14 14:49:02 +01:00
Simon Hausmann
87b893add7 Node.js: Upgrade TypeScript
Sadly, ts-node doesn't work with the newer typescript anymore. As per https://github.com/avajs/ava/blob/main/docs/recipes/typescript.md , this patch changes
from the second to the first method: build the tests first, then run them with ava.

This requires a few small changes in the tests, as import.meta.url now returns the transpiled .mjs file in the build dir, instead of the source dir, as expected by the test.
2025-01-14 14:49:02 +01:00
Simon Hausmann
22e7c4d4a6 Fix Node.js docs missing Diagnostic, DiagnosticLevel, RgbaColor, and Brush
typedoc uses typescript under the hood. An import from "rust-module.cjs" won't look for .d.ts but .d.cts as per https://www.typescriptlang.org/docs/handbook/modules/reference.html#file-extension-substitution .

This way the existing warning from the TS compiler that rust-module.cjs was imported as any goes away and actual type checking is being done. The rest of this commit fixes those type errors, including missing type casts to make ts-node's transpiler not thrown an exception.
2025-01-14 14:49:02 +01:00
Simon Hausmann
4aa81b671a Make glow a Cargo workspace dependency 2025-01-14 14:24:41 +01:00
Simon Hausmann
37be696cd6 Bump glow and femtovg versions 2025-01-14 14:24:41 +01:00
Simon Hausmann
53f2d572b1 Remove some uses of once_cell 2025-01-14 14:18:24 +01:00
Olivier Goffart
404956f919 Update mipidsi dependency 2025-01-14 14:02:44 +01:00
Simon Hausmann
67cd3d7aad linuxkms: Bump gbm dependency 2025-01-14 13:55:53 +01:00
Simon Hausmann
0449ea24a4 lsp(macOS): Bump muda dependency 2025-01-14 13:52:21 +01:00
Olivier Goffart
5cf9c6806e LSP: don't auto-compete private properties 2025-01-14 11:26:57 +01:00
Olivier Goffart
6e9c991933 Janitor: cargo fmt 2025-01-14 11:24:15 +01:00
Olivier Goffart
c1bab16d6d Janitor: dependencies update 2025-01-14 10:48:46 +01:00
Simon Hausmann
31c0fea9aa doc: Shorten and edit the main page button text
This is attempt to make it easier to read by using less words and by starting
each card with a verb (to make it actionable). Also removed the backticks
for std-widgets, as it seems that LinkCard doesn't support inline markdown
formatting.
2025-01-14 09:58:40 +01:00
Olivier Goffart
5c6ddfdda9 C++ tests: disable false positive warning on more recent version of GCC
CC #7358

(Test for version 14 because that is what i have installed and haven't
tested any other versions)
2025-01-14 09:54:51 +01:00
Simon Hausmann
20a0a585c3 doc: fix broken links 2025-01-14 09:31:05 +01:00
Simon Hausmann
43db58aaf5 Bump MSRV to 1.82
Fixes #7254
2025-01-14 08:33:21 +01:00
Olivier Goffart
d17d5dd6e4 PopupWindow: Fix escape with the Qt backend
With the Qt backend, the PopupWindow has it's own Window, so we need to
make sure we close the popup on the right Window

Fixes #7332
2025-01-13 21:08:58 +01:00
Olivier Goffart
36381c579b ListView focus fixes
- Fix StandardListView not always getting the focus. Because the
   geometry of the FocusScope might be empty but its position is still
   in the non-clipped area, but not its center.

 - Fix panic when accessing "negative" items if there are hidden
   elements in the ListView (#7341)

Fixes #7341
2025-01-13 21:08:32 +01:00
Tobias Hunger
9e0a68afa0 live-preview: Normalize component names when looking them up in AST 2025-01-13 16:27:24 +01:00
Tobias Hunger
70742a212d lsp: Import more types in rename_component 2025-01-13 16:27:24 +01:00
Tobias Hunger
eb4fa61f25 lsp: Simplify tests in rename_component
No behavior change is intended...
2025-01-13 16:27:24 +01:00
Nigel Breslaw
a390118b6a
Docs: Fix <title> tag having docs version (#7350)
The version was being set not just as a visual title, but also as part of the meta tag for every page on the docs site. Which will then change for each release as the version number changes.

Other sites have a static label here that is independent of the version e.g. Slint UI or Slint docs. 'Slint Docs' is now used.
2025-01-13 17:07:07 +02:00
Olivier Goffart
7056515f6c Detect binding loops when it involve the condition of a if in a layout
Fixes #7126
2025-01-13 14:40:18 +01:00