kwo pushed a commit to branch master. http://git.enlightenment.org/e16/e16.git/commit/?id=0a65af57e5496becc566bfd37e0cf295ac4a848b
commit 0a65af57e5496becc566bfd37e0cf295ac4a848b Author: Kim Woelders <k...@woelders.dk> Date: Thu Jul 15 06:57:30 2021 +0200 Focus: Fix focus on new clients requesting max size --- src/ewins.c | 4 ++-- src/ewins.h | 4 ++-- src/ewmh.c | 2 +- src/ipc.c | 6 +++--- src/size.c | 6 +++--- 5 files changed, 11 insertions(+), 11 deletions(-) diff --git a/src/ewins.c b/src/ewins.c index da46849d..bd633dbc 100644 --- a/src/ewins.c +++ b/src/ewins.c @@ -1,6 +1,6 @@ /* * Copyright (C) 2000-2007 Carsten Haitzler, Geoff Harrison and various contributors - * Copyright (C) 2004-2020 Kim Woelders + * Copyright (C) 2004-2021 Kim Woelders * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to @@ -895,7 +895,7 @@ AddToFamily(EWin * ewin, EX_Window xwin, XWindowAttributes * pxwa, int startup) hor = ewin->state.maximized_horz; ver = ewin->state.maximized_vert; ewin->state.maximized_horz = ewin->state.maximized_vert = 0; - MaxSizeHV(ewin, "absolute", hor, ver); + MaxSizeHV(ewin, "absolute", hor, ver, SLIDE_FOCUS | SLIDE_SOUND); /* Set old state to current maximized one */ ewin->save_max.x = EoGetX(ewin); ewin->save_max.y = EoGetY(ewin); diff --git a/src/ewins.h b/src/ewins.h index 628da6f5..e96258a4 100644 --- a/src/ewins.h +++ b/src/ewins.h @@ -1,6 +1,6 @@ /* * Copyright (C) 2000-2007 Carsten Haitzler, Geoff Harrison and various contributors - * Copyright (C) 2004-2020 Kim Woelders + * Copyright (C) 2004-2021 Kim Woelders * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to @@ -483,7 +483,7 @@ void MoveResizeEnd(EWin * ewin); /* size.c */ void MaxSizeHV(EWin * ewin, const char *resize_type, - int hor, int ver); + int hor, int ver, int flags); /* stacking.c */ EWin *const *EwinListStackGet(int *num); diff --git a/src/ewmh.c b/src/ewmh.c index 1dfea857..f407d283 100644 --- a/src/ewmh.c +++ b/src/ewmh.c @@ -979,7 +979,7 @@ EWMH_ProcessClientClientMessage(EWin * ewin, XClientMessageEvent * ev) maxv = ewin->state.maximized_vert != maxv; if (maxh || maxv) { - MaxSizeHV(ewin, "available", maxh, maxv); + MaxSizeHV(ewin, "available", maxh, maxv, 0); EWMH_SetWindowState(ewin); } } diff --git a/src/ipc.c b/src/ipc.c index ea5c3ad6..029bf558 100644 --- a/src/ipc.c +++ b/src/ipc.c @@ -650,15 +650,15 @@ IpcWinop(const WinOp * wop, EWin * ewin, const char *prm) break; case EWIN_OP_MAX_WIDTH: - MaxSizeHV(ewin, param1, 1, 0); + MaxSizeHV(ewin, param1, 1, 0, 0); break; case EWIN_OP_MAX_HEIGHT: - MaxSizeHV(ewin, param1, 0, 1); + MaxSizeHV(ewin, param1, 0, 1, 0); break; case EWIN_OP_MAX_SIZE: - MaxSizeHV(ewin, param1, 1, 1); + MaxSizeHV(ewin, param1, 1, 1, 0); break; case EWIN_OP_FULLSCREEN: diff --git a/src/size.c b/src/size.c index dd180055..bca0f00e 100644 --- a/src/size.c +++ b/src/size.c @@ -1,6 +1,6 @@ /* * Copyright (C) 2000-2007 Carsten Haitzler, Geoff Harrison and various contributors - * Copyright (C) 2003-2012 Kim Woelders + * Copyright (C) 2003-2021 Kim Woelders * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to @@ -814,7 +814,7 @@ pareto_maximizer(EWin * ewin, int type, EWin * const *lst, int num, #endif /* ENABLE_SMART_MAXIMISE */ void -MaxSizeHV(EWin * ewin, const char *resize_type, int hor, int ver) +MaxSizeHV(EWin * ewin, const char *resize_type, int hor, int ver, int flags) { int x, y, w, h, x1, x2, y1, y2, type, bl, br, bt, bb; EWin *const *lst; @@ -1038,7 +1038,7 @@ MaxSizeHV(EWin * ewin, const char *resize_type, int hor, int ver) do_resize: speed = Conf.movres.maximize_animate ? Conf.movres.maximize_speed : 0; - EwinSlideSizeTo(ewin, x, y, w, h, speed, 0, SLIDE_WARP); + EwinSlideSizeTo(ewin, x, y, w, h, speed, 0, flags | SLIDE_WARP); HintsSetWindowState(ewin); } --