awful.mouse.move: Fix snapping support

This commit is contained in:
Emmanuel Lepage Vallee 2016-04-22 03:04:28 -04:00
parent 86ca6222e2
commit baec2efe2d
2 changed files with 16 additions and 1 deletions

View File

@ -84,7 +84,11 @@ function mouse.client.move(c, snap, finished_cb) --luacheck: no unused args
y = geo.y - coords.y,
}
mouse.resize(c, "mouse.move", {placement=aplace.under_mouse, offset=offset})
mouse.resize(c, "mouse.move", {
placement = aplace.under_mouse,
offset = offset,
snap = snap
})
end
mouse.client.dragtotag = { }

View File

@ -8,6 +8,7 @@
---------------------------------------------------------------------------
local aclient = require("awful.client")
local resize = require("awful.mouse.resize")
local capi = {
root = root,
@ -121,5 +122,15 @@ function module.snap(c, snap, x, y, fixed_x, fixed_y)
return geom
end
-- Enable edge snapping
resize.add_move_callback(function(c, geo, args)
if args and (args.snap == nil or args.snap) then
local ngeo = module.snap(c, args.snap, geo.x, geo.y)
ngeo.x = ngeo.x + (2 * c.border_width)
ngeo.y = ngeo.y + (2 * c.border_width)
return ngeo
end
end, "mouse.move")
return setmetatable(module, {__call = function(_, ...) return module.snap(...) end})