Commit Graph

72 Commits

Author SHA1 Message Date
mario-kr
8661abf2bf
Implement explicitly setting a center of rotation (#783)
* Add changelog entry for transform-origin-properties

* Implement explicitly setting a center of rotation

The transform-Widget provides "rotate" to rotate its child. However, the
default center of rotation is (0, 0) (aka top-left), so it was not
possible to, for example, rotate a child in-place.

This commit implements the additional options `transform-origin-x` and
`transform-origin-y`. Both are optional, and the default value is 0.0 for
each, so previous configurations should produce the same results.

* Fix: transform order should be rotate->translate->scale
2024-09-03 14:34:39 +02:00
dangerdyke
ee937b90ec
add EWW_BATTERY support in (free|open|net)bsd (#645)
* add `EWW_BATTERY` support in (free|open|net)bsd

* add `EWW_BATTERY` support in (free|open|net)bsd

---------

Co-authored-by: ElKowar <dev@elkowar.dev>
2024-08-25 16:24:43 +02:00
Leni Aniva
452cab7677
feat: Add option for graph drawing direction (#1113)
* feat: Add option for vertical graph

* doc: Add feature to changelog
2024-08-25 16:15:43 +02:00
ovalkonia
dc4def5327
Add scss support for style property (#1121)
* Add scss support for the ':style' widget property

* Add changelog entry for the scss support for the ':style' property

---------

Co-authored-by: ElKowar <dev@elkowar.dev>
2024-08-25 16:14:35 +02:00
Mateusz
510b824e75
Use gdk_screen_get_monitor_plug_name to provide more consistent monitor names on wayland (#1129)
* workaround gdk not providing right monitor informations on wayland

* move gdk workaround for plug name into a separate function

* adjust changelog
2024-08-25 16:03:52 +02:00
Wölfchen
3342234894
fix: fix changelog, warnings and lints (#1155)
* fix!: eliminate some dead code

* fix: fix lints

Combined diff of a7a09ea192 and bfc5cb9cb0

Co-authored-by: Johan Geluk <johan@geluk.io>

* fix: remove unnecessary allow; fix capitalization

* chore: automatically update a few dependencies

* fix: fix lint

i introduced this in #1119, whoops

* docs: move #1132's changelog entry

---------

Co-authored-by: Johan Geluk <johan@geluk.io>
2024-08-25 15:51:26 +02:00
mario-kr
fefba66ff5
Fix: EWW_NET wrong values for TX/RX stats (#1108)
* Fix: EWW_NET wrong values for TX/RX stats

The sysinfo crate, structure Networks, basically caches one value of
total_received/total_transmitted each (as well as other metrics) and
returns the difference between those two values when queried via the
`received()` and `transmitted()` functions.

These values are updated by both the `refresh()` and `refresh_list()`
functions; so by calling both of them right after each other like
previously done here, sets both the cached total_received/... and the
current total_received/... to nearly the same value.

`refresh_list()` also updates the list of interfaces on a host, with a
marginally small performance impact for doing so (I measured slightly
more than 100 microseconds on my machine (0.1 milliseconds), around
20-25% more than with `refresh()`), especially considering this is run
only every 2 seconds.

* Add changelog entry for the EWW_NET bugfix
2024-08-25 15:45:33 +02:00
Wölfchen
5212e62fd3
feat: add fill-svg and preserve-aspect-ratio attributes to image widget (#1148)
* feat: add fill-svg attribute to image widget

Co-authored-by: Eddy Otsutsuki <23711001+hypernova7@users.noreply.github.com>

* feat: add preserve-aspect-ratio attribute to image widget

* docs: document new attributes; changelog entry

---------

Co-authored-by: Eddy Otsutsuki <23711001+hypernova7@users.noreply.github.com>
2024-08-24 13:02:33 +02:00
ovalkonia
f01396f9d5
Fix: the gtk expander widget bugfix (#1132)
* Fixed the gtk `expander` widget

* Add changelog entry for the `expander` widget bugfix
2024-08-24 12:30:23 +02:00
ovalkonia
367363975e
Fix: the gtk stack widget bugfix (#1119)
* Fixed the gtk stack widget

* Add changelog entry for the stack widget bugfix

* Small code style improvement

Co-authored-by: Wölfchen <w-lfchen@posteo.net>

---------

Co-authored-by: ElKowar <lkowarschick@gmail.com>
Co-authored-by: Wölfchen <w-lfchen@posteo.net>
2024-08-24 12:30:06 +02:00
Wölfchen
faa73137b4 chore: update toolchain to 1.80.1 2024-08-24 12:26:24 +02:00
Wölfchen
e4ea489386 fix: update grass; re-enable default features for grass 2024-08-24 12:26:24 +02:00
Wölfchen
7aa571eef1 docs: update changelog 2024-08-24 12:26:24 +02:00
ovalkonia
4d55e9ad63
Add min and max simplexpr functions (#1123)
* Add 'min' and 'max' function calls to simplexpr

* Add changelog entry for 'min' and 'max' simplexpr functions
2024-07-05 12:57:48 +02:00
Vyacheslav Ananev
d1fde927d2
systray: fix remove items (#1098)
* systray: fix remove item

* docs: add entry to CHANGELOG.md
2024-05-06 14:05:57 +02:00
Jonathan
a4da192d62
systray: add :hover attribute to tray items (#1091)
* systray: add `:hover` attribute to tray items

* doc: add entry to changelog
2024-05-05 12:14:44 +02:00
Rayzeq
2c88115124
Fix string truncation (#1084)
* remove useless check

* add `truncate` property

* add to CHANGELOG.md
2024-04-26 08:59:23 +02:00
Wölfchen
acf57a8396
fix: refactor and fix flake (#1038)
* fix: refactor flake

* chore: update flake.lock

* chore: update changelog

* chore: update flake.lock

* chore: update changelog
2024-04-21 22:09:14 +02:00
elkowar
d87c2fdbfd
Release version 0.6.0 2024-04-21 14:20:30 +02:00
Rayzeq
1e37f53e99
fix #42: use gtk's text truncation system when possible (#1066)
* fix #42: use gtk's text truncation system when possible

* enhance doc + add to changelog
2024-04-14 16:57:58 +02:00
Alessio Molinari
ebe5f349d1
Add a checked property on checkbox. Close #693. (#916)
* feat: add a checked property on checkbox. Close #693.

* chore: update CHANGELOG.md

---------

Co-authored-by: ElKowar <5300871+elkowar@users.noreply.github.com>
2024-04-06 13:11:59 +02:00
Adrian Perez de Castro
5fdaa4e03f Add :icon and :icon-size properties to the image widget
Add a new :icon property which allows using icons from the currently
selected theme. For completeness, add :icon-size as well. As a nice
extra, GTK automatically makes such images follow the selected icon
theme.
2024-04-06 13:03:21 +02:00
Temmie
1b819fb646
System Tray (#743)
* Allow tokio on gtk thread

* Basic notifier host implementation

* Implement systray widget

* Use dbusmenu-gtk3

* Update flake.nix

* US spelling of license

* Fix possible TOCTOU

* Change how hosts are started

* Add watcher

* Bunch of refactor

* Handle errors better

* Refactor service parsing

* Avoid duplicate dbus connections

* Fix watcher producing bad items

* Handle zbus::Error::NameTaken

* Refactor icon loading & don't panic on zoom

* Implement pixbuf icons

Co-authored-by: Bojan Nemčić <bnemcic@gmail.com>

* Don't panic on icon/menu error

* Improve icon error handling to make discord work

* Update comments

* Big refactor into actor model

* Reword error messages

* Remove redundant watcher_on function

* Big icon handling refactor

* Don't unnecessarily wrap StatusNotifierItem

* cargo fmt

* Documentation

* Avoid registering to StatusNotifierWatcher multiple times

* None theme means default theme

* Add dbus logging

* Add libdbusmenu-gtk3 dependency to docs

* Some code tidying

* Make Item more clearer

* Make clippy happy

* Systray widget improvements

* Remove unwraps from dbus state

* Temporarily add libdbusmenu-gtk3 to flake buildInputs

* Fix blurry tray icon for HiDPI display

* feat: dynamic icons

* fix: don't cache IconPixmap property

this fixes dynamic icons for some icons, e.g. syncthingtray

* fixup! feat: dynamic icons

* Fix unused borrow warning

* Add some documentation to notifier_host

* Rename notifier_host::dbus to more descriptive notifier_host::proxy

* fixup! Rename notifier_host::dbus to more descriptive notifier_host::proxy

* fixup! Merge remote-tracking branch 'upstream/master' into tray-3

* fixup! Merge remote-tracking branch 'upstream/master' into tray-3

* Remove commented out fields of DBusSession

* Refactor host

* Remove git conflict marker

* Various improvements

* Icon documentation

* cargo fmt

* Add dependency to CI

---------

Co-authored-by: Bojan Nemčić <bnemcic@gmail.com>
Co-authored-by: MoetaYuko <loli@yuko.moe>
Co-authored-by: hylo <hylo@posteo.de>
2024-03-30 10:55:01 +01:00
Jacob
f1ec00a1c9
add get_env function to yuck (#779)
* added basic get_env function to yuck

* added get_env to changelog

* added get_env to docs

* changed key to string in doc

* changed suggested code

* credit myself in CHANGELOG.md
2024-03-20 12:45:08 +01:00
Wölfchen
4ce42455a4
fix: fix jq (#1044)
* fix: fix jq

* feat: add basic jq test case
2024-03-16 13:33:12 +01:00
Wölfchen
7bfd47eb81
fix: update and improve flake (#1032)
* fix: update and improve flake

* chore: update changelog
2024-02-24 13:46:40 +01:00
Rayzeq
d96586c209
Completions (#1029)
* Handle `shell-completions` before anything else

* Update CHANGELOG.md
2024-02-20 22:42:09 +01:00
elkowar
387d344690
Release version 0.5.0 2024-02-17 18:21:49 +01:00
elkowar
5b3dabf090
Fix logfiles growing indefinitely (fixes #750, #689, #1000) 2024-02-17 18:03:35 +01:00
elkowar
2656e238ca
Fix wrong values in EWW_NET (fixes #958) 2024-02-17 17:34:58 +01:00
elkowar
3f478b6503
Support generating shell completions 2024-02-17 17:03:55 +01:00
Zacharie Dubrulle
d497726d7b Add tooltip widget 2024-02-17 16:23:44 +01:00
elkowar
091b630072 Use stable rust in CI 2024-02-17 13:21:05 +01:00
nativerv
607f4411d3
add :unindent property (#804) 2024-02-17 12:15:05 +01:00
Elekrisk
8c977892d4
add gravity property to label widget (#949) 2024-02-17 10:42:29 +01:00
Vladyslav Aviedov
e95d3af963
Add gtk stack widget (#838) 2024-02-17 10:38:06 +01:00
WilfSilver
65d622c81f
Add window arguments (#431)
* Allow window definitions to have parameters

* Implement SimplExpr for all other window definition options

* Take gtk scaling into account when setting struts

* Cleanup

* Rename window_argumentss to instance_id_to_args

* Update docs to emphasis window arguments being constant

* Replace eww windows with active-windows and list-windows

* Fix extracting duration from string

* Format + reduce warnings

---------

Co-authored-by: elkowar <5300871+elkowar@users.noreply.github.com>
2023-12-20 21:04:38 +01:00
ElKowar
4f1f853b5f
Improve flexibility of monitor configuration (#1003)
* Allow named monitors on wayland

* Allow list of monitor matchers
2023-12-20 16:59:39 +01:00
ElKowar
a9a35c1804
Support --duration close timer for windows (#884) 2023-08-18 15:51:42 +02:00
elkowar
4450ef55fa
Add substring function 2023-08-18 10:46:12 +02:00
end-4
9d0b667dea
Add trigonometric functions (#823) 2023-08-16 13:40:24 +02:00
Eren Önen
4d63f6deec
add EWW_TIME magic variable (#792) 2023-06-09 17:17:41 +02:00
ElKowar
992ac0b59a
Add namespace window option (#723) 2023-03-26 12:26:49 +02:00
ElKowar
642983a066
Default to building with both x11 and wayland (#722)
* Default to building with both x11 and wayland

* Update CI to include tests and building for wayland and x11
2023-03-26 12:09:03 +02:00
kawaki-san
de232de41b
feat: truncate-left for labels (#721)
feat: `truncate-left` for labels

Adds a flag that allows truncation to the left of text

---------

Co-authored-by: kawaki-san <dev@kanjala.com>
Co-authored-by: elkowar <5300871+elkowar@users.noreply.github.com>
2023-03-26 10:25:24 +02:00
n3oney
c72b881c3f feat: add justify property 2023-03-20 12:41:35 +01:00
ElKowar
7290b9bb8d
Add jq function (#695) 2023-02-25 16:27:32 +01:00
Ezequiel Ramis
6b576c02ac
Vanilla CSS support (#467)
Co-authored-by: ElKowar <5300871+elkowar@users.noreply.github.com>
2023-02-25 10:35:35 +01:00
Roland Fredenhagen
6a64a28629
Add support for null safe indexing e.g. for arrays (#631)
* Add support for null safe indexing e.g. for arrays

This follows the JavaScript syntax:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Optional_chaining#syntax

* add docs

* Add test for safe access index to non indexable

Co-authored-by: Josiah Hilden <jhilden13@gmail.com>

Co-authored-by: Josiah Hilden <jhilden13@gmail.com>
Co-authored-by: ElKowar <5300871+elkowar@users.noreply.github.com>
2023-01-05 20:21:29 +01:00
Gioele De Vitti
29bfe4129f
Fix temperature values not being accessible due to NaN values (#650)
* Fix NaN values making JSON not accessible

* Explain NaN replacement

* Report fix in changelog
2023-01-05 20:16:47 +01:00