Trim event_mask to those that the root window actually needs.
This commit is contained in:
parent
f91df0c64f
commit
0f6482dcc4
@ -15,7 +15,7 @@
|
|||||||
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
|
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
|
||||||
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||||
*
|
*
|
||||||
* $OpenBSD: screen.c,v 1.95 2020/02/27 14:56:39 okan Exp $
|
* $OpenBSD: screen.c,v 1.96 2020/03/20 15:16:31 okan Exp $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
@ -40,7 +40,7 @@ screen_init(int which)
|
|||||||
{
|
{
|
||||||
struct screen_ctx *sc;
|
struct screen_ctx *sc;
|
||||||
Window active = None;
|
Window active = None;
|
||||||
XSetWindowAttributes rootattr;
|
XSetWindowAttributes attr;
|
||||||
|
|
||||||
sc = xmalloc(sizeof(*sc));
|
sc = xmalloc(sizeof(*sc));
|
||||||
|
|
||||||
@ -69,20 +69,17 @@ screen_init(int which)
|
|||||||
xu_ewmh_net_virtual_roots(sc);
|
xu_ewmh_net_virtual_roots(sc);
|
||||||
active = xu_ewmh_get_net_active_window(sc);
|
active = xu_ewmh_get_net_active_window(sc);
|
||||||
|
|
||||||
rootattr.cursor = Conf.cursor[CF_NORMAL];
|
attr.cursor = Conf.cursor[CF_NORMAL];
|
||||||
rootattr.event_mask = SubstructureRedirectMask |
|
attr.event_mask = SubstructureRedirectMask | SubstructureNotifyMask |
|
||||||
SubstructureNotifyMask | PropertyChangeMask | EnterWindowMask |
|
EnterWindowMask | PropertyChangeMask | ButtonPressMask;
|
||||||
LeaveWindowMask | ColormapChangeMask | BUTTONMASK;
|
XChangeWindowAttributes(X_Dpy, sc->rootwin, (CWEventMask | CWCursor), &attr);
|
||||||
|
|
||||||
XChangeWindowAttributes(X_Dpy, sc->rootwin,
|
|
||||||
(CWEventMask | CWCursor), &rootattr);
|
|
||||||
|
|
||||||
screen_scan(sc, active);
|
|
||||||
screen_updatestackingorder(sc);
|
|
||||||
|
|
||||||
if (Conf.xrandr)
|
if (Conf.xrandr)
|
||||||
XRRSelectInput(X_Dpy, sc->rootwin, RRScreenChangeNotifyMask);
|
XRRSelectInput(X_Dpy, sc->rootwin, RRScreenChangeNotifyMask);
|
||||||
|
|
||||||
|
screen_scan(sc, active);
|
||||||
|
screen_updatestackingorder(sc);
|
||||||
|
|
||||||
TAILQ_INSERT_TAIL(&Screenq, sc, entry);
|
TAILQ_INSERT_TAIL(&Screenq, sc, entry);
|
||||||
|
|
||||||
XSync(X_Dpy, False);
|
XSync(X_Dpy, False);
|
||||||
|
Loading…
Reference in New Issue
Block a user