If a client sets hints, honor them for kb resize requests, just like we
do for mouse based resize requests. Based on a patch from Vadim Vygonets.
This commit is contained in:
parent
db0907a53d
commit
6e55f9d89b
@ -15,7 +15,7 @@
|
||||
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
|
||||
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
*
|
||||
* $OpenBSD: client.c,v 1.213 2015/11/11 14:22:01 okan Exp $
|
||||
* $OpenBSD: client.c,v 1.214 2015/11/12 18:33:30 okan Exp $
|
||||
*/
|
||||
|
||||
#include <sys/types.h>
|
||||
@ -839,6 +839,8 @@ client_getsizehints(struct client_ctx *cc)
|
||||
}
|
||||
cc->hint.incw = MAX(1, cc->hint.incw);
|
||||
cc->hint.inch = MAX(1, cc->hint.inch);
|
||||
cc->hint.minw = MAX(1, cc->hint.minw);
|
||||
cc->hint.minh = MAX(1, cc->hint.minh);
|
||||
|
||||
if (size.flags & PAspect) {
|
||||
if (size.min_aspect.x > 0)
|
||||
|
@ -15,7 +15,7 @@
|
||||
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
|
||||
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
*
|
||||
* $OpenBSD: kbfunc.c,v 1.123 2015/11/12 18:26:41 okan Exp $
|
||||
* $OpenBSD: kbfunc.c,v 1.124 2015/11/12 18:33:30 okan Exp $
|
||||
*/
|
||||
|
||||
#include <sys/types.h>
|
||||
@ -143,10 +143,10 @@ kbfunc_client_resize(struct client_ctx *cc, union arg *arg)
|
||||
|
||||
kbfunc_amount(arg->i, &mx, &my);
|
||||
|
||||
if ((cc->geom.w += mx) < 1)
|
||||
cc->geom.w = 1;
|
||||
if ((cc->geom.h += my) < 1)
|
||||
cc->geom.h = 1;
|
||||
if ((cc->geom.w += mx * cc->hint.incw) < cc->hint.minw)
|
||||
cc->geom.w = cc->hint.minw;
|
||||
if ((cc->geom.h += my * cc->hint.inch) < cc->hint.minh)
|
||||
cc->geom.h = cc->hint.minh;
|
||||
client_resize(cc, 1);
|
||||
|
||||
/* Make sure the pointer stays within the window. */
|
||||
|
Loading…
Reference in New Issue
Block a user