Commit graph

50 commits

Author SHA1 Message Date
snakedye
8800980011
Fix for #175. (#180)
* widgets on non existing output do not spawn

* fix no-x11-wayland build

Co-authored-by: Bryan Ndjeutcha <ndjeutcha@gmail.com>
2021-05-23 22:30:36 +02:00
legendofmiracles
df5793b204
Predefined variables/Magic vars (#117)
* basic idea

* generates docs

* hardcoded the gen script

* trying to hide magic vars

* eww-state is good now

* structure for cpu var is now there

* renamed cpu to diskstat, bc lib supports it after all

* not going to implement disk IO. go back to this commit, to see a rough idea

* removed it

* formatting

* stopped data race

* Update src/config/system_stats/ram.rs

Co-authored-by: ElKowar <5300871+elkowar@users.noreply.github.com>

* Update src/config/system_stats/disk.rs

Co-authored-by: ElKowar <5300871+elkowar@users.noreply.github.com>

* Explains macos better

* Update battery.rs

* Function for each OS when getting battery, a bit cleaner

* reworked battery a little

* all in one big file

* facepalm

* cleaner gen script and one huge file for the system stat stuff

* merge conflicts

* github interface for resolving merge conflicts sucks, this fixes it

* Apply suggestions from code review

Co-authored-by: ElKowar <5300871+elkowar@users.noreply.github.com>

* Update src/config/inbuilt.rs

Co-authored-by: ElKowar <5300871+elkowar@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: ElKowar <5300871+elkowar@users.noreply.github.com>

* code suggestions

* component temperature is a json struct

* newlines in magic vars descriptions

* disks is now json, numbers are not wrapped in strings, and more idiomatic code

* Update gen-docs.ts

Co-authored-by: mlvzk <mlvzk@protonmail.com>

* removes a unneeded heading

* more doc updates and EWW_CPU_USAGE is now json

* calculates battery total avg and it's a json struct

Co-authored-by: ElKowar <5300871+elkowar@users.noreply.github.com>
Co-authored-by: mlvzk <mlvzk@protonmail.com>
2021-05-11 18:45:29 +02:00
ElKowar
fa70a71a1a
Readjust window position when size changes (fixes #113) (#163) 2021-05-09 15:58:00 +02:00
elkowar
a1a313be70
Fix clippy lints 2021-05-03 23:29:58 +02:00
snakedye
9ea20cd753
Proper wayland support (#125)
* Initial commit for wayland support

* Improvements to Wayland backend, structs and enums

* gtk-layer-shell-rs imported

* Eww compiles with wayland backend

* Full layershell support

* Compatibility with x11 backend

* updated docs and better compatibily with X config

* error in example

* "screen" in config works

* Updated documentation

* bar example for wayland

* eww follow focus when screen is undefined

* NumWithUnit

* Removed SurfaceDefinition for StrutDefinition
again...

* cargo fmt

* fix match statement for screen number

* fix focusable / kb interactivity

* revision #2

* fix: compile error and example

* feat: I fixed the deps
X11 doesn't compile because of some x11 fuckery

* fix: x11 fuckery
PR NOW REEEEEEEEEEEEEEEEEEEEEEEEE

* fix conflics and cargo fmt

* i can't read

* conflicts: a never ending loop...

* dammit ptr

* conflicts: Cargo.lock

* Expression language (#124)

* Add AST

* add make-shift testing parser, and make stuff ocmpile

* add proper expression parser

* make string format use '

* Add empty doc page for expressions

* add tests

* Clean up file structure and add unary operators

* Write documentation

* make multiple daemons possible and make commands time out

* Add EwwPaths struct and refactor path handling in general

* Update docs to include <reserve>

* Improve handling of paths and daemon-ids

* Add elvis operator

* Allow literal-tag content to use user-defined widgets

* Add support for overriding monitor in CLI

* change formatting config

* Improve error messages for non-existant config dir

* Added tooltips (#127)

* update dependencies

* Explicetely states where to look for installing eww (#131)

I think this should be added, because we already had a couple of people opening issues because they didn't read the docs on how to install eww.

* (Very) Rudimentry gif support (#143)

* rudimentry gif support

* revert main.rs

* Fix variable reference detection, should fix #144

* cleanup TextPos in eww debug

* Manually resolve escaped symbols in xml.

This shouldn't be necesary.
Fixes #154 and fixes #147

* Add JSON support for exprs (fixes #146)

* Add docs for json values and make value related names shorter

* Add animated icon

* Initial commit for wayland support

* Improvements to Wayland backend, structs and enums

* gtk-layer-shell-rs imported

* Eww compiles with wayland backend

* Full layershell support

* Compatibility with x11 backend

* updated docs and better compatibily with X config

* "screen" in config works

* Updated documentation

* eww follow focus when screen is undefined

* Removed SurfaceDefinition for StrutDefinition
again...

* cargo fmt

* fix match statement for screen number

* fix focusable / kb interactivity

* revision #2

* fix: compile error and example

* feat: I fixed the deps
X11 doesn't compile because of some x11 fuckery

* fix conflics and cargo fmt

* i can't read

* conflicts: a never ending loop...

* dammit ptr

* conflicts: Cargo.lock

* yeeting git syntax

* trying to resolve conflicts

* yeeting Cargo.lock...

* i try

* revision: removing duplicates

* fix geometry, example and improving docs

* clearing up the documentation

* I forgot the scss file.
I also edited the bar to take advantage of eww expressions.

* more yeeting and moved exclusive to window

Co-authored-by: Bryan Ndjeutcha <ndjeutcha@gmail.com>
Co-authored-by: ElKowar <5300871+elkowar@users.noreply.github.com>
Co-authored-by: undefinedDarkness <38278035+undefinedDarkness@users.noreply.github.com>
Co-authored-by: legendofmiracles <30902201+legendofmiracles@users.noreply.github.com>
2021-05-03 21:14:34 +02:00
elkowar
aaac4c3b43 Add docs for json values and make value related names shorter 2021-04-14 14:28:22 +02:00
elkowar
f544d0e19a change formatting config 2021-03-08 22:28:29 +01:00
elkowar
5cf18bfc43 Add support for overriding monitor in CLI 2021-03-02 17:55:48 +01:00
elkowar
0c762de864 Allow literal-tag content to use user-defined widgets 2021-03-02 17:24:14 +01:00
elkowar
8dba5aca83 Add EwwPaths struct and refactor path handling in general 2021-03-02 13:12:52 +01:00
ElKowar
a18901f187
State refactor (#121)
* Add widget_node trait and generic impl

* Use WidgetNode stuff in some places

* Use WidgetNode stuff in rendering code

* Refactor
2021-02-26 21:03:53 +01:00
elkowar
9238688774 Implement struts 2021-02-17 16:42:54 +01:00
legendofmiracles
7648a400c3
Shows warnings when defining variables that are already defined, and other general improvements (#105)
* refactored everything into a function, and checks the larger/smaller one

* general improvements

* Simplify code

Co-authored-by: elkowar <5300871+elkowar@users.noreply.github.com>
2021-01-31 16:11:52 +01:00
elkowar
47863a3e77 Add eww reload command 2021-01-21 21:47:40 +01:00
elkowar
8530f90a7c Add eww windows command and restructure daemon response.
Daemon response is now a dedicated type that contains information
about failure / success, and used in more commands, such as `open` and
`close`. Thus, this fixes #90 and also fixes #89.

For #90, the decision has been made to not make this independent of the
daemon, as that makes it possible to provide more information, and
because in most cases, users will have the daemon running when checking
windows anyways.
2021-01-16 18:09:35 +01:00
elkowar
6c2e0dbbc1 Fix script-vars being ran without window using them, and add debug flag. fixes #94. 2021-01-16 16:14:03 +01:00
elkowar
1c6853cc5d add eww open-many 2021-01-03 17:16:31 +01:00
elkowar
05d9320598 Cleanup 2021-01-03 17:16:31 +01:00
elkowar
b9b8a77cf4 Handle application exit somewhat nicely 2021-01-03 17:16:31 +01:00
elkowar
b4880a55b8 More work done 2021-01-03 17:16:31 +01:00
elkowar
542dd62d7b Basics actually work still 2021-01-03 17:16:31 +01:00
Axarva
58d57c4acd
Add eww close-all subcommand to close all running windows (#80)
* Add close-all command

* Add close-all command

* Re-add close-all using close_window method
2020-12-28 16:12:59 +01:00
elkowar
0b900861cb Add daemon subcommand (fixes #69) 2020-12-07 18:20:40 +01:00
ay9thqi3tbqiwbegqsg a[soiaosshasdg
ac8bc7d8b5
Fix a few clippy warnings (#59) 2020-11-14 17:57:50 +01:00
ElKowar
2e8b1af083
Lazy variables (#58)
* Implement lazy variables

* cleanup

* refactor
2020-11-08 15:08:01 +01:00
ElKowar
9146905314
Advanced window positioning with anchors (#55)
* Implement anchoring

* adjust documentation
2020-11-01 17:33:57 +01:00
ElKowar
0f68a76507
Implement multiple value update, breakign syntax of eww update (#51) 2020-10-30 22:12:21 +01:00
elkowar
3849835ff9 Stop script-vars and close windows on eww kill 2020-10-24 22:56:09 +02:00
elkowar
a906c18bd7 Implement selectable windows, fixes #27 2020-10-23 19:40:39 +02:00
ElKowar
a0929c0a84
Make script-vars use process groups (#40)
* Make script-vars use process groups

Tail script-vars now make use of process groups to fix issues with
non-finished processes staying around.
I don't really understand any of this.
2020-10-23 18:03:29 +02:00
elkowar
4573f056b0 Clean up file structure, and add Struts tag which isn't functional yet 2020-10-23 17:55:59 +02:00
elkowar
7f39205c92 Fix dumb flooring error in window sizing/positioning calculations (fixes #30) 2020-10-20 22:09:45 +02:00
elkowar
423c79d263 Implement relative window size and position. closes #30 2020-10-20 18:44:50 +02:00
ur name
4a9a712af8 added a always-there variable called window_name, that contains.. who would have guessed.. the window name - LegendOfMiracles 2020-10-19 18:01:53 +02:00
elkowar
52503fcf7a Allow for interpolation in attrs 2020-10-18 23:25:00 +02:00
elkowar
c11cfaa26a Simplify PrimitiveValue, add comments for doc-gen 2020-10-18 23:25:00 +02:00
elkowar
0ea3d2255b Implement command (fixes #9) 2020-10-18 23:25:00 +02:00
ElKowar
3d07a84d1b Ipc cleanup (#18)
* Clean up IPC, remove ipc-channel dependency

* Remove dead socket file on server startup

* Cleanup CLI handling
2020-10-18 23:25:00 +02:00
elkowar
01da512231 Fix window startup closing 2020-10-18 23:25:00 +02:00
elkowar
6a5839a93e Add support for tail-based script-vars 2020-10-18 23:25:00 +02:00
elkowar
d10e98e614 close windows of same type when a window gets opened 2020-10-18 23:25:00 +02:00
elkowar
7d24de48b5 Add support for inline styles and custom wm class per widget 2020-10-18 23:25:00 +02:00
elkowar
0fca322bde Add stacking option to window definition 2020-10-18 23:25:00 +02:00
elkowar
600f104552 Add documentation 2020-10-18 23:25:00 +02:00
elkowar
2df0984ac3 Most stuff works 2020-10-18 23:25:00 +02:00
elkowar
1f86c72ef6 VarName newtype, nothing works RN just tmp 2020-10-18 23:25:00 +02:00
elkowar
9f69bbb440 add -d flag to detach from terminal 2020-10-18 23:25:00 +02:00
elkowar
40fe82b4a0 Add unknown attribute warning 2020-10-18 23:25:00 +02:00
elkowar
71cbc7ca49 Handle script-var command polling 2020-10-18 23:25:00 +02:00
elkowar
1f6fe840fc cleanup, but file watching breaks 2020-10-18 23:25:00 +02:00