v0.3.0

daijro/camoufoxv0.3.0May 26, 2022by elkowar

AI Summary

A feature-rich update that reworked state management, added new widgets like `graph` and `overlay`, and introduced inspector tools, but modified event handling APIs to use positional placeholders.

Key Highlights

  • Added `eww inspector` command for debugging.
  • Added `graph`, `scroll`, and `overlay` widgets.
  • Added `eww get` subcommand.
  • Added drag-and-drop support to eventboxes.
  • Reworked state management system.

Breaking Changes

  • Event handling (`onclick`, `onhover`) now uses placeholders like `{0}` and `{1}` instead of formatted strings.

New Features

  • Added `eww inspector` and `eww get` commands.
  • Added `graph`, `scroll`, and `overlay` widgets.
  • Added circular progress widget.
  • Added `>=` and `<=` operators to expressions.
  • Added `EWW_CMD` and `EWW_CONFIG_DIR` magic variables.

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)