From: Corey Thompson <cmt...@gmail.com> There are really two patches here; the third is the second change merged to master. I noticed it didn't merge cleanly, so I went ahead and resolved the conflicts and generated a patch to submit.
The first removes "encoding=utf-8" from all of the vim modelines. I noticed this has already been done in master, so I went ahead and cleaned up 3.4 since it was bothering me. Vim no longer accepts this in the modelines and complains every time it parses it. The second is an amendment to my first fix for FS#826 where floating clients shrink by their border width every time they're managed. After Uli pointed out to me in #awesome that there was a potential bug with my fix, I set out to do better. The problem is that client_manage() emits property::geometry on new clients before their bordered-and-titled geometries are calculated. So client.store_init_geometry ends up saving a borderless geometry, inconsistent with the convention that the Lua code all assumes geometry includes borders and titlebars. So later when the client is resized by client.floating.set it uses this borderless geometry where should be the bordered geometry, and the client shrinks. This fix involves adding the previous geometry as an argument to the property::geometry signal (the new geometry can be gotten from the client, since it's now current). If there was no previous value (the first signal emitted from client_manage()), no argument is passed and so the callbacks can test for this by checking for prev == nil. My intention had been to change all property::* signals in this way for consistency, but it turns out I didn't have as much spare time to devote to this undertaking as I thought I would. So here is my fix with only the client's property::geometry signal updated to include the previous value as an argument to its callbacks. Corey Thompson (3): Remove "encoding=utf-8" from Vim modelines Initialize client.floating_geometry using the previous geometry Initialize client.floating_geometry using the previous geometry CMakeLists.txt | 2 +- awesome.c | 2 +- awesome.h | 2 +- awesomeConfig.cmake | 2 +- banning.c | 2 +- banning.h | 2 +- button.c | 2 +- button.h | 2 +- client.c | 18 ++++++++++++------ client.h | 2 +- color.c | 2 +- color.h | 2 +- common/array.h | 2 +- common/atoms.c | 2 +- common/atoms.h | 2 +- common/backtrace.c | 2 +- common/backtrace.h | 2 +- common/luaclass.c | 2 +- common/luaclass.h | 2 +- common/lualib.h | 2 +- common/luaobject.c | 2 +- common/luaobject.h | 2 +- common/signal.h | 2 +- common/util.c | 2 +- common/util.h | 2 +- common/version.c | 2 +- common/xcursor.c | 2 +- common/xcursor.h | 2 +- common/xembed.c | 2 +- common/xembed.h | 2 +- common/xutil.c | 2 +- common/xutil.h | 2 +- dbus.c | 2 +- dbus.h | 2 +- draw.c | 2 +- draw.h | 2 +- event.c | 2 +- event.h | 2 +- ewmh.c | 2 +- ewmh.h | 2 +- font.c | 2 +- font.h | 2 +- globalconf.h | 2 +- hooks.c | 2 +- image.c | 2 +- image.h | 2 +- key.c | 2 +- key.h | 2 +- keygrabber.c | 2 +- keygrabber.h | 2 +- lib/awful/autofocus.lua.in | 2 +- lib/awful/button.lua.in | 2 +- lib/awful/client.lua.in | 16 ++++++++++------ lib/awful/completion.lua.in | 2 +- lib/awful/dbus.lua.in | 2 +- lib/awful/hooks.lua.in | 2 +- lib/awful/init.lua.in | 2 +- lib/awful/key.lua.in | 2 +- lib/awful/layout/init.lua.in | 2 +- lib/awful/layout/suit/spiral.lua.in | 2 +- lib/awful/menu.lua.in | 2 +- lib/awful/mouse/init.lua.in | 2 +- lib/awful/placement.lua.in | 2 +- lib/awful/prompt.lua.in | 2 +- lib/awful/remote.lua.in | 2 +- lib/awful/rules.lua.in | 2 +- lib/awful/screen.lua.in | 2 +- lib/awful/startup_notification.lua.in | 2 +- lib/awful/tag.lua.in | 2 +- lib/awful/titlebar.lua.in | 2 +- lib/awful/util.lua.in | 2 +- lib/awful/wibox.lua.in | 2 +- lib/awful/widget/button.lua.in | 2 +- lib/awful/widget/common.lua.in | 2 +- lib/awful/widget/graph.lua.in | 2 +- lib/awful/widget/init.lua.in | 2 +- lib/awful/widget/launcher.lua.in | 2 +- lib/awful/widget/layout/horizontal.lua.in | 2 +- lib/awful/widget/layout/init.lua.in | 2 +- lib/awful/widget/layoutbox.lua.in | 2 +- lib/awful/widget/progressbar.lua.in | 2 +- lib/awful/widget/prompt.lua.in | 2 +- lib/awful/widget/taglist.lua.in | 2 +- lib/awful/widget/tasklist.lua.in | 2 +- lib/awful/widget/textclock.lua.in | 2 +- lib/beautiful.lua.in | 2 +- lib/naughty.lua.in | 2 +- luaa.c | 2 +- luaa.h | 2 +- mouse.c | 2 +- mouse.h | 2 +- mousegrabber.c | 2 +- mousegrabber.h | 2 +- property.c | 2 +- property.h | 2 +- root.c | 2 +- screen.c | 2 +- screen.h | 2 +- selection.c | 2 +- selection.h | 2 +- spawn.c | 2 +- spawn.h | 2 +- stack.c | 2 +- stack.h | 2 +- strut.c | 2 +- strut.h | 2 +- systray.c | 2 +- systray.h | 2 +- tag.c | 2 +- tag.h | 2 +- themes/default/theme.lua.in | 2 +- themes/sky/theme.lua.in | 2 +- timer.c | 2 +- timer.h | 2 +- titlebar.c | 2 +- titlebar.h | 2 +- wibox.c | 2 +- wibox.h | 2 +- widget.c | 2 +- widget.h | 2 +- widgets/graph.c | 2 +- widgets/imagebox.c | 2 +- widgets/progressbar.c | 2 +- widgets/systray.c | 2 +- widgets/textbox.c | 2 +- window.c | 2 +- window.h | 2 +- 127 files changed, 147 insertions(+), 137 deletions(-) -- 1.7.9.4 -- To unsubscribe, send mail to awesome-devel-unsubscr...@naquadah.org.