Commit Graph

10923 Commits

Author SHA1 Message Date
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 3510d96d6c doc: Find and post-process untracked SVG files.
Right now the UML template write many files which were not tracked
by CMake. This caused them to be missing from the doc since the
post-processing was added.
2022-08-29 22:49:03 -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 b4c989bcf8 doc: Fix some regression introduced when fixing the shims behavior.
Previously, clients were displayed even when they were not tagged
or minimized. This was fixed in the shims. However, some examples
never created tags, so the client were never tagged, thus no longer
displayed.
2022-08-29 22:48:54 -07:00
Emmanuel Lepage Vallee f3987f43b6 doc: More proof reading fixes. 2022-08-29 22:48:54 -07:00
Emmanuel Lepage Vallee 4a6385cf40 doc: Replace the function argument rendering.
This is an attempt at solving several problems reported by novice
users. The old rendering was very compact and quite fine once you
got used to its, ..., "conventions". But it was also sometime rather
hard to read.

First of all, it abused bold and italic. It also "merged" optional
parameters and parameters with default content. It got worst when
the documentation was spread over mutiple lines.

For property types and constructors with large number of parameters,
it was also quite unreadable.

The new representation, while far from perfect, is less dense and
more explicit. It has a separate column for "optional" using the
new "metadata chip" documentation concept. It is also an aligned
table and correctly renders multi-line documentation.

Finally, it adds a "note" message when the named parameter convention
is used. This way the users looking at the examples will be less
confused.
2022-08-29 22:48:54 -07:00
Emmanuel Lepage Vallee f26642f037 doc: Fix mnor rendering issues.
The module name wasn't present when it should have been. Same for
the function params.
2022-08-29 22:48:54 -07:00
Emmanuel Lepage Vallee 292b657aea doc: Disable the ldoc optional function parameter mangling.
It no longer does `foo(bar[,bar=42])` and will rather do `(foo, bar)`.

This is easier to read and some new user are no familiar with the
optional parameter convention. They copy/paste the mangled value in
their config and end up with invalid Lua.
2022-08-29 22:48:54 -07:00
Emmanuel Lepage Vallee 16f84ec87a doc: Improve the "See also" section.
Now display:

 * The description summary.
 * The item kind.
 * The module name (if non-local).
2022-08-29 22:48:54 -07:00
Emmanuel Lepage Vallee af3e62ae64 tasklist: Fix `disable_icon`.
It regressed when the tasklist switched to a template by default.
This was done to support the icon size.

Fix #3178
2022-08-29 22:48:54 -07:00
Grzegorz Bednarski 1f5b759306 Support minimized client property in tasklist icons (#3526) 2022-08-29 22:48:54 -07:00
Aire-One e15205a548 add(css) .image-object max-size (#17)
Co-authored-by: Emmanuel Lepage Vallée <elv1313@gmail.com>
2022-08-29 22:48:54 -07:00
Aire-One e50b41b10d add(ltp) .function anchor copy link to clipboard 2022-08-29 22:48:54 -07:00
Emmanuel Lepage Vallee fb8f7cfadd hotkey/calendar: Fix rendering when the theme color is a pattern.
It blew up.
2022-08-29 22:48:54 -07:00
Lucas Schwiderski df45322eac doc: Implement responsive, toggleable sidebar
Below a screen width of 768px (Bootstrap's "medium" breakpoint)
the sidebar will collapse to a small strip. Hovering the sidebar will
fully reveal it until the mouse leaves it.
Clicking the sidebar will reveal it until another part of the page is
clicked.
2022-08-29 22:48:54 -07:00
Lucas Schwiderski 20ab3a5fb6 doc: Fix example code header showing in page 2022-08-29 22:48:54 -07:00
Lucas Schwiderski 37114f6181 doc: Remove empty containers 2022-08-29 22:48:54 -07:00
Lucas Schwiderski 345de1e9d9 bug: Add workaround for new image paths 2022-08-29 22:48:54 -07:00
Emmanuel Lepage Vallee 75ab366769 doc: Proof reading fixes.
* Rendering problems
 * Incomplete type information
 * Obsolete type information
 * Missing type information
 * Missing return value
 * Incomplete return value type
2022-08-29 22:48:54 -07:00
Emmanuel Lepage Vallee b8cd009b37 doc: Fix a rendering issue in @tfield and @field.
It would render `tag.awful.tag.layouts` instead of `awful.tag.layouts.
2022-08-29 22:48:54 -07:00
Emmanuel Lepage Vallee 86b6f1cb34 doc: Fix another CMake related encoding problem. 2022-08-29 22:48:54 -07:00
Emmanuel Lepage Vallee 11a7c8c47b doc: Fix the `layoutbox` doc.
It didn't have a constructor.
2022-08-29 22:48:54 -07:00
Emmanuel Lepage Vallee f8f11a23f5 doc: Add some @see to the shape doc.
The `transform` function was unclear.
2022-08-29 22:48:54 -07:00
Emmanuel Lepage Vallee 69ab73aa23 doc: Fix a popup doc issue.
The variable name wasn't in the @param string, so it was called "The".
2022-08-29 22:48:54 -07:00
Emmanuel Lepage Vallee 87a69c4d4d doc: Fix a problem which causes the SVG to be blurry. 2022-08-29 22:48:54 -07:00
Emmanuel Lepage Vallee e4b9728260 doc: Add a mild hover color change to the summary.
It is hard know to which row a "chip" like inherited belongs to. This
fixes it for mouse users.

I also tried using alternate row colors, but our colors are so "light"
that there wasn't any good candidate between "white" and the <body>
background color.
2022-08-29 22:48:54 -07:00
Emmanuel Lepage Vallee 2c1c37fb12 doc: Merge the Inherited/Deprecated/Readonly tag style.
They are on the right like Inherited, but use the "chip" style of
ReadOnly.
2022-08-29 22:48:54 -07:00
Emmanuel Lepage Vallee dd7492fa7c doc: Fix some broken links in the tasklist doc. 2022-08-29 22:48:54 -07:00
Emmanuel Lepage Vallee 93f7269081 doc: Change the default theme to use a "special" fg color.
This magic color will be find&replaced by a post-processing script.
2022-08-29 22:48:54 -07:00
Emmanuel Lepage Vallee f5b2f34269 doc: Update some examples not to hardcode the foreground color. 2022-08-29 22:48:54 -07:00
Emmanuel Lepage Vallee b3cf35d988 doc: Replace hardcoded colors with CSS in the static images.
find ../docs/images -iname '*.svg' | xargs -i ../tests/examples/_postprocess.lua {} {}
2022-08-29 22:48:54 -07:00
Emmanuel Lepage Vallee 2c18547a6b doc: Post-process all auto-generated SVG.
This removes the hardcoded foreground color and inherit it from
the browser and/or CSS stylesheet.

This commit only support the foreground colors, future changes could
extend it to support all standard colors.
2022-08-29 22:48:54 -07:00
Emmanuel Lepage Vallee 197ed41c2d doc: Use the theme foreground color instead of black in the templates.
This is a step toward adding a dark theme to the doc. Otherwise, the
images were black on dark grey, which is impossible to read.
2022-08-29 22:48:36 -07:00
Emmanuel Lepage Vallee f6f57e7ba0 gears.color: Add a function to apply the alpha to a color.
Some code in awesome concatenate color strings. This means it blows
up when the pattern are used instead of color, with this, it fails
gracefully (by returning the unmodified pattern).
2022-08-29 22:48:36 -07:00
Emmanuel Lepage Vallee caad1bec55 tooltip: Make the `args` optional.
It would render a non-useful error when calling `awful.tooltip()`.
2022-08-29 22:48:36 -07:00
Emmanuel Lepage Vallee 935da05be4 layoutlist: Sanitize the color when building Pango strings.
This was aready done in the `tasklist` and `taglist`.
2022-08-29 22:48:36 -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 91fe314e0b gears.color: Fix color serialization.
Some widgets like the tasklist serialize the theme colors to use them
in Pango markup. If the theme color were already converted to pattern,
that blew up. With this fix, pattern can be converted back into strings
correctly.
2022-08-29 22:48:36 -07:00
Emmanuel Lepage Vallee b6214af364 doc: Add a `deprecatedmethod` tag.
Like all the others, but for a method.
2022-08-29 22:48:36 -07:00
Emmanuel Lepage Vallee 8f71ef6dff doc: Document the tasklist widget. 2022-08-29 22:48:35 -07:00
Emmanuel Lepage Vallee cf2129b2fe doc: Add a memento widget for the wibox template. 2022-08-29 22:47:55 -07:00
Emmanuel Lepage Vallee c7ed176586 tasklist: Fix `disable_icon`.
It regressed when the tasklist switched to a template by default.
This was done to support the icon size.

Fix #3178
2022-08-29 22:47:55 -07:00
Emmanuel Lepage Vallee b8dbba34db taglist/tasklist: Fix the fallback font.
When beautiful.font isn't set, it fell back to "". That value isn't
actually the same as the "default" Pango font. Better use `nil`.
2022-08-29 22:47:55 -07:00
Emmanuel Lepage Vallee 686c4fec22 doc: Add the ability to render random widgets to the sequence template. 2022-08-29 22:47:55 -07:00
Emmanuel Lepage Vallee 396bddb946 layoutlist: Add a `count` property.
Because it was added to the `taglist` and `tasklist` and their API
somewhat mirror each other.
2022-08-29 22:47:55 -07:00
Emmanuel Lepage Vallee 798d31881d taglist: Add a `count` property.
This is mostly for its signal handler. It will allow to replace the
template or layout based on the number of tags.
2022-08-29 22:47:55 -07:00
Emmanuel Lepage Vallee b11a8fb52c tasklist: Add a `count` property.
This is mostly for the signal handler. It will allow to do things
like replace the template or layout based on the number of clients.
2022-08-29 22:47:55 -07:00
Emmanuel Lepage Vallee 70c6821997 tasklist: Convert to a real widget.
Previously, it was monkey-patching the input layout object. This will
allow to replace the laoyut at runtime. For example, switching from
`fixed.horizontal` to a grid when the number of client gets too large.
2022-08-29 22:47:55 -07:00
Emmanuel Lepage Vallee a3b7532056 taglist: Expose more properties.
They were passed in the constructor, but could not be changed.
2022-08-29 22:47:55 -07:00
Emmanuel Lepage Vallee df59f5bdd3 taglist: Convert into a real widget.
It no longer monkey-patch the input layout widget. This allows the
layout to be replaced at runtime.
2022-08-29 22:47:55 -07:00