v0.3.0
playcanvas/enginev0.3.0May 26, 2022by elkowar
AI Summary
A major feature release introducing the eww inspector, new widgets, and a complete state management overhaul.
Key Highlights
- Complete rework of state management enabling local state and dynamic widget hierarchy
- Added `eww inspector` command
- Added new widgets: graph, scroll, circular-progress, transform, and overlay
- Added `eww get` subcommand
Breaking Changes
- Change the onclick command API to support multiple placeholders. Values are now provided as separate placeholders (e.g., `{0}`, `{1}`) instead of a single string.
New Features
- eww inspector command
- --no-daemonize flag
- Support for displaying marks on scale widget
- children widget
- :hover CSS selectors for eventbox
- eww get subcommand
- circular progress widget
- :xalign and :yalign to labels
- graph widget
- >= and <= operators to simplexpr
- desktop window type
- scroll widget
- notification window type
- Drag and drop functionality to eventbox
- New expression functions (search, captures, stringlength, arraylength, objectlength, matches)
- :onaccept to input field, :onclick to eventbox
- Magic variables (EWW_CMD, EWW_CONFIG_DIR, EWW_EXECUTABLE)
- overlay widget
Full Release Notes
(corresponding docs commit: https://github.com/elkowar/eww/commit/86476a79feee9c46af30f521f17152b1d2c0ad97)
### BREAKING CHANGES
- Change the onclick command API to support multiple placeholders.
This changes. the behaviour of the calendar widget's onclick as well as the onhover and onhoverlost
events. Instead of providing the entire date (or, respecively, the x and y mouse coordinates) in
a single value (`day.month.year`, `x y`), the values are now provided as separate placeholders.
The day can now be accessed with `{0}`, the month with `{1}`, and the year with `{2}`, and
similarly x and y are accessed with `{0}` and `{1}`.
### Features
- Add `eww inspector` command
- Add `--no-daemonize` flag
- Add support for displaying marks on `scale`-widget (By: druskus20)
- Add `children`-widget that allows custom widgets to make use of children
- Add support for `:hover` css selectors for eventbox (By: druskus20)
- Add `eww get` subcommand (By: druskus20)
- Add circular progress widget (By: druskus20)
- Add `:xalign` and `:yalign` to labels (By: alecsferra)
- Add `graph` widget (By: druskus20)
- Add `>=` and `<=` operators to simplexpr (By: viandoxdev)
- Add `desktop` window type (By: Alvaro Lopez)
- Add `scroll` widget (By: viandoxdev)
- Add `notification` window type
- Add drag and drop functionality to eventbox
- Add `search`, `captures`, `stringlength`, `arraylength` and `objectlength` functions for expressions (By: MartinJM, ElKowar)
- Add `matches` function
- Add `transform` widget (By: druskus20)
- Add `:onaccept` to input field, add `:onclick` to eventbox
- Add `EWW_CMD`, `EWW_CONFIG_DIR`, `EWW_EXECUTABLE` magic variables
- Add `overlay` widget (By: viandoxdev)
### Notable Internal changes
- Rework state management completely, now making local state and dynamic widget hierarchy changes possible.
### Notable fixes and other changes
- Fix `onscroll` gtk-bug where the first event is emitted incorrectly (By: druskus20)
- Allow windows to get moved when windowtype is `normal`
- Added more examples
- List system-level dependencies in documentation
- Document structure of magic variables (By: legendofmiracles)