When minimizing the last/only focusable view, its "activated" state is
set to false, and server->focused_view is cleared, but at the wlroots
level the focused surface is not cleared (seat_focus_surface() is not
called).
When attempting to unminimize, desktop_focus_and_activate_view() sees
that view->surface is still focused, and returns without setting the
activated state of the view; server->focused_view also remains NULL.
To try and keep everything in sync better, replace view_set_activated()
with view_set_focused(), which allows setting or clearing both the focus
and the activated state of the view. Then use the new function in both
view_minimize() and desktop_focus_and_activate_view().