fix(desktop): Drop the notification stack's redraw when it has nothing to draw
Every reload of the shell's configuration, as a browser color scheme
change writes, invalidates the notification stack, which marks it for
drawing. With no card on screen the stack's surface is empty, so
render_notifications returned before the drawing that clears the mark,
and next_deadline kept reporting the stack due at once: the main loop
polled with a zero timeout and held a core until the next notification.
render_notifications now drops the pending redraw when the stack is
empty or its surface is not configured; the surface's configure marks
it again.