Commit Graph

10958 Commits

Author SHA1 Message Date
Emmanuel Lepage Vallee f0a7f904f9 keygrabber: Add a new signal to catch awful.keys activations.
Some downstream modules with keys don't control the callbacks. Using
signals on multiple keys is more cumbersome than simply exposing
this at the keygrabber level.
2022-11-13 16:53:32 -08:00
Emmanuel Lepage Vallee aca9136b02 screenshot: Cleanup the API.
* Fix all warnings
 * Make indentation consistent across the file
 * Simplify/unify the validation (use `error()` rather
   than try to silently fix problems, move to setters)
   and fallback code (move to the getters rather than...
   everywhere)
 * Write the documentation
 * Finish the tests
 * Remove unnecessary constructors
 * Remove path builder because it belongs in
   `gears.filesystem` and wasn't really used anyway
 * Add more properties and a beautiful variable to
   replace `set_defaults` and hardcoded values.
 * Replace callbacks with signals (common pattern
   in modern AwesomeWM APIs)
 * Moved from `os.date` to GLib and some boilerplate
   code to make Debian devs less angry
 * Changed the way the snipping tool selection wibox works.
   Now it freeze the screenshot before the selection.
   The old way had a bunch of side effects for things
   like Qt/GTK comboboxes. It also could crash.
2022-11-13 16:53:32 -08:00
Brian Sobulefsky 37ec7cd173 Clean up logging from Lua 5.1 and 5.2 error debug. Add a little more
test coverage.
2022-11-13 16:53:32 -08:00
Brian Sobulefsky 9d9fedf945 Likely solution to lua 5.1 and 5.2 bug. 2022-11-13 16:53:32 -08:00
Brian Sobulefsky e8584f47b4 Debugging lua 5.1, lua 5.2 error. 2022-11-13 16:53:32 -08:00
Brian Sobulefsky fb77f90959 Zeroing in on lua 5.1 and 5.2 bug on GitHub. 2022-11-13 16:53:32 -08:00
Brian Sobulefsky 00925a3039 Keep debugging lua on GitHub. 2022-11-13 16:53:32 -08:00
Brian Sobulefsky ea3f82bdf0 Debugging Lua 5.1 and 5.2 on GitHub. 2022-11-13 16:53:32 -08:00
Brian Sobulefsky 1eb8371341 Error message addition to debug lua 5.1 and 5.2 out on GitHub jobs. 2022-11-13 16:53:32 -08:00
Brian Sobulefsky 036b4551c7 Add more descriptive error message to screenshot test. 2022-11-13 16:53:32 -08:00
Brian Sobulefsky 75943e788b Add some more test coverage to get this PR to the requisite 91%. 2022-11-13 16:53:32 -08:00
Brian Sobulefsky 8f7750e6f2 Add tests for the snipper tool and the snip (defined geometry) routine
to increase test coverage.
2022-11-13 16:53:32 -08:00
Brian Sobulefsky 52e0242ec6 Move some filesystem related logic in the screenshot lib to gears
request from awesome maintainers.
2022-11-13 16:53:32 -08:00
Brian Sobulefsky 1fdefad750 Fix the failed test case and some issues regarding variable naming.
There will still be one more commit to replace some of the screenshot
module code with available functionality from gears (e.g. the filesystem
module).
2022-11-13 16:53:32 -08:00
Brian Sobulefsky 5a7faa0010 Develop the awful.screenshot module into an object oriented format. Add
tests for the awful.screenshot module.
2022-11-13 16:53:32 -08:00
Brian Sobulefsky efc9adae7c Corrections to the lua documentation comment syntax. 2022-11-13 16:53:32 -08:00
Brian Sobulefsky 18ee0d6bf7 Add luadoc comments for awful.screenshot.init and fix a typo in the
mousegrabber callback (use the filename convenience variable 'fname').
2022-11-13 16:53:32 -08:00
Brian Sobulefsky 12a3fae456 This commit begins the development of a more appropriate user facing
screenshot API. It extends a prior commit which extended the lower level
content API, which had been a property of the client object but is now
available as a property of the screen object and a method of the root
object.

This commit creates a new screenshot module for the awful module. The
public functions include root(), screen(), client(), snipper(), and
snip(). These take root window, screen, and client window screenshots,
launch an interactive snip tool for cropped screenshots, and take a
cropped screenshot of a geometry passed by argument, respectively. The
init() function is also available for configuration. Using this library
is more appropriate for the average rc.lua.

Since the API is new, this commit does not include any changes to
rc.lua. The developers can modify rc.lua when there is sufficient
confidence in API stability and robustness.

lib/awful/init.lua is modified so that the awful module includes the new
lib/awful/screenshot.lua submodule.

Signed off: Brian Sobulefsky <brian.sobulefsky@protonmail.com>
2022-11-13 16:53:32 -08:00
Emily 5077c8381b
wibox.widget.slider: Add a handle cursor property (#3734)
* wibox.widget.slider: Add a handle cursor property
* wibox.widget.slider: Add a beautiful variable for handle_cursor
* wibox.widget.slider: Remove an unneeded or statement
* wibox.widget.slider: Move handle_cursor variable to the function it belongs in
2022-10-31 10:05:13 -07:00
Lily a436478731
fix floating snap (#3719)
makes snap & aerosnap respect padding & workarea, adds snapper_gap padding to build_placement subcalls using args
2022-10-22 14:38:52 -07:00
Emmanuel Lepage Vallée 836ba19e0d
Merge pull request #3712 from raven2cz/master
New ldoc themes
2022-10-22 14:38:27 -07:00
Antonin Fischer a8a421209e SVG comments removed. 2022-10-22 08:42:15 +02:00
Emmanuel Lepage Vallée 26032bf018
shape: Add a "solid shadow" shape. (#3489)
This is an useful client shape to get "client side solid shadows".
2022-10-16 02:29:09 -07:00
Lucas Schwiderski 963622af8e
fix: Use user-provided Lua binary to run scripts (#3715) 2022-10-10 22:42:33 -07:00
Tonda Fischer 5b097a1a6f
Merge pull request #3 from raven2cz/raven2cz/ldoc_themes
Best svg filter for dark modes.
2022-10-08 13:42:27 +02:00
Antonin Fischer 24329c4b98 Best svg filter for dark modes. 2022-10-08 13:41:14 +02:00
Tonda Fischer 783f84810f
Merge pull request #2 from raven2cz/raven2cz/ldoc_themes
#3712: Inverted svg images.
2022-10-08 10:45:57 +02:00
Antonin Fischer 663a49b7ab #3712: Inverted svg images. 2022-10-08 10:45:04 +02:00
Tonda Fischer 2652cc3ebd
Merge pull request #1 from raven2cz/raven2cz/ldoc_themes
Add ldoc new themes.
2022-10-07 09:12:05 +02:00
Antonin Fischer 8924de0bf0 Add ldoc new themes. 2022-10-07 09:10:21 +02:00
David Kosorin b16f628620
Restore minimized sticky clients (#3709) 2022-09-29 23:12:13 -07:00
Aire-One 4a140ea5ea
Revert "fix(ldoc): set `format` to "markdown" (#3500)" (#3704)
This reverts commit 8d5c74fae3.
2022-09-22 22:53:53 -07:00
Emmanuel Lepage Vallée 4f086e58fc
Merge pull request #3701 from sashashura/patch-1
GitHub Workflows security hardening
2022-09-22 22:53:36 -07:00
Emmanuel Lepage Vallée f8e0dfd486
Merge pull request #3696 from Aire-One/feat/fix-ldoc-warns
Fix ldoc WARN
2022-09-20 20:11:16 -07:00
Alex 76edd69587
Update apidoc.yml
Remove write permission as not needed
2022-09-20 20:13:12 +01:00
Alex 00b1ad5b45 build: harden apidoc.yml permissions
Signed-off-by: Alex <aleksandrosansan@gmail.com>
2022-09-20 14:24:00 +02:00
Alex b602d42073 build: harden main.yml permissions
Signed-off-by: Alex <aleksandrosansan@gmail.com>
2022-09-20 14:21:14 +02:00
Aire-One 8d5c74fae3 fix(ldoc): set `format` to "markdown" (#3500)
The CI currently doesn't install (correctly?) the "discount" formatter,
so ldoc fallbacks to the default "markdown" formatter. However, if we
try to install the discount or lua-discount, the doc rendering is
slightly different from what we currently have.

All of this was already mentioned in the issue "Generate apidoc doesn't
use the discount markdown formatter #3500".

This change removes the configuration in the `config.ld` file, so we
don't have the "format: using built-in markdown" message any longer in
in the CI logs.

Note that I also removed the lua-discount installation from the
`apidoc.yml` workflow, since it wasn't working. (I guess it installs the lua
package for a different version of lua than the one used by ldoc)
2022-09-18 18:40:52 +02:00
Aire-One db5ade48e4 doc(awful.titlebar): fix ldoc WARN 2022-09-18 18:22:52 +02:00
Aire-One 941bb72fa2 doc(awful.keygrabber): fix ldoc WARN 2022-09-18 18:22:02 +02:00
Actionless Loveless bde785ee64
fix(ruled: client: matching_rules): regression after 75019c3f6f (#3694) 2022-09-15 23:44:48 -07:00
Beniamin Kalinowski 6ca2fbb31c
Fixing warnings in the documentation build. (#3687) 2022-09-10 15:16:14 -07:00
Emmanuel Lepage Vallée 5ea654ee6b
Merge pull request #3686 from Elv13/textbox_upgrades
Textbox upgrades
2022-09-10 15:15:47 -07:00
Emmanuel Lepage Vallee a4b3506e15 doc: Mentions the property renaming and Pango version in NEWS.md 2022-09-06 16:11:17 -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 b16505733a tests: Add more textbox tests. 2022-09-06 16:09:26 -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
tocic 0f99647c38
doc: Fix typos (#3689)
* doc: Fix typos

* doc: Fix an additional typo

Co-authored-by: Lucas Schwiderski <4508454+sclu1034@users.noreply.github.com>

Co-authored-by: Lucas Schwiderski <4508454+sclu1034@users.noreply.github.com>
2022-09-06 15:43:36 -07:00
Tonda Fischer c8d4f878a0
#3539: Make tool tips indicate the action that a click will acheive (#3657)
* #3539: Make tool tips indicate the action that a click will achieve.
2022-09-03 15:31:24 -07:00
Emmanuel Lepage Vallée 9b1246af3d
Merge pull request #3676 from Elv13/v44_doc_polishing
Implement documentation linting.
2022-08-30 23:26:12 -07:00