Revert "Revert "wayland: Update shadow immediately""
This reverts commit 08e392f3.
It appears like with RHI, user code can't mess with its current opengl context, so let's update shadows immediately.
Just to be sure, shadow cleanup logic in ShadowItem has been hardened to avoid disturbing the current opengl context unnecessarily.