Emmanuel Lepage Vallee
07590962e5
template: Rename to `wibox.template`.
...
It was previously `wibox.widget.template`, but was in fact a container.
Now it is a top level concept. The next few commits will integrate it deeper
into AwesomeWM.
2022-11-13 15:59:01 -08:00
Emmanuel Lepage Vallee
3765efaccc
wibox.template: Remove the `args` in favor of passing the template directly.
...
It didn't do much and I wanted to make the syntax a drop-in replacement
of `wibox.widget {}`.
2022-10-23 19:04:28 -07:00
Emmanuel Lepage Vallee
67b2b26683
template: Bring to feature parity with the awful.widget.common implementation.
...
`awful.widget.common` has the ability to set "roles" and apply properties
to the entire widget tree. This was missing from the previous commit.
2022-10-23 19:04:28 -07:00
Aire-One
a7932b127f
add(w.w.template) template can't be a callback
...
Containers and layouts don't allow to build a widget from a callback, so
there is no reason to have this feature here.
2022-10-22 15:44:35 -07:00
Aire-One
2dab6c336c
add(w.w.template) set_template check widget
2022-10-22 15:44:35 -07:00
Aire-One
2542c3b04a
add(w.w.template) constructor accepts widget props
2022-10-22 15:44:35 -07:00
Aire-One
8803878e1f
doc(w.w.template) 3rd party lib usage example
2022-10-22 15:44:34 -07:00
Aire-One
bfe4832c63
doc(w.w.template) current methods
2022-10-22 15:44:34 -07:00
Aire-One
45a458a2b7
doc(w.w.template) module description
2022-10-22 15:44:34 -07:00
Aire-One
aaec225545
fix(w.w.template) free queued_updates array
...
This is a small cleanup to not keep in memory a value we don't need.
After the update_callback callback is called, we don't need to remember
it happens this callback was queued before. (It also prevents a
possible memory leak (of a boolean value) when widgets are destroyed)
2022-10-22 15:44:34 -07:00
Aire-One
cd5dda385e
fix(w.w.template) draw
...
The draw method exists only for widgets. When dealing with more complex
widget, this method is not necessary implemented (i.e. with layouts).
We need to check the method is defined by the child before calling it.
2022-10-22 15:44:34 -07:00
Aire-One
f12bb57c66
fix(w.w.template) fit and layout methods
...
The previous implementation for these methods was a naive attempt at
making the base widget working. We need to make sure computing the
widget's sizes is more robust for complex widget_template definition.
2022-10-22 15:44:34 -07:00
Aire-One
33d5de52c6
add(w.w.template) constructor `buttons` param
2022-10-22 15:44:34 -07:00
Aire-One
086eb146f6
add(w.w.template) implement widget as child
2022-10-22 15:44:34 -07:00
Aire-One
e7db5e3049
fix: format
2022-10-22 15:44:34 -07:00
Aire-One
f4088ca4e1
fix: rename parameter
2022-10-22 15:44:34 -07:00
Aire-One
b824d99c05
fix(update_args) move to _private property
...
Suggested by @sclu1034
2022-10-22 15:44:34 -07:00
Aire-One
2f2beb69cb
add: natural management of update arguments
2022-10-22 15:44:34 -07:00
Aire-One
a005967191
fix: variable declaration
...
Suggested by @sclu1034
2022-10-22 15:44:34 -07:00
Aire-One
d5dbb9d32e
add(update_callback) allow nil callback
...
Suggested by @sclu1034
2022-10-22 15:44:34 -07:00
Aire-One
08109a6d60
add(w.w.template) template widget
2022-10-22 15:44:34 -07:00
Emmanuel Lepage Vallee
88c65a71dd
textbox: Rename `align` to `halign`.
...
`halign` is used in multiple place in the API. Once upon a time,
Awesome only supported horizontal widgets, but this era has long
passed.
Fix #3640
2022-09-06 16:11:04 -07:00
Emmanuel Lepage Vallee
d7f6410e09
textbox: Add 3 properties.
...
The textbox API reflects the Pango layout API circa 2011, time to
bring this to 2022. This adds:
* indent
* justify
* line_spacing_factor
It doesn't add `spacing` because it doesn't seem to do anything.
It also doesn't add the `is_*` methods to know if the text wraps
or ellipsize. We could, but nobody asked for them. The line spacing
is a feature request from Posix on Discord.
2022-09-06 16:09:26 -07:00
Emmanuel Lepage Vallee
82a5fb6030
doc: Do not document the 16bit max widget size.
...
As pointed out by @aire-one , it does not provide much value.
2022-08-29 22:54:09 -07:00
Emmanuel Lepage Vallee
a18b40e12b
wibox.widget.textclock: Update the property documentation.
2022-08-29 22:49:47 -07:00
Emmanuel Lepage Vallee
1eda8cdf93
wibox.widget.textbox: Update the property documentation.
2022-08-29 22:49:47 -07:00
Emmanuel Lepage Vallee
642fa3b66b
wibox.widget.systray: Update the property documentation.
2022-08-29 22:49:47 -07:00
Emmanuel Lepage Vallee
5367513609
wibox.widget.slider: Update the property documentation.
2022-08-29 22:49:47 -07:00
Emmanuel Lepage Vallee
79496e9acc
wibox.widget.separator: Update the property documentation.
2022-08-29 22:49:47 -07:00
Emmanuel Lepage Vallee
f9f04866b8
wibox.widget.progressbar: Update the property documentation.
2022-08-29 22:49:47 -07:00
Emmanuel Lepage Vallee
e63d867523
wibox.widget.piechart: Update the property documentation.
2022-08-29 22:49:47 -07:00
Emmanuel Lepage Vallee
95cd45942a
wibox.widget.imagebox: Update the property documentation.
2022-08-29 22:49:47 -07:00
Emmanuel Lepage Vallee
8e16dc4412
wibox.widget.graph: Update the property documentation.
2022-08-29 22:49:47 -07:00
Emmanuel Lepage Vallee
ff9c89d005
wibox.widget.checkbox: Update the property documentation.
2022-08-29 22:49:47 -07:00
Emmanuel Lepage Vallee
1b726985de
wibox.widget.calendar: Update the property documentation.
2022-08-29 22:49:47 -07:00
Emmanuel Lepage Vallee
1259c3ccc6
wibox.widget.base: Update the property documentation.
2022-08-29 22:49:47 -07:00
Emmanuel Lepage Vallee
4fa957b75d
doc: Force all properties to document their default value.
2022-08-29 22:49:46 -07:00
Emmanuel Lepage Vallee
86d1b1c22c
doc: Add a mandatory `@noreturn` for functions and methods.
...
The goal is to catch cases where the return value exists, but is
forgotten. There was a large enough number of them to turn this
into a real check. Initially, I just wanted to implement it to fix
the problems, then delete the code. But since this is so common, I
think it is worth the annoyance.
2022-08-29 22:49:45 -07:00
Emmanuel Lepage Vallee
4bd90f0f35
doc: Add documentation linting and fix all issues it found.
2022-08-29 22:48:54 -07:00
Emmanuel Lepage Vallee
18468d32dd
widget: Fix saving a widget to a file.
...
Previously, if `beautiful.fg_normal` wasn't black, it would not render
correctly.
2022-08-29 22:48:36 -07:00
Emmanuel Lepage Vallee
75019c3f6f
Implement fixes for Luacheck 0.26.1
...
* Rename or mute parameters starting with _
* Replace `not (>=)` with `<`
2022-08-28 16:59:14 -07:00
Actionless Loveless
2d6244f944
doc(progressbar): sanitize paddings/margins ( #3556 )
2022-02-03 13:25:05 +01:00
Xinhao Yuan
b49a53f6dd
Multi-row support of systray by taking a beautiful variable specifying the maximum number of rows to fill per column. ( #3520 )
...
Also, fix the fitting logic so that the result width and height are fitted in the available space. Previously the result dimensions can be larger than the input, but cropped in e7a21947e6/lib/wibox/widget/base.lua (L547)
. But still it can cause problems e.g. when used inside wibox.container.place.
2021-12-30 13:22:31 -08:00
Lucas Schwiderski
869e63fcdc
doc(w.w.textbox): Make alignment property descriptions consistent
...
Signed-off-by: Lucas Schwiderski <lucas@lschwiderski.de>
2021-12-14 19:09:42 +01:00
Emmanuel Lepage Vallée
2eb035e125
Merge pull request #3493 from Elv13/progressbar_doc
...
Improve the progressbar doc with more examples.
2021-11-03 12:40:56 -07:00
Emmanuel Lepage Vallee
76704b33e7
progressbar: Make `ticks` and `bar_shape` compatible with each other.
...
It looked horrible/buggy when combined. Now it looks like people would
expect it to work. Another problem was the `bar_border_width` look
when `ticks` was `true.
2021-11-02 20:36:07 -07:00
Emmanuel Lepage Vallee
0afb719f82
doc: Improve the progressbar doc.
...
Another commit in the "lets finish the widget doc" serie.
2021-11-02 20:36:07 -07:00
Emmanuel Lepage Vallee
1fa0204d80
doc: Add many textbox examples.
2021-10-30 22:51:40 -07:00
Emmanuel Lepage Vallée
50b9b10437
texrbox: Fix a recent regression. ( #3488 )
...
The intial font wasn't set.
2021-10-28 19:24:49 -07:00
Emmanuel Lepage Vallee
bb65181e61
doc: Document the textbox font.
2021-10-27 20:08:15 -07:00