[Patch] Re-add lazy banning
-BEGIN PGP SIGNED MESSAGE- Hash: SHA256 Hi list, the two attached patches re-add lazy banning (or passive banning as someone called it). If banning_refresh() is now called it sets a flag need_lazy_banning again, but now it also makes sure that the lua events it can generate are generated *right* *now* and not at the end of the main loop. This should fix the bug that has caused this laziness to be removed. Uli - -- Do you know that books smell like nutmeg or some spice from a foreign land? -- Faber in Fahrenheit 451 -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.9 (GNU/Linux) iQEcBAEBCAAGBQJKvxRCAAoJECLkKOvLj8sGoicH/3elpXLY3o8OQgFrXTt80flA s8DdSGIPasTB//nPXj0m0yUUX2Pb1wt+4PDoQvYpcWhHIcIzy1V4mZJTY+NMNFAM LGuaaPkXc7YCZKC+NXtIfaVmDIRqNJZ5e7DmnNb3NYFrjXze+vIKCHCML9CP9JKJ Rml5MrxP0Jc2H0T+77xc4vx/zhAO+sYl0tEGRp2xEqywFsHr+CLRbq11OWqkG6Ys 0s+ClDBwe7EOZJombu/8xqyU7oBKVE00+PBzO2CfJAIE5jMwz9EsmmqXfnLVHkH7 13LW13aaVjJitoJrM+wymMCJlTtcq990KCudIYrfrHBLxU4g1G8FdLqHbEMxTw8= =wr8Z -END PGP SIGNATURE- From c8ca9e30cdc4e2bf66fddc76414d66de50c44793 Mon Sep 17 00:00:00 2001 From: Uli Schlachter psyc...@znc.in Date: Sun, 27 Sep 2009 09:21:04 +0200 Subject: [PATCH 1/2] Add client_ban_unfocus client_ban_unfocus() generates the unfocus events that client_ban() would generate, but it doesn't do the actual banning. Signed-off-by: Uli Schlachter psyc...@znc.in --- client.c | 20 ++-- client.h |1 + 2 files changed, 15 insertions(+), 6 deletions(-) diff --git a/client.c b/client.c index f726ca5..dd854c2 100644 --- a/client.c +++ b/client.c @@ -335,6 +335,19 @@ client_set_focus(client_t *c, bool set_input_focus) window_takefocus(c-window); } +/** Prepare banning a client by running all needed lua events. + * \param c The client. + */ +void client_ban_unfocus(client_t *c) +{ +if(globalconf.screens.tab[c-phys_screen].prev_client_focus == c) +globalconf.screens.tab[c-phys_screen].prev_client_focus = NULL; + +/* Wait until the last moment to take away the focus from the window. */ +if(globalconf.screens.tab[c-phys_screen].client_focus == c) +client_unfocus(c); +} + /** Ban client and move it out of the viewport. * \param c The client. */ @@ -347,12 +360,7 @@ client_ban(client_t *c) c-isbanned = true; -if(globalconf.screens.tab[c-phys_screen].prev_client_focus == c) -globalconf.screens.tab[c-phys_screen].prev_client_focus = NULL; - -/* Wait until the last moment to take away the focus from the window. */ -if(globalconf.screens.tab[c-phys_screen].client_focus == c) -client_unfocus(c); +client_ban_unfocus(c); } } diff --git a/client.h b/client.h index 39d20fa..a270a65 100644 --- a/client.h +++ b/client.h @@ -163,6 +163,7 @@ LUA_OBJECT_FUNCS(client_class, client_t, client) bool client_maybevisible(client_t *, screen_t *); client_t * client_getbywin(xcb_window_t); void client_ban(client_t *); +void client_ban_unfocus(client_t *); void client_unban(client_t *); void client_manage(xcb_window_t, xcb_get_geometry_reply_t *, int, bool); area_t client_geometry_hints(client_t *, area_t); -- 1.6.3.3 From 6e248ebe6906cc41598a4d7164c78a9042057aa3 Mon Sep 17 00:00:00 2001 From: Uli Schlachter psyc...@znc.in Date: Sun, 27 Sep 2009 09:22:03 +0200 Subject: [PATCH 2/2] Re-add lazy banning This kind-of-reverts 058dbab82875a684cebfbc36126b0383c6219037. If banning_refresh() is called, only the lua events that it generated before are now generated (the unfocus event). The actual mapping and unmapping of X11 windows is defered until the end of the main loop via a new per-screen need_lazy_banning flag. Signed-off-by: Uli Schlachter psyc...@znc.in --- banning.c | 38 -- banning.h |1 + event.h |1 + screen.h |2 ++ 4 files changed, 40 insertions(+), 2 deletions(-) diff --git a/banning.c b/banning.c index 053e64c..a973d8e 100644 --- a/banning.c +++ b/banning.c @@ -20,9 +20,9 @@ */ #include banning.h -#include tag.h -#include window.h +#include client.h #include titlebar.h +#include screen.h /** Reban windows following current selected tags. * \param screen The screen to arrange. @@ -30,6 +30,31 @@ void banning_refresh(screen_t *screen) { +/* We update the complete banning only once per main loop to avoid + * excessive updates... + */ +screen-need_lazy_banning = true; + +/** but if a client will be banned in our next update we unfocus it now. + */ +foreach(_c, globalconf.clients) +{ +client_t *c = *_c; + +/* we don't touch other screens windows */ +if(!client_isvisible(c, screen) c-screen == screen) +client_ban_unfocus(c); +} +} + +static void +reban(screen_t *screen) +{ +if (!screen-need_lazy_banning) +return; + +screen-need_lazy_banning = false; +
[awesome bugs] #638 - Multi screen support for naughty
THIS IS AN AUTOMATED MESSAGE, DO NOT REPLY. The following task is now closed: FS#638 - Multi screen support for naughty User who did this - Julien Danjou (jd) Reason for closing: Won't implement Additional comments about closing: Patch seems a bit buggy and not that useful IMHO. More information can be found at the following URL: http://awesome.naquadah.org/bugs/index.php?do=detailstask_id=638 You are receiving this message because you have requested it from the Flyspray bugtracking system. If you did not expect this message or don't want to receive mails in future, you can change your notification settings at the URL shown above. -- To unsubscribe, send mail to awesome-devel-unsubscr...@naquadah.org.
Re: [Patch obvious] Minor cleanup
On Fri, Sep 25, 2009 at 09:28:59AM +0200, Uli Schlachter wrote: Hi, the attached patches let some obvious widgets only require the parts of obvious.lib that they actually need (someone complained on irc that obvious.lib.mpd broke his awesome but he never used it). [...] Both merged. The second patch then fixes this bug properly in obvious.lib.mpd. Upstream already NACK'd that patch since he thinks it's unsuitable for a mpd library. :( [...] Well,contrary to using kAworu's mpd lib in your own stuff, with obvious you don't neccessarily want to use it at all, as was the case with the user who had a broken awesome after (unknowningly) requiring the mpd library. Testing: All the widgets I touched still seem to work correctly and if I make lib.mpd require socke it errors less fatal than before. Uli -- GCS/IT/M d- s+:- a-- C++ UL+++ US UB++ P+++ L+++ E--- W+ N+ o-- K- w--- ?O M-- ?V PS++ PE- Y++ PGP+++ t+ 5 X+ R tv b+++ DI+++ D+++ G+ e h! r y+ Gregor Best pgphrlfaUBDFw.pgp Description: PGP signature
Re: [Patch] Image: Allow drawing outside of the image
At 1254036867 time_t, Uli Schlachter wrote: the attached patch has been laying around for quite some time now. The reason why I wrote it: Pushed. :) Cheers, -- Julien Danjou // ᐰ jul...@danjou.info http://julien.danjou.info // 9A0D 5FD9 EB42 22F6 8974 C95C A462 B51E C2FE E5CD // This is the end of my signature. signature.asc Description: Digital signature
Re: [Patch] Re-add lazy banning
-BEGIN PGP SIGNED MESSAGE- Hash: SHA256 Uli Schlachter wrote: Hi list, the two attached patches re-add lazy banning (or passive banning as someone called it). If banning_refresh() is now called it sets a flag need_lazy_banning again, but now it also makes sure that the lua events it can generate are generated *right* *now* and not at the end of the main loop. This should fix the bug that has caused this laziness to be removed. Uli Hm, thanks to lukkash on IRC I noticed a bug with this. If you do .selected = false ; .selected = true on your current tag then the unfocus event will be run, but the focus event wont :( Ideas? - -- Do you know that books smell like nutmeg or some spice from a foreign land? -- Faber in Fahrenheit 451 -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.9 (GNU/Linux) iQEcBAEBCAAGBQJKv7ceAAoJECLkKOvLj8sGdG4H/jiv6QpquHz5pKDo6SMkLApv znxUGD413+x7yqhMlUcqO4Up00wXhnwpEJDWHQAyXp7RNfllSNLWBhwM72enwJe9 EsotR6DrU4+jREnRAHFCyNLPzhuZ4+VQHuLtIrWvpiOdDijdNpuKSZ8OkWcOQQFJ pFGUGTXaMZhxRne0X1YbbrY4BiinAJCFdbQodjq1x/IvTUkiNd0lrXNWvSsHIvJx 9FtpCbbHYhSKMRflAPzIkzZQxMywe+eooB+YCSvmga0MLeRwVvIqHzSJG3Eh7mGJ ZrhgSaiqhb9QKgEY2t0SYeKE5CoIxY3ruFFrERPV/XfBUzC5BbQmZGUK4Z+yjY0= =2gEI -END PGP SIGNATURE- -- To unsubscribe, send mail to awesome-devel-unsubscr...@naquadah.org.
[awesome bugs] #642 - Titlebar left on the starting tag after movetotag happens (Attachment added)
THIS IS AN AUTOMATED MESSAGE, DO NOT REPLY. A new Flyspray task has been opened. Details are below. User who did this - anrxc (anrxc) Attached to Project - awesome Summary - Titlebar left on the starting tag after movetotag happens Task Type - Bug Report Category - Core Status - Unconfirmed Assigned To - Operating System - All Severity - Low Priority - Normal Reported Version - git/master Due in Version - Undecided Due Date - Undecided Details - Hi, I caught a problem with titlebars. First, I have a Firefox rule: { rule = { class = Firefox, instance = Navigator }, properties = { tag = tags[screen.count()][3] } }, Second, I have a piece of code in my manage signal function that adds a titlebar to each floating client, or every client if we are on a floating layout. if awful.client.floating.get(c) or awful.layout.get(c.screen) == awful.layout.suit.floating then if not c.titlebar then awful.titlebar.add(c, { modkey = modkey }) end end If I am on a tag with floating layout and I start Firefox, because of the current awesome 3.4 behaviour the client is first visible on the starting tag before being moved (with flashes and every thing else... you know). Problem for this report is that the client titlebar is left visible on the starting tag after the client has been moved. If I do anything to force re-arranging the screen (like starting another client) the titlebar will vanish. The attached image shows the problem, a titlebar left on the starting tag. One or more files have been attached. More information can be found at the following URL: http://awesome.naquadah.org/bugs/index.php?do=detailstask_id=642 You are receiving this message because you have requested it from the Flyspray bugtracking system. If you did not expect this message or don't want to receive mails in future, you can change your notification settings at the URL shown above. -- To unsubscribe, send mail to awesome-devel-unsubscr...@naquadah.org.
[awesome bugs] #643 - Imlib2 warning: imlib_image_get_width() called with image being NULL
THIS IS AN AUTOMATED MESSAGE, DO NOT REPLY. A new Flyspray task has been opened. Details are below. User who did this - anrxc (anrxc) Attached to Project - awesome Summary - Imlib2 warning: imlib_image_get_width() called with image being NULL Task Type - Bug Report Category - Core Status - Unconfirmed Assigned To - Operating System - All Severity - Low Priority - Normal Reported Version - git/master Due in Version - Undecided Due Date - Undecided Details - Hi, I have a few Imlib warnings in my xsession-errors. I have about 6 progressbars (and one graph), a while back I reported a simillar issue (FS#597) and Uli sent some patches but I see this happen with latest git. Warning is always printed in pairs of two and sometimes doesn't appear for hours. --- * Imlib2 Developer Warning * : This program is calling the Imlib call: imlib_image_get_width(); With the parameter: image being NULL. Please fix your program. --- More information can be found at the following URL: http://awesome.naquadah.org/bugs/index.php?do=detailstask_id=643 You are receiving this message because you have requested it from the Flyspray bugtracking system. If you did not expect this message or don't want to receive mails in future, you can change your notification settings at the URL shown above. -- To unsubscribe, send mail to awesome-devel-unsubscr...@naquadah.org.
Re: shifty and 3.4rc
On Sat, Sep 26, 2009 at 19:18, Andreas Klöckner li...@informa.tiker.net wrote: shifty doesn't appear to work with 3.4rc1, i.e. I get an unresponsive screen that says AWESOME in the middle. The .xsession-errors file has some warnings about function deprecations, but nothing immediately incriminating. Is this supposed to work? Any clues why that may be? I used the shifty for git master link at http://awesome.naquadah.org/wiki/Shifty try this, works with a master from a week ago: http://git.mercenariesguild.net/?p=awesome.git;a=shortlog;h=refs/heads/shifty-masterhack i need to clean it up some day but now i've got a bunch of other stuff to do. -- To unsubscribe, send mail to awesome-devel-unsubscr...@naquadah.org.
[PATCH] 0001-awful.tag-fix-typo-in-viewmore.patch
a trivial fix for viewmore() From ee779ae5f3648474e1ccddb511cf3cba10005e9d Mon Sep 17 00:00:00 2001 From: koniu gkusni...@gmail.com Date: Mon, 28 Sep 2009 03:18:57 +0100 Subject: [PATCH] awful.tag: fix typo in viewmore Signed-off-by: koniu gkusni...@gmail.com --- lib/awful/tag.lua.in |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/lib/awful/tag.lua.in b/lib/awful/tag.lua.in index 308afbf..aecd586 100644 --- a/lib/awful/tag.lua.in +++ b/lib/awful/tag.lua.in @@ -265,7 +265,7 @@ end function viewmore(tags, screen) local screen_tags = capi.screen[screen or capi.mouse.screen]:tags() for _, tag in pairs(screen_tags) do -tag.selected = (table.hasitem(tags, tag) ~= nil) +tag.selected = (util.table.hasitem(tags, tag) ~= nil) end capi.screen[screen]:emit_signal(tag::history::update) end -- 1.6.4.3