Commit Graph

8869 Commits

Author SHA1 Message Date
Uli Schlachter ab559a6f36 Provide better error message for unknown screen names
The screen object can be indexed by strings to find a screen via some
RANDR output name. However, if a string is used which does not
correspond to a known output, the code just falls through to a function
which will complain "string provided, userdata expected".

This commit provides a slightly more useful error message instead.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2017-07-02 13:28:03 +02:00
Daniel Hahler d4924988df rules: switchtotag: fix usage of awful.tag.viewmore (#1895)
This passes in the client's screen for now.

In the long run this should get fixed via
https://github.com/awesomeWM/awesome/issues/1883, but that is more
involved.

Fixes https://github.com/awesomeWM/awesome/issues/1886.
2017-07-02 11:26:41 +02:00
Daniel Hahler 719406ed5c dbus.c: fix warning in a_dbus_connect 2017-07-02 11:25:09 +02:00
Daniel Hahler 7bc45a5c4e dbus.c: fix some comments, remove confusing ones 2017-07-02 11:25:09 +02:00
Daniel Hahler 09bffcd432 cmake: define check-unit always (#1896)
Fixes https://github.com/awesomeWM/awesome/issues/1891.
2017-07-01 22:32:14 +02:00
Daniel Hahler 1cdd7ef869 Travis: use exit code 1 for failures, not errors (#1887)
Using exit code != 1 (e.g. 2 as with "make") appears to cause Travis to
consider the build job as an error ("!"), instead of a failure ("X").

Example build: https://travis-ci.org/awesomeWM/awesome/builds/248484247

    !: https://travis-ci.org/awesomeWM/awesome/jobs/248484252
        Test finished successfully
        There were 3 errors!
        make[4]: *** [CMakeFiles/check-integration] Error 1
        make[3]: *** [CMakeFiles/check-integration.dir/all] Error 2
        make[2]: *** [CMakeFiles/check-integration.dir/rule] Error 2
        make[1]: *** [check-integration] Error 2
        make: *** [check-integration] Error 2
        ++return

    X: https://travis-ci.org/awesomeWM/awesome/jobs/248484250
        Test finished successfully
        There were 3 errors!
2017-07-01 14:15:12 +02:00
morethanoneanimal cbb8fd7ac4 Add naughty.destroy_all_notifications (#1871)
Also updates connect_signal in naughty lib to use destroy_all_notifications().
2017-06-29 00:11:07 +02:00
Emmanuel Lepage Vallée 71548de903 Merge pull request #1881 from psychon/menubar-desktop-parsing-error-messages
menubar: Produce better errors for broken .desktop files
2017-06-28 12:05:52 -04:00
Uli Schlachter b9d9587afa menubar: Produce better errors for broken .desktop files
This now runs parse_desktop_file in a protected context so that a single
broken desktop file does not break the whole menubar.

Also, the error message that is produced when a Lua error occurs now
also includes the file name of the .desktop file which we attempted to
parse. This should help quite a lot in debugging.

Related-to: https://github.com/awesomeWM/awesome/issues/1880
Signed-off-by: Uli Schlachter <psychon@znc.in>
2017-06-28 09:17:13 +02:00
Emmanuel Lepage Vallée 09bd3ec67a Merge pull request #1872 from Elv13/upstream_dynamic_p8
Import some commits from the stateful layout branch
2017-06-27 03:54:12 -04:00
Emmanuel Lepage Vallée 965316fb1c Merge pull request #1878 from psychon/test-menubar-changes
test-menubar.lua changes
2017-06-27 03:29:43 -04:00
Uli Schlachter 19fbae7f74 test-menubar.lua: Also skip the test with LuaJIT
Signed-off-by: Uli Schlachter <psychon@znc.in>
2017-06-27 08:58:17 +02:00
Uli Schlachter 914b4b7c8b test-menubar.lua: Filter calls to gears.debug.print_error
A test counts as having failed if it prints any error. However, the
search path can very well contain non-existing directories which are not
a problem. Thus, handle this by monkey-patching gears.debug.print_error.

Ref: https://github.com/awesomeWM/awesome/pull/1872#issuecomment-311224439
Signed-off-by: Uli Schlachter <psychon@znc.in>
2017-06-27 08:54:03 +02:00
Daniel Hahler 6d5cf6cdbb Merge pull request #1736 from blueyed/completion-zsh-nullglob
awful.completion: zsh: fix command completion from PWD
2017-06-27 08:01:46 +02:00
Daniel Hahler 3e305a7272 minor: check textbox earlier, whitespace 2017-06-27 00:04:40 +02:00
Daniel Hahler 5dcd5969be awful.prompt: fix Shift-Tab
1. before this patch the "Shift" key(s) to get to Shift-Tab would reset
   ncomp already.
2. "Shift-Tab" will come in as "Tab" with mod.Shift typically.
3. cur_pos and ncomp have to get reset in case of going back to the
   original entry.
2017-06-27 00:04:40 +02:00
Daniel Hahler 0c97d1aa95 Add spec/awful/completion_spec.lua 2017-06-26 22:45:11 +02:00
Daniel Hahler 4c792b49a9 awful.completion: handle first word as command always
This is necessary for `./*`, but should apply in general.
It was changed in 3986409e, but there is no argument for it in the
commit (message) really.
2017-06-26 22:45:11 +02:00
Daniel Hahler 2a69ffa374 awful.completion: zsh: fix command completion from PWD
Fixes https://github.com/awesomeWM/awesome/issues/1734.
2017-06-26 22:45:11 +02:00
Daniel Hahler 956ac3c50d awful.completion.shell: fix cur_pos return value 2017-06-26 22:45:11 +02:00
Daniel Hahler a6c36a4a2e awful.spawn: fix doc for spawn.easy_async{,_with_shell} (#1877)
Using `@function` in 547c0e4b was wrong.
2017-06-26 22:44:08 +02:00
Tim Roes 3d1b2c2a5e Pass freedesktop hints to naughty.notify (#1875) 2017-06-26 21:21:09 +02:00
Luke Bonham 547c0e4b83 awful.spawn: add easy_async_with_shell and fixed easy_async doc (#1541) 2017-06-26 21:15:58 +02:00
Daniel Hahler 9cd26cd274 doc: fix awful.completion.shell (#1866) 2017-06-26 20:40:56 +02:00
Emmanuel Lepage Vallee 82d1616773 tests: Add tests for the stack layout 2017-06-26 02:27:20 -04:00
Emmanuel Lepage Vallee fb367c3f9e stack: Add offset support 2017-06-26 02:27:20 -04:00
Emmanuel Lepage Vallee 29f70c1b4c mirror: Fix documentation
It didn't render properly
2017-06-26 02:27:20 -04:00
Emmanuel Lepage Vallee e49e7d6938 shims: Add a missing drawin member 2017-06-26 02:27:20 -04:00
Emmanuel Lepage Vallee 458340b4d4 doc: Add examples for the ratio layout 2017-06-26 02:27:20 -04:00
Emmanuel Lepage Vallee 0430f55257 ratio: Add a fill strategy for empty entries
This allows, for example, to imeplement the tag `master_fill_policy`
and simplify the client layouts by not having to hardcode empty
columns and rows in each layouts.
2017-06-26 02:27:20 -04:00
Daniel Hahler 731099ba4d CMakeLists.txt: remove check-unit from ALL (#1867)
This makes "make install" not run the unit tests (again).

Instead "check-unit" is added to the top-level wrapper Makefile to be
run for its "all" task.
2017-06-25 20:04:32 +02:00
Daniel Hahler d9631eac12 dbus.c: fix compiler warning (#1870)
[ 57%] Building C object CMakeFiles/awesome.dir/dbus.c.o
    …/awesome/build/dbus.c: In function ‘a_dbus_message_iter’:
    …/awesome/build/dbus.c:137:27: warning: statement will never be executed [-Wswitch-unreachable]
            int datalen = 0;
                ^~~~~~~

It was changed in dd862007, but probably not intentional.
2017-06-25 15:53:01 +02:00
Uli Schlachter c9c02aef67 tests: Disable test-menubar.lua where needed
This test runs into an lgi bug that causes awesome to segfault. Work
around this by just disabling the test where needed.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2017-06-23 20:24:50 -04:00
Uli Schlachter 941c997314 tests: Add a very basic test for the menubar
This does not actually test anything. It just makes sure that the code
runs. A proper test still seems to need some time and some hacks, but
this basic test is enough to check that the menubar does not cause any
Lua errors.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2017-06-23 20:24:44 -04:00
Emmanuel Lepage Vallée a3d1237a17 Merge pull request #1863 from psychon/fix-travis
.travis.yml: Move EMPTY_THEME_WHILE_LOADING=1 to another build
2017-06-23 20:19:01 -04:00
Daniel Hahler de094d14df Merge pull request #1783 from psychon/stuff
Some changes to our wrapper Makefile
2017-06-23 23:59:56 +02:00
Uli Schlachter 781e68aefc .travis.yml: Move EMPTY_THEME_WHILE_LOADING=1 to another build
The combination of TEST_PREV_COMMITS=1 and EMPTY_THEME_WHILE_LOADING=1
does not work. When trying to test the previous commits, the following
error happens:

error: Your local changes to the following files would be overwritten by
checkout:
	lib/beautiful/init.lua

This local modification was done by EMPTY_THEME_WHILE_LOADING=1.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2017-06-23 11:42:20 +02:00
Emmanuel Lepage Vallée ba78882cb3 Merge pull request #1834 from Elv13/fix_896
layoutbox: Use a textbox as the fallback when no images are found
2017-06-21 03:16:28 -04:00
Emmanuel Lepage Vallée 1f8b07d475 debug: Add a signal for deprecation warnings (#1832)
Fixes #1612.
2017-06-21 02:06:32 +02:00
Emmanuel Lepage Vallee 10acd82968 layoutbox: Use a textbox as the fallback when no images are found
Fix #896
2017-06-20 18:22:23 -04:00
Emmanuel Lepage Vallée 983fd4710f Merge pull request #1854 from Elv13/fix_1849
notification: Fix `font` and use `beautiful` directly
2017-06-20 05:19:52 -04:00
Emmanuel Lepage Vallée 8c926027c4 Merge pull request #1859 from psychon/beautiful_newindex
Make beautiful.foo = bar work properly
2017-06-20 04:20:45 -04:00
Emmanuel Lepage Vallée cded8b0837 Merge pull request #1857 from psychon/awful_tag_new
Fix #1853
2017-06-20 04:20:06 -04:00
Uli Schlachter ca12473584 Make beautiful.foo = bar work properly
Without this, users would modify the beautiful table directly instead of
the theme. This made a difference for code using beautiful.get() to get
the theme.

Reference: https://github.com/awesomeWM/awesome/pull/1854
Signed-off-by: Uli Schlachter <psychon@znc.in>
2017-06-20 10:05:32 +02:00
Uli Schlachter 20d15b8be6 awful.tag.new: Handle too few given layouts
When awful.tag.new() got a list of layouts shorter than the list of
names, it would previously create tags with nil as their layout. This
commit changes this so that the first layout is repeated if necessary.

Related-to: https://github.com/awesomeWM/awesome/issues/1853
Signed-off-by: Uli Schlachter <psychon@znc.in>
2017-06-20 09:44:02 +02:00
Uli Schlachter de05ee6678 awful.layout: Apply layouts in a protected context
If an error occurs while a layout is being applied, arrange_lock could
get stuck at true, meaning that no more re-arranges will happen, thus
breaking the whole layout machinery.

Such errors could happen because the layout itself produces an error,
but also because a width is too large and c:geometry() throws an error.
Thus, this commit moves all of the actual "apply a layout"-code into a
protected context.

Fixes: https://github.com/awesomeWM/awesome/issues/1853
Signed-off-by: Uli Schlachter <psychon@znc.in>
2017-06-20 09:41:59 +02:00
Emmanuel Lepage Vallee 0829cc2d76 notification: Fix `font` and use `beautiful` directly
Using `beautiful.get()` has the drawback of not supporting theme
variables set from `rc.lua`. It is also used less often than
direct theme access, making it a bit inconsistent with how other
modules behave.
2017-06-19 19:52:00 -04:00
Tim Roes f8a9b9891d Add missing awful.widget.common require (#1850) 2017-06-15 18:47:48 +02:00
Emmanuel Lepage Vallée 0d72b6a0a3 Merge pull request #1847 from SammysHP/doc-fix
Fix documentation of activation filter
2017-06-14 22:57:18 -04:00
Emmanuel Lepage Vallée f0f1b0236b Merge pull request #1848 from psychon/appearance
Fix cyclic build dependency for 06-appearance.md.lua
2017-06-14 18:14:48 -04:00