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.

Reply via email to