Commit Graph

5163 Commits

Author SHA1 Message Date
Sébastien Luttringer 0cbb3b4770 Get mousegrabber running state
Add a function mousegrabber.isrunning() which return a boolean state of
mousegrabber

Signed-off-by: Sébastien Luttringer <seblu@seblu.net>
Signed-off-by: Julien Danjou <julien@danjou.info>
2012-06-06 10:41:36 +02:00
Thomas Moschny 5d99804f9e Desktop file fixes.
- Remove an extra space after the group header.
- Add required key 'Type'.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2012-06-05 15:23:37 +02:00
Uli Schlachter 938ba52201 awful.client.setslave: Fix for not-visible clients
Previously, setslave() put a client only at the end of the list of visible
clients. Obviously this means that it didn't do anything helpful if the target
client was not visible.

Fix this by iterating over all clients on the target screen instead of just the
visible ones.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2012-05-05 10:06:19 +02:00
Uli Schlachter 05d991d452 Taglist: Add {bg,fg}_occupied theme options
This commit adds a new {bg,fg}_occupied option to the taglist. These control the
background and foreground color that unselected but occupied tags get in the
taglist. Occupied here means that at least one client is tagged with that tag.

Thanks to NougatRillettes for submitting this.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2012-04-06 19:23:49 +02:00
Uli Schlachter c0dffca646 Focus history: Don't ignore unfocusable clients
The only caller of focus.history.add() should be the "focus" signal, so at that
time the unfocusable client already does have the focus. At that point, there is
no reason why this shouldn't be recorded in the focus history.

(And yes, unfocusable clients can be focused. Don't ask.)

This should hopefully fix FS#778.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2012-04-06 12:24:56 +02:00
Corey Thompson 7298b3835d Remove "encoding=utf-8" from Vim modelines
Signed-off-by: Corey Thompson <cmtptr@gmail.com>
Signed-off-by: Julien Danjou <julien@danjou.info>
2012-03-26 12:19:57 +02:00
TsT 7a837bd2a6 table.foreach is deprecated: now use for + pairs
Signed-off-by: Uli Schlachter <psychon@znc.in>
2012-03-08 16:44:06 +01:00
TsT d89b7bb861 mistake fix: "b" local variable declaration is missing
Signed-off-by: Uli Schlachter <psychon@znc.in>
2012-03-08 16:44:01 +01:00
Duflot Jean-Luc 4ff0a8d14d Update french manpages
Signed-off-by: Julien Danjou <julien@danjou.info>
2012-02-21 12:51:58 +01:00
Anurag Priyam 9f2a79a2d0 add awful.client.cycle
add awful.client.cycle to iterate through clients that match a given condition

A common use case is to cycle through clients that match a given rule and take
certain action on them: raise, set or get property, etc.; see usage example in
the docs.

Signed-off-by: Anurag Priyam <anurag08priyam@gmail.com>
Signed-off-by: Uli Schlachter <psychon@znc.in>
2012-02-17 16:54:28 +01:00
Anurag Priyam 55ee0d4dab add awful.util.table.cycle
awful.util.table.cycle iterates through elements of the table that match the
given condition.

This will help writing concise code when one wants to apply a function to
(read, take some action) on a select list of elements in a table (of say,
clients and tags).

Conflicts:

	lib/awful/util.lua.in

Signed-off-by: Anurag Priyam <anurag08priyam@gmail.com>
Signed-off-by: Uli Schlachter <psychon@znc.in>
2012-02-17 16:54:28 +01:00
Axel Beckert cf784bc825 awful.tag.inc*: properly pass tag parameter to set*
Signed-off-by: Julien Danjou <julien@danjou.info>
2012-01-11 10:42:41 +01:00
Anurag Priyam 50b10529fc awful.tooltip docs: replace references to undefined variable 'K' with 'myclock'
Most probably, the original author chose to use 'K' first, switched to
'myclock' later, and forgot to update remaining occurrences of 'K'.

Signed-off-by: Anurag Priyam <anurag08priyam@gmail.com>
Signed-off-by: Uli Schlachter <psychon@znc.in>
2012-01-10 15:02:51 +01:00
Arvydas Sidorenko 6c48655d40 Original sky theme dwindle and spiral icons
There was a few days ago a bug report about missing icons with provided
link to the original ones. My previous patch was with icons made
by me using the ones from default theme, just changed the color.
Probably you should ignore it and use this one unless you like
my made more.

Signed-off-by: Arvydas Sidorenko <asido4@gmail.com>
Signed-off-by: Uli Schlachter <psychon@znc.in>
2011-12-30 17:50:58 +01:00
Julien Danjou 87ce51d2e9 naughty: remove score system, merge presets
Scoring is broken, it's more useful to merge all presets, and declares that
order matters.
2011-12-27 11:24:01 +01:00
Julien Danjou 0f5d2d56b9 Fix mousegrabber run documentation
Signed-off-by: Julien Danjou <julien@danjou.info>
2011-12-22 10:23:25 +01:00
Thomas Moschny d3d8160e27 Fix build with glib2 2.31.0
Starting with glib2 2.31.0, It is no longer possible to
include individual headers (like "ghash.h") -- you must
#include <glib.h>.

Signed-off-by: Thomas Moschny <thomas.moschny@gmx.de>
Signed-off-by: Uli Schlachter <psychon@znc.in>
2011-12-18 02:09:39 +01:00
Corey Thompson cacba79d49 Initialize floating_geometry on property::border_width signal (FS#826)
Initializing the client property "floating_geometry" on the
property::geometry signal is problematic since this is emitted before
client_set_border_width(), causing the internal client geometry to get
stored and later passed to client:geometry() which assumes it includes
titlebar and borders.

Signed-off-by: Corey Thompson <cmtptr@gmail.com>
Signed-off-by: Uli Schlachter <psychon@znc.in>
2011-12-09 22:02:45 +01:00
Julien Danjou 2fa20703ff awsetbg: xli is reported as ok
Signed-off-by: Julien Danjou <julien@danjou.info>
2011-12-09 10:44:05 +01:00
Rob Hoelz 8a42071cb9 Allow usage of strings as key names for root.fake_input
Signed-off-by: Uli Schlachter <psychon@znc.in>
2011-12-08 18:48:17 +01:00
Corey Thompson 7013b9bb70 Bump duplicated commands to the most recent in command prompt history
Signed-off-by: Uli Schlachter <psychon@znc.in>
2011-12-05 20:51:45 +01:00
Gianluca Fiore 7205dfde57 Add italian translation
Signed-off-by: Julien Danjou <julien@danjou.info>
2011-12-01 11:23:25 +01:00
Uli Schlachter d3021e6772 Beautiful: Handle invalid wallpaper_cmd better (FS#941)
Biggest plus is that this no longer errors out when wallpaper_cmd isn't a table.
Second biggest plus is that this now prints a warning.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2011-11-27 11:16:47 +01:00
Julien Danjou 3d4d1955da change codename
Signed-off-by: Julien Danjou <julien@danjou.info>
2011-11-23 15:08:50 +01:00
Uli Schlachter 09fdd0ee27 Fix the default config
When I cherry-picked commit 2785d695ce from master, I didn't notice that it uses
connect_signal() which is add_signal() in 3.4-land. That was half a month ago.
Since then, no one complaint about this, so no one hit the problem yet?

Ok, it is in the default config which I guess isn't what the people who use
git/3.4 run. Still, would have been nice to know that people actually test the
mess which I produce. :-(

Signed-off-by: Uli Schlachter <psychon@znc.in>
2011-11-10 19:48:51 +01:00
Perry Hargrave 4155303b8b Check wallpaper_cmd entries are valid (FS#938)
wallpaper.is_valid(tw):
    Checks that the table has only string entries.

Signed-off-by: Perry Hargrave <resixian@gmail.com>
Signed-off-by: Uli Schlachter <psychon@znc.in>
2011-11-10 19:42:47 +01:00
Perry Hargrave adbc736b8a Prevent util.cycle from infinite loop (FS#938)
If the first argument to cycle must be > 1 or else return nil
immediately.

Signed-off-by: Perry Hargrave <resixian@gmail.com>
Signed-off-by: Uli Schlachter <psychon@znc.in>
2011-11-10 19:42:38 +01:00
Majic 3636b884d3 Private naughty.getIcon() -> public awful.util.geticonpath()
Signed-off-by: Uli Schlachter <psychon@znc.in>
2011-11-01 19:45:12 +01:00
Massimiliano Brocchini bb3fc70fb3 search in prompt history
Signed-off-by: Massimiliano Brocchini <massimiliano.brocchini@gmail.com>
Signed-off-by: Uli Schlachter <psychon@znc.in>
2011-10-25 13:02:52 +02:00
Uli Schlachter 2785d695ce Signal runtime errors via a naughty popup
Whenever awesome's C code calls into lua via a protected call, the debug::error
signal is emitted on errors. We now use this to give naughty popups for every
single error that happens. This should help people to notice errors easier.

The only exception are mouse and key grabbers and config loading, those don't go
through debug::error. I guess that means that the grabbers need to be hooked up
to debug::error. :-)

Signed-off-by: Uli Schlachter <psychon@znc.in>
2011-10-23 22:31:18 +02:00
Uli Schlachter be02406f77 Signal config errors via a naughty popup
If loading of any config file fails, awesome will now remember the error message
and make it available to lua. The default config is modified to open a naughty
popup on errors.

This should help all those people who modify their config and then wonder why
there change is ignored, not noticing awesome's error message on stderr

Signed-off-by: Uli Schlachter <psychon@znc.in>
2011-10-23 22:30:46 +02:00
Massimiliano Brocchini bf8e6418f5 no duplicate entries in prompt history
Signed-off-by: Massimiliano Brocchini <massimiliano.brocchini@gmail.com>
Signed-off-by: Uli Schlachter <psychon@znc.in>
2011-10-23 17:57:44 +02:00
Uli Schlachter 092813cd63 Ungrab the server before parsing the config
This moves the loading of the rc.lua and managing of pre-existing clients to
after we ungrab the server during startup. To make sure we have no races with
clients which start up parallel to awesome, we do the QueryTree for all the
clients that we have to manage before the ungrab, but start managing the clients
only after the ungrab.

This means that we have already selected our event mask on the root window in
scan() and thus received an UnmapNotify event when we reparent windows into a
frame window. This has the effect that we immediately unmanage the client again,
whoops.

To fix this, we grab the server again and remove our event mask on the root
window again while we reparent.

This should hopefully fix all cases where we deadlock during startup because
pulseaudio wants to talk to the X server, but is being ignored because we have
the server grabbed while at the same time we are waiting for pulseaudio.

Signed-off-by: Uli Schlachter <psychon@znc.in>
Signed-off-by: Julien Danjou <julien@danjou.info>
2011-10-21 17:08:39 +02:00
Ignas Anikevicius (gns_ank) 0e44a6282e Saving gama values in pngs to prevent compilation errors
Signed-off-by: Uli Schlachter <psychon@znc.in>
2011-10-17 13:19:22 +02:00
David Palacio 8fd3182869 Ignore desktop clients on taglist widget
Make the taglist widget skip unstickied and focused desktop clients
for status update by:
 * Ignoring focused client if it is of desktop type
 * Returning a list of clients from tag.clients without clients
   of desktop type.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2011-10-04 20:22:31 +02:00
David Palacio cc0fc99a2c Desktop clients may not be visible on all tags.
Usually desktop clients are on a sticky state. If the client
is not sticky, only show on selected tags.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2011-10-04 20:22:31 +02:00
Julien Danjou ddf8f096bf naughty: fix image data copy
Signed-off-by: Julien Danjou <julien@danjou.info>
2011-10-04 15:23:11 +02:00
Jacques-Pascal Deplaix 50bc79e516 awsetbg: Add the aspect option with feh
Signed-off-by: Uli Schlachter <psychon@znc.in>
2011-09-29 21:22:24 +02:00
Julien Danjou fccf12575f Use awesome.conffile in menu
Signed-off-by: Julien Danjou <julien@danjou.info>
2011-09-17 17:24:44 +02:00
Julien Danjou f0ca5e7505 Set the conffile value before executing the code
Signed-off-by: Julien Danjou <julien@danjou.info>
2011-09-17 17:21:34 +02:00
Uli Schlachter 8a04ce9c97 Fix restacking with zaphod mode (FS#835)
Boy was this code broken. It tried to stack windows ontop of each other which
were on different screens. However, since they didn't have the same parent, they
obviously couldn't be ontop of each other. The X server just reacted with a "wtf
are you doing?"-kind of error which means the restacking was ignored.

The fix is to restack each screen on its own, completely ignoring any windows
from other screens.

A big thanks goes to Siarhei Siamashka who bisected this issue and helped me
debugging it which took quite a while. Finally, he noticed that my first patch
was broken and also figured out the fix. Thanks!

v2: Move the check on "client_need_stack_refresh" from
client_stack_refresh_screen() into client_stack_refresh(), so that all screens
are restacked instead of just the first one.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2011-09-12 22:19:59 +02:00
Anurag Priyam 49774897a4 naughty: add helper function, toggle() - suspend/resume notifications
Signed-off-by: Anurag Priyam <anurag08priyam@gmail.com>
Signed-off-by: Uli Schlachter <psychon@znc.in>
2011-07-24 19:30:59 +02:00
Perry Hargrave 99a16e6467 Update tasklist when client screen changes
This handles corner case where a client has no tags (e.g. stickied), but
is moved across screens.

Signed-off-by: Perry Hargrave <resixian@gmail.com>
Signed-off-by: Uli Schlachter <psychon@znc.in>
2011-07-08 18:18:38 +02:00
Perry Hargrave 187cf6d917 movetoscreen:Dont refocus the selected client
Signed-off-by: Perry Hargrave <resixian@gmail.com>
Signed-off-by: Uli Schlachter <psychon@znc.in>
2011-07-08 18:18:38 +02:00
Perry Hargrave d8883f89fc Retain focus on clients moved across screens (fs#620)
Signed-off-by: Perry Hargrave <resixian@gmail.com>
Signed-off-by: Uli Schlachter <psychon@znc.in>
2011-07-08 18:18:37 +02:00
Perry Hargrave a23817718e FS#917: Dont move clients with fixed positions
Signed-off-by: Uli Schlachter <psychon@znc.in>
2011-07-03 10:05:49 +02:00
Uli Schlachter 9b2a988ab7 Make sure russian manpages are installed (FS#907)
Signed-off-by: Uli Schlachter <psychon@znc.in>
2011-05-21 13:41:58 +02:00
Arnaud Fontaine c9f6b65c19 Update the code following release of xcb-util 0.3.8.
xcb-util is now split into several repositories since 0.3.8. This
release also cleaned up the API a lot, thus update the code
accordingly.

Signed-off-by: Arnaud Fontaine <arnau@debian.org>
Signed-off-by: Uli Schlachter <psychon@znc.in>
2011-05-16 20:55:19 +02:00
Julien Danjou c452795450 change codename
Signed-off-by: Julien Danjou <julien@danjou.info>
2011-05-16 16:35:17 +02:00
Perry Hargrave 7c3fb9edb7 awful.client.jumpto: View urgent clients smarter
Only do a tag.viewonly() if the urgent client is not visible.

Further, if the boolean 'merge' parameter is true [default false], then
to a tag.viewmore() with all the currently visible tags.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2011-05-13 15:14:34 +02:00