Commit graph

10295 commits

Author SHA1 Message Date
Olivier Goffart
76009f199d Prepare for 1.3.1 release 2023-11-28 09:22:48 +01:00
Olivier Goffart
a2e2278db2 Update Changelog 2023-11-28 09:21:01 +01:00
Florian Blasius
6963aefb7b make fluent scrollbar bigger 2023-11-27 22:21:52 +01:00
Olivier Goffart
017448893a
Fix LineEdit with right alignment (#4016)
* Fix LineEdit with right alignement

 - Align the placeholder the same way
 - Make sure the cursor is visible to the right (it is drawn outside of
   the TextInput, so some size need to be accounted for

(Discussed in https://github.com/slint-ui/slint/discussions/3996 )
2023-11-27 18:52:54 +01:00
Simon Hausmann
d4e51b810e
Node.js: Add some keywords and description to package.json (#4018) 2023-11-27 18:26:52 +01:00
Simon Hausmann
42d575262e
Fix SharedString::end() throwing an exception when MSVC iterator debugging is enabled (#4017)
Don't dereference end() of a string_view.

Co-authored-by: Olivier Goffart <olivier.goffart@slint.dev>
2023-11-27 18:11:55 +01:00
Olivier Goffart
6195fc8567 Fix compilation when dividing by zero at compile time
Rust would have panicked and C++ generated wrong code.

CC #3982
2023-11-27 17:09:57 +01:00
Olivier Goffart
8a841405c8 Revert "Fix timers not firing on Windows"
This reverts commit 1f5f07f65a.

Revert the work around that is no longer required with 0.29.4
(also add this version as a dependency)
2023-11-27 16:39:01 +01:00
Simon Hausmann
21f4a076d8 ChangeLog: Minor formatting fixes 2023-11-27 15:11:55 +01:00
Simon Hausmann
da5e91ac96 ChangeLog: Mention Skia Vulkan renderer fix 2023-11-27 15:10:46 +01:00
Florian Blasius
5af7095fc9
move mapmodel to private_api (#4015)
Moved MapModel to private api because it is not ready now until the notify mechanism for node models is improved.
2023-11-27 13:11:31 +01:00
Florian Blasius
c00a21d651
make use of textinputbase (#4014) 2023-11-27 08:50:29 +01:00
Olivier Goffart
a3e48c4950 Const propagation of min and max
Since we generate a lot of max(min, preferred) in the geometry code,
this allow to simplify some expressions in the generated code
2023-11-24 14:20:27 +01:00
Olivier Goffart
d7368f732e vscode: add default to false
Asked in https://github.com/slint-ui/slint/pull/4000#discussion_r1404258497
2023-11-24 14:08:06 +01:00
Olivier Goffart
065ee38373 LSP: default style to native 2023-11-24 14:08:06 +01:00
Olivier Goffart
184cb5f580 LSP: Simplify the preview config handling
- Put the config in a struct so its easier to pass around
 - respect the command line args as default for the style
 - fix compilation without the preview feature
2023-11-24 14:08:06 +01:00
Olivier Goffart
26e8d308b7 LSP: rename and fix the hide toolbar option
- rename the command line option to --no-toolbar
 - Make it default to not hide the toolbar (so it is visible by default)
2023-11-24 14:08:06 +01:00
Olivier Goffart
fdfa4b31e4 Visit the geometry property as root from binding_analysis
We need to visit them from there to mark them as used externally,
otherwise the remove_alias passes might remove them.

Fixes #4002
2023-11-24 14:07:42 +01:00
Simon Hausmann
e4cc80aeea
Fix typescript errors shown in VS code when editing node test files (#3999)
The nodenext module resolution was only passed to ts-node, but vscode didn't see it.
Use a dedicated tsconfig.json for vscode as well as ts-node.
2023-11-24 17:22:38 +08:00
Olivier Goffart
e6d15576a3
Docs: remove non-existing properties in TabWidget (#3998)
These were added by commit eec9d31809 but
they are compiler internal properties that are not available to users,
or just don't exist

Discussed in https://github.com/slint-ui/slint/discussions/3995
2023-11-24 08:56:01 +01:00
Tobias Hunger
01f6771693 lsp: Rename show_preview_ui argument to show_preview_toolbar 2023-11-23 20:44:06 +01:00
Tobias Hunger
fd36b17481 LSP: Switch preview-ui even when no preview is loaded 2023-11-23 20:44:06 +01:00
Tobias Hunger
e9f5964c45 lsp: Pass Cli arguments around 2023-11-23 20:44:06 +01:00
Tobias Hunger
548f10be2b lsp: Add option to show/hide preview ui
... and use that option in VSCode configuration.
2023-11-23 20:44:06 +01:00
Florian Blasius
b19cbba7ad
node: added MapModel (#3946)
---------

Co-authored-by: Simon Hausmann <simon.hausmann@slint.dev>
2023-11-23 12:20:06 +01:00
Olivier Goffart
b903c60a3a Upgrade corrosion 2023-11-23 09:34:27 +01:00
Olivier Goffart
c1e68fc18f Update Changelog 2023-11-23 09:34:03 +01:00
Olivier Goffart
e27a662019 Revert "Clip button texts"
This reverts commit 19e1cd8ac2.

This caused regressions as the button no longer have the proper minimum
size.

Fixes #3985
Reverts #3977
2023-11-23 08:53:12 +01:00
ogoffart
0a5bf6c37b Bump version number to 1.3.1 2023-11-23 07:47:07 +00:00
Olivier Goffart
7008b11e3e Properly send exit events when mouse is outside of a PopupWindow
... for non-native PopupWindow.

We first need to handle the grabbed event regardless of popup window.

Then, if we are outside of the popup window, we should send exit events
so that, for example, the has-hover and mouse cursor get properly
updated.

Fixes #3934
2023-11-23 07:25:46 +01:00
Olivier Goffart
a266e63549 Testing: Add some tests for setting the mouse cursor 2023-11-23 07:25:46 +01:00
Olivier Goffart
84202f6af3 Fix ComponentContainer causing panic when using forward-focus
The ComponentContainer is usually instentiated when trying to evaluate a
property such as the geometry or moving the focus. But the init code of
the ComponentContainer would then tries to change the focus which will
indirectly re-visit items and recurse into some property which are being
evaluated.

We do not need to set the focus on instentiation of the
ComponentContainer anyway, intentiating it shouldn't change the current
focus.

This fixes the LSP preview crashing when trying to preview a component
that has forward-focus

Fixes: #3950
2023-11-22 14:13:27 +01:00
Olivier Goffart
1afb9bddec Janitor: Merge two identical tests
The tests have the exact same (Slint) code: no need to duplicate them.
Several rust functions can be run for the same Slint code.

Save compilation time
2023-11-22 14:13:27 +01:00
Tobias Hunger
2ad8774a61 Add clamp function to slint language 2023-11-22 12:27:54 +01:00
Olivier Goffart
77e5c40ce2 LSP: don't expose symbols with empty names
Empty symbol names causes error in vscode

Fix #3979

Also fix the ranges of enums
2023-11-22 11:59:36 +01:00
FliPPeDround
1d643dd6c2 fix: use loadSource in loadSource api test 2023-11-22 08:11:53 +01:00
FliPPeDround
2920e15f4a feat: export loadSource api 2023-11-22 08:11:53 +01:00
George Hopkins
19e1cd8ac2 Clip button texts 2023-11-22 06:49:33 +01:00
Florian Blasius
62e5fb43bf
align styling resources (#3973) 2023-11-21 14:45:07 +01:00
Olivier Goffart
31ae104947 Also test to-float() with empty strings that aren't optimized out 2023-11-21 09:29:12 +01:00
Simon Hausmann
84fd6dc08c Clean up Node.js port build system
- Instead of building index.js with esbuild and generating types with
  tsc, use tsc to build index.js and index.d.ts.
- Use ts-node instead of swc for typescript based tests, as that
  works with es modules.
- Remove "syntax_check" target from package.json as that's now
  implied with "compile".
- Sadly this requires one "as any" cast as tsc somehow fails to
  determine the right type info for node-fetch.

Unfortunately index.js can't be an ES module without breaking
compatiblity. It would imply that the Node.js port can't be used with
require() anymore. So even thought that would simplify things further,
it's not part of this PR.
2023-11-21 07:20:21 +01:00
Update Translations Bot
6d8e2caedc Update Translations: extract strings 2023-11-21 03:04:07 +00:00
Olivier Goffart
0b2e95f311 janitor: dependencies update 2023-11-20 17:28:01 +01:00
Olivier Goffart
678afb3ba0 Throw an error when returning no value when one is expected.
Previously we were likely to get error in the compiled code anyway.
(although the interpreter worked fine)

Fixes #3962
2023-11-20 13:50:57 +01:00
Olivier Goffart
8d91ff7dea
Fix compiler panic when there is a component called "Window"
the ensure_window and popupwindow passes were looking up the "Window"
builtin in the global register instead of in the builtin register,
causing the presence of an user-defined "Window" to cause panic.

The "Clip" and "BoxShadow" calls are not affected because they were
looking up in the builtin reguister, but using the appropriate function
is more future-proof

Fix #3916
2023-11-20 13:10:31 +01:00
George Hopkins
0a56f43ae4 Implement std::error::Error for LoadImageError 2023-11-20 11:43:13 +01:00
Update Translations Bot
037e5e462e Update Translations: extract strings 2023-11-20 03:04:04 +00:00
Update Translations Bot
48c05c9c84 Update Translations: extract strings 2023-11-19 03:04:00 +00:00
Olivier Goffart
277dce6345 swrenderer: Optimize image rendering
Do the match on the format before the loop
2023-11-18 13:21:11 +01:00
Olivier Goffart
27a56ad567 Test to-float with invalid number 2023-11-17 19:08:33 +01:00