Settling on a different-aspect neighbor (e.g. landscape → portrait) stretched: vimg kept the OLD image's width/height styles while showing the new thumbnail, so the new pixels rendered in the old box until full-res landed and fitViewer() reset the dimensions — a visible vertical stretch then snap-back. At the commit swap, adopt the incoming image's dimensions from the drag preview (nav already knows w/h/scale from its loaded thumb): base/vScale/width/height/transform are all set consistently in the same task as the src swap, so the first settled frame is correct. Fallback: if the preview never loaded (keyboard nav / slow thumb), use the plain openViewer path where the thumb round-trip sets the dimensions before first paint. Verified on the emulator with a 4:3 landscape + 3:4 portrait pair: settled content box 1439x1921 (0.749 = exact 3:4) from the first settled frame, unchanged after the full-res swap. |
||
|---|---|---|
| .. | ||
| egtest | ||
| gtauri | ||
| ttimg | ||
| tttest | ||