diff --git a/lib/awful/rules.lua b/lib/awful/rules.lua index 91201d72..1a9b872c 100644 --- a/lib/awful/rules.lua +++ b/lib/awful/rules.lua @@ -261,7 +261,7 @@ rules.delayed_properties = {} local force_ignore = { titlebars_enabled=true, focus=true, screen=true, x=true, y=true, width=true, height=true, geometry=true,placement=true, - border_width=true,floating=true + border_width=true,floating=true,size_hints_honor=true } function rules.high_priority_properties.tag(c, value) @@ -379,6 +379,13 @@ function rules.execute(c, props, callbacks) props.border_width(c, props) or props.border_width end + -- Size hints will be re-applied when setting width/height unless it is + -- disabled first + if props.size_hints_honor ~= nil then + c.size_hints_honor = type(props.size_hints_honor) == "function" and props.size_hints_honor(c,props) + or props.size_hints_honor + end + -- Geometry will only work if floating is true, otherwise the "saved" -- geometry will be restored. if props.floating then