[UnigramDev/Unigram/develop](https://github.com/UnigramDev/Unigram/tree/develop) • [ba5dbcb](https://github.com/UnigramDev/Unigram/commit/ba5dbcbf7a68310001fd27a1a73f9c5aedcb0c4b) • _13 files, +1220/-43_
Animate deleted messages coming apart

A frozen visual surface captures at the compositor commit that follows the
freeze, so the view's mirror holds a removal back for one frame to give it one.
The view model applies updateDeleteMessages unchanged.

IsInitial becomes AnimationState, which is also how the view tells a deletion
from a row leaving the list for any other reason. The renderer is a diagnostics
setting, off by default in the Store build.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

[UnigramDev/Unigram/develop](https://github.com/UnigramDev/Unigram/tree/develop) • [c290b37](https://github.com/UnigramDev/Unigram/commit/c290b3704f47a1f55ab5137ef164dbdd6b6ca11d) • _1 files, +8/-1_
Try to fix null ref

[UnigramDev/Unigram/develop](https://github.com/UnigramDev/Unigram/tree/develop) • [24927ab](https://github.com/UnigramDev/Unigram/commit/24927abb0e5d4fed05d63ada04255d16af852918) • _1 files, +73/-9_
Park focus asynchronously when swapping window content

Control.Focus answers before the focus pipeline has run, and reports success
even when a LosingFocus handler cancels the move underneath it. Focus stayed
on the passcode field, which was then detached with it, leaving the focus
manager pointing at an element XAML can no longer resolve a peer for.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

[#unigram](?q=%23unigram)