diff --git a/testcases/t/113-urgent.t b/testcases/t/113-urgent.t index 2eb853de..bb913819 100644 --- a/testcases/t/113-urgent.t +++ b/testcases/t/113-urgent.t @@ -24,8 +24,11 @@ my $_NET_WM_STATE_TOGGLE = 2; sub set_urgency { my ($win, $urgent_flag, $type) = @_; if ($type == 1) { + # Because X11::XCB does not keep track of clearing the urgency hint + # when receiving focus, we just delete it in all cases and then re-set + # it if appropriate. + $win->delete_hint('urgency'); $win->add_hint('urgency') if ($urgent_flag); - $win->delete_hint('urgency') if (!$urgent_flag); } elsif ($type == 2) { my $msg = pack "CCSLLLLLL", X11::XCB::CLIENT_MESSAGE, # response_type diff --git a/testcases/t/200-urgency-timer.t b/testcases/t/200-urgency-timer.t index 730a950a..0fb8c8be 100644 --- a/testcases/t/200-urgency-timer.t +++ b/testcases/t/200-urgency-timer.t @@ -85,6 +85,7 @@ my $w2 = open_window; is($x->input_focus, $w2->id, 'window 2 focused'); cmd "workspace $tmp2"; +$w->delete_hint('urgency'); $w->add_hint('urgency'); sync_with_i3;