On Wed, Jun 16, 2010 at 10:30:17PM +0200, Uli Schlachter wrote: > Am 16.06.2010 00:53, Jim Pryor wrote: > > v3.4-142-g287028 (built May 10) is fine. > > Builds on May 30 and June 15 manifest the bug. > > Between 2870289359266d3aea6e023f60a6d2cbd35d56f1 (committed May 3) > and 1615cff82a2d19488f2315fa2a7a2fa7570abb03 (committed May 30), > the code that fullscreens a client was moved from the C core into lua-land. > These days, clients are fullscreened in lib/awful/ewmh.lua. It now uses > c:geometry() for setting the size of the client. > That function seems to ignore the passed in height and width if the client is > fixed. > > Could you check if setting the client's c.size_hints_honor to false makes this > go away? (that makes awesome ignore all the "fixed size" stuff) > Alternatively, you could dump the client's size hints (either via xprop or via > dumping the content of the client's c.size_hints table. There might be some > interesting stuff in there. > > If I'm correct and that really causes the bug then it's definitely worth > reporting. I guess someone would have to check what EWMH's says on fullscreen > in > respect to size hints. > > This is all just a theory and no idea why your config would interfere with > this > somehow...
That sounds like the source of the problem. And indeed, git bisecting reports: > 38edc5809755b4623b30bcb1838360d29d86b789 is the first bad commit > commit 38edc5809755b4623b30bcb1838360d29d86b789 > Author: Julien Danjou <[email protected]> > Date: Mon Oct 5 17:13:29 2009 +0200 > client: implements maximized and fullscreen requests with Lua > > Signed-off-by: Julien Danjou <[email protected]> I don't understand the date on this commit, but I'm guessing it was committed to another branch in October and merged into master only sometime in May? As before, the default config shows correct behavior. Haven't yet tracked down the minimal changes to the default config needed to produce the error. My rc.lua file has the same diffs to the default as it's had all along, though, and the default hasn't changed at all in the range we're looking at. I now see some errors in my ~/.xsession.log, but I don't know when they appeared there. At some point during the git-bisect, but perhaps not with this last commit. I do a tail -f on that file and then try to fullscreen some windows, but no new errors show up in the ~/.xsession.log. For completeness, I'll report the error here: > W: awesome: luaA_dofunction:108: error while running function > stack traceback: > /usr/share/awesome/lib/awful/widget/tasklist.lua:47: in function > </usr/share/awesome/lib/awful/widget/tasklist.lua:28> > (tail call): ? > /usr/share/awesome/lib/awful/widget/common.lua:93: in function > 'list_update' > /usr/share/awesome/lib/awful/widget/tasklist.lua:81: in function > 'tasklist_update' > /usr/share/awesome/lib/awful/widget/tasklist.lua:137: in function > </usr/share/awesome/lib/awful/widget/tasklist.lua:137> > error: /usr/share/awesome/lib/awful/widget/tasklist.lua:47: attempt to > concatenate a nil value but as I said, I have no clear evidence that this is connected to the buggy behavior I'm reporting. It could just be another error that was exposed during the git bisect and has since been squashed. Following Uli's suggestion, I added a size_hints_honor line to my rc.lua file: > client.add_signal("manage", function (c, startup) > ... stuff ... > c.size_hints_honor = false > end) and then restarted awesome. But the buggy fullscreening behavior remains. Even for new clients created after restarting awesome. Here's the result of xprop on such a new client (created after restarting awesome, with the "size_hints_honor = false" line in the "manage" signal): > _NET_WM_DESKTOP(CARDINAL) = 2 > WM_STATE(WM_STATE): > window state: Normal > icon window: 0x0 > _NET_WM_PID(CARDINAL) = 13659 > WM_PROTOCOLS(ATOM): protocols WM_DELETE_WINDOW, _NET_WM_PING > WM_LOCALE_NAME(STRING) = "en_US.UTF-8" > WM_CLASS(STRING) = "urxvt", "URxvt" > WM_HINTS(WM_HINTS): > Client accepts input or input focus: True > Initial state is Normal State. > window id # of group leader: 0x120067f > WM_NORMAL_HINTS(WM_SIZE_HINTS): > program specified minimum size: 12 by 18 > program specified resize increment: 8 by 14 > program specified base size: 4 by 4 > window gravity: NorthWest > WM_CLIENT_MACHINE(STRING) = "vaio" > WM_COMMAND(STRING) = { "urxvt", "-cd", "/home/jim" } > _NET_WM_ICON_NAME(UTF8_STRING) = 0x6a, 0x69, 0x6d, 0x40, 0x76, 0x61, > 0x69, 0x6f, 0x3a, 0x20, 0x7e > WM_ICON_NAME(STRING) = "j...@vaio: ~" > _NET_WM_NAME(UTF8_STRING) = 0x6a, 0x69, 0x6d, 0x40, 0x76, 0x61, 0x69, > 0x6f, 0x3a, 0x20, 0x7e > WM_NAME(STRING) = "j...@vaio: ~" My config isn't super-elaborate, but it does have a bunch of includes including some bits of my personal lua libraries. I doubt any of you want to trace through all of that. So I'll pass this info on in the hopes it might help. If you still need me to find a minimal change to the default config which produces the problem, I'll try to track that down when I have some free minutes. -- Jim Pryor [email protected] -- To unsubscribe, send mail to [email protected].
