Arkadiusz Żmudzin
d89f8cfe17
Align DatePickerPopup and TimePickerPopup placement logic ( #9410 )
...
Updated the `width` and `height` properties of `DatePickerPopup` and `TimePickerPopup` components to use dynamic sizing based on `dialog` dimensions instead of fixed pixel values.
Previously, the lack of `width` and `height` in `TimePickerPopup` caused inconsistent placement when displayed at a specific location:
- `DatePickerPopup` was centered on the given (x, y)
- `TimePickerPopup` used its top-left corner as the anchor point
Now both components consistently render centered at the specified (x, y).
Fixes #9262
2025-09-15 09:46:39 +02:00
dfaure
8c34ec0a41
Button: add property icon-size ( #9279 )
...
It's nice that the default icon size comes from the style, but sometimes
the user wants a big button with a big icon.
Tested in all 5 styles, with PNG and SVG, with and without icon-size
set.
ChangeLog: Added `icon-size` property to Button
2025-09-11 16:14:17 +02:00
ogoffart
f2aa4899db
Bump version number to 1.14.0
2025-09-11 14:01:14 +00:00
ogoffart
09e397f3ba
Bump version number to 1.13.1
2025-09-08 09:43:17 +00:00
Olivier Goffart
085d122a04
Qt: Fix rendering of LineEdit clear button
...
- Take in account the scale factor (unfortunately we don't have access to the actual window scale factor so just use the Qt one)
- Draw directly in the final SharedPixelBuffer
- Use an intermediate Rectangle to center the image because otherwise we get height for width dependency that breaks layout.
2025-09-03 14:51:49 +02:00
Olivier Goffart
2642a713fc
Cupertino ComboBox: remove height-for-height dependency
...
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 / 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_cmake (macos-14, 1.85) (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 (windows-2022) (push) Blocked by required conditions
CI / cpp_test_driver (windows-2022) (push) Blocked by required conditions
CI / docs (push) Blocked by required conditions
CI / wasm_demo (push) Blocked by required conditions
CI / updater_test (0.3.0) (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 / wasm (push) Blocked by required conditions
CI / tree-sitter (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
Fixes https://github.com/slint-ui/slint/issues/9219
2025-08-25 15:49:57 +02:00
Olivier Goffart
41c5194c0a
LineEdit: Fix show password icon being out of sync with fluent
...
The problem was that the `LineEditPasswordIcon` had an internal property
that would get out of sync when the component is re-created.
The component does get re-created in fluent depepending on the focus,
and this is the case especially with wasm because of the hidden input
that takes the focus.
Fixes #9225
2025-08-22 16:20:11 +02:00
Olivier Goffart
2f57a4df35
Switch: ensure that the min-width contains the text
...
Currently, the min-with don't account for the text.
That means that, for example, the switch on the top bar of the gallery,
get the text to overflow which doesn't look good by default
2025-08-22 16:18:46 +02:00
Simon Hausmann
b6421b0730
Fix large icons in menu items enlarging the menus unnecessarily
...
Size them according to the icon size and preserve the aspect-ratio.
2025-08-21 16:14:32 +02:00
Simon Hausmann
981f24370f
Remove default font size from StyleMetrics
...
Only the Qt style provided this, and when used with the Qt backend the font size will be correct as delivered by the renderer trait.
2025-08-21 14:29:55 +02:00
npwoods
19d8350273
support for menus with checkmarks ( #9056 )
...
Added `checkable` property to `MenuItem` and `MenuEntry`
ChangeLog: Added `checkable` and `checked` property to MenuEntry
2025-08-21 09:07:01 +02:00
szecket
768b54adda
live-preview: fixed x for cupertino input fields ( #9095 )
2025-08-08 01:42:57 +02:00
David Faure
2ebe3424b6
LineEdit clear icons: use if syntax, show passwd icon on focus in fluent
...
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.85) (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
Given that 'visible: false' still takes the icon into account in the
layout (to my great surprise), use the if syntax instead. This fixes
long placeholder texts being truncated too early in the Qt style at
least.
Also, in fluent style, show the "eye" icon in password lineedits only
when they have focus, just like the clear icon.
2025-08-06 13:44:26 +02:00
Laurent Montel
8561022c53
Fix bug#9046: Password LineEdit in Cupertino style shows password by default
2025-08-01 16:45:10 +02:00
Laurent Montel
91dd549722
Hide clear button when line edit is read only or disabled
2025-08-01 16:17:50 +02:00
Olivier Goffart
fc28c80217
LineEdit: fix height for width dependency
...
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 / files-changed (push) Waiting to run
CI / build_and_test (--exclude bevy-example, ubuntu-22.04, 1.85) (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, --exclude bevy-example, windows-2022, 1.85) (push) Blocked by required conditions
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, 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 / 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 / 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 / ffi_32bit_build (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
There is a binding loop that cause a failure in the property editor of
the live preview.
Previous version of the LineEdit didn't have a dependency between the
height and the width.
Apply an explicit width binding on the recently added image to prevent
that.
For the fluent style, also change the size of the `x` to something
closer to the actual fluent style (picked the value from fluent's figma
design)
2025-07-30 17:32:17 +02:00
David Faure
a904ebd495
LineEdit: implement clear icon in the Qt style
2025-07-28 18:06:55 +02:00
David Faure
9eb14714d9
LineEdit: add icon to toggle password visibility
...
CI / build_and_test (--exclude ffmpeg --exclude gstreamer-player, windows-2022, beta) (push) Has been cancelled
CI / build_and_test (--exclude ffmpeg --exclude gstreamer-player, windows-2022, stable) (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 / 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 / cpp_cmake (macos-14, 1.85) (push) Has been cancelled
CI / cpp_cmake (windows-2022, nightly) (push) Has been cancelled
CI / cpp_package_test (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 / ffi_32bit_build (push) Has been cancelled
CI / docs (push) Has been cancelled
CI / wasm (push) Has been cancelled
CI / wasm_demo (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
Material icons from
https://github.com/marella/material-design-icons/tree/main/svg/outlined
also used for cupertino.
Fluent icons from
https://fluenticons.co/outlined/
Cosmic icons extracted from
https://gitlab.gnome.org/GNOME/adwaita-icon-theme/-/blob/master/src/symbolic/core.svg
because there's no such icon in https://github.com/pop-os/cosmic-icons/tree/master/freedesktop/scalable
ChangeLog: LineEdits with "input-type: password" now feature
an icon to toggle password visibility
2025-07-25 15:30:50 +02:00
David Faure
2e99dde397
LineEdit: add clear icon, visible when not empty
...
cc #4518
ChangeLog: LineEdits now show a clear icon (when not empty)
2025-07-25 15:30:50 +02:00
Olivier Goffart
d49fe14e4a
Menu: avoid using padding properties ( #8847 )
...
Padding properties exists as reserved properties but don't have effect.
But the menu code was using them to store values.
This is now a warning because people got confused by setting padding and
wondering why it has not effect.
This also had some bug in the code were properties were padding was set
on a layout, as well as all the padding-* properties, so the padding was
not taking in account
2025-07-04 16:42:59 +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
ogoffart
92f9f0e85d
Bump version number to 1.12.1
2025-06-16 13:32:39 +00:00
Olivier Goffart
7b4d2fd3d3
Renames after the API review
...
CC #8631
2025-06-06 12:31:50 +02:00
Avery Townsend
f7fa27b9b4
added mouse-drag property to ScrollView ( #8512 )
...
Closes #2260
2025-05-26 22:22:57 +02:00
Olivier Goffart
fece71ebf0
Menus: make it possible to have items with different height
...
Can be usefull for separator
(Required for #8339 )
2025-05-19 14:58:31 +02:00
Olivier Goffart
e8012c70d0
Fix MenuBar on android
...
The ContextMenuArea on android intercepts clicks to trigger on long clicks
and this prevent the MenuBar's TouchArea to work properly
Fixes #8353
2025-05-09 08:58:12 +02:00
Simon Hausmann
ac1233491d
cupertino: Fix missing title in GroupBox widget
...
Regression from commit c931cc28ae , which removed the two-way binding.
2025-05-06 17:26:10 +02:00
Simon Hausmann
904bc56e62
Introduce Platform.style-name
...
This replaces the previously hidden `StyleMetrics.style-name` that was only accessible for internal use.
2025-05-06 13:06:27 +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
FloVanGH
c931cc28ae
ChangeLog: std-widgets: added content-padding to GroupBox ( #8314 )
...
* [autofix.ci] apply automated fixes
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-05-02 07:11:52 +00:00
ogoffart
e0099ea500
Bump version number to 1.12.0
2025-04-30 13:27:50 +00:00
Bryce Happel Walton
769f85584d
Fix ScrollView scrollbar actions not triggering scrolled callback
...
Fixes #8170
2025-04-28 10:56:30 +02:00
Simon Hausmann
8761eaadeb
Move Palette.style-name to internal protected StyleMetrics.style-name ( #8200 )
...
This is only exposed when internal types are exposed (such as in the lsp).
The plan is to make this public under a new name/global after the release.
Co-authored-by: Olivier Goffart <olivier.goffart@slint.dev>
2025-04-19 10:20:52 +02:00
Laurent Montel
eafa9bae12
Disable cut/paste action when textedit is disabled
...
(Too bad that we can't hide these actions)
2025-04-19 10:14:58 +02:00
Laurent Montel
706bd3e984
Disable cut/paste action in lineedit when disabled
2025-04-19 10:12:45 +02:00
Joshua Goins
d1f2fef430
Menu: Add enabled property ( #8145 )
...
By default it's enabled, of course. This property is not only added to
MenuItem, but Menu as well - since they can be nested. It's also
possible to select a disabled item, but it's hard to modify that since
it's logic is written in Slint. You should be prevented from activating
it with a tap or key press at least.
See #7791
2025-04-15 08:08:11 +02:00
Nigel Breslaw
538f8bde19
Allow checking at runtime about the current theme ( #8049 )
...
Although std-widgets provides many properties that adapt to the current theme users who would like to go beyond these properties and do theme dependent changes are limited. One option would be to add even more properties to the Palette, however this would potentially bloat the object, it's not obvious what properties users care about and this approach doesn't scale. In many cases developers could simply create their own properties if they knew what the current runtime theme was.
This simple change allows an app to know what the current theme is and present theme appropriate UI's.
2025-04-04 14:44:14 +03:00
FloVanGH
4d754b7ddf
StandardButton improvements ( #8035 )
...
* StandardButton improvements
* [autofix.ci] apply automated fixes
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-04-03 07:29:49 +00:00
Olivier Goffart
e5289af154
Introduce MenuSeparator
...
Fixes #7790
2025-04-02 11:50:45 +02:00
Olivier Goffart
6010cf724c
Hover on MenuBar should activate menu if a menu is already open
...
Fixes #7822
2025-03-31 14:06:24 +02:00
ogoffart
178cf21c2e
Bump version number to 1.11.0
2025-03-18 09:48:22 +00:00
Arnold Loubriat
615be362b2
Disable built-in TextInput accessibility for Spinbox
2025-03-17 14:27:08 +01:00
FloVanGH
390f8aaf50
scrollview: fixed scrollthumb size on small sizes ( #7809 )
...
* [autofix.ci] apply automated fixes
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-03-05 16:46:45 +01:00
FloVanGH
5cfac949d9
material: fix horizontal tab stretch
2025-03-04 12:37:06 +01:00
FloVanGH
ac1a0f9f76
material: cleanup tabwidget.slint code
2025-03-04 12:37:06 +01:00
autofix-ci[bot]
617aa386bc
[autofix.ci] apply automated fixes
2025-02-27 12:13:44 +01:00
FloVanGH
f6cec29fed
menu: finished cupertino style
2025-02-27 12:13:44 +01:00
FloVanGH
dcb7c065d6
menu: cosmic style
2025-02-25 16:31:31 +01:00
FloVanGH
5019ff7df4
menu: adjusted for material style ( #7731 )
2025-02-25 07:25:31 +00:00