aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKalyan Sriram <coder.kalyan@gmail.com>2020-05-28 22:32:03 -0700
committerSimon Ser <contact@emersion.fr>2020-05-29 08:43:32 +0200
commit8ab4d9138054c6e4b003c9a89db65aae29a28bdb (patch)
treeecf1764978f8560c38d3de7666e886880a2575e1
parent1a23c1425ff1ee29e3704f6c0ac940b274061cca (diff)
downloadwlroots-8ab4d9138054c6e4b003c9a89db65aae29a28bdb.tar.xz
Don't send redundant capability updates
-rw-r--r--types/seat/wlr_seat.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/types/seat/wlr_seat.c b/types/seat/wlr_seat.c
index 33db5101..9395a5b1 100644
--- a/types/seat/wlr_seat.c
+++ b/types/seat/wlr_seat.c
@@ -310,6 +310,11 @@ struct wlr_seat_client *wlr_seat_client_for_wl_client(struct wlr_seat *wlr_seat,
void wlr_seat_set_capabilities(struct wlr_seat *wlr_seat,
uint32_t capabilities) {
+ // if the capabilities haven't changed (i.e a redundant mouse was removed),
+ // we don't actually have to do anything
+ if (capabilities == wlr_seat->capabilities) {
+ return;
+ }
wlr_seat->capabilities = capabilities;
wlr_seat->accumulated_capabilities |= capabilities;