From 6700799b6c18d386ae6c01dca0fe12b5d2ad5cb4 Mon Sep 17 00:00:00 2001 From: Simon Cropp Date: Wed, 23 Sep 2026 20:19:22 +1000 Subject: [PATCH] Paint Windows image panes from a cached composite, and decode off the UI thread - The checkerboard and the scaled picture are composed once per picture and size (ImageCache.Composite) and copied on every paint after. Scaling a pair of 2000 by 1500 pictures and drawing the checkerboard under them on every paint cost 46 to 66 ms a paint, on every wheel notch and resize; the copy costs about 1 ms. Composing costs about 50 ms, once. - The window decodes on the pool and paints the picture when the decode is handed back through BeginInvoke. It started when the screen arrives, and a decode that finishes for a picture no longer on screen is dropped. The pair above took 77 to 102 ms to decode on the UI thread. A capture still decodes synchronously (LoadPictures), having no later paint to wait for. - Footer buttons are sized to their current label (GrowAndShrink, with the default 75 by 23 as the minimum). The pool relabels them as the screen changes, and at GrowOnly each button kept the width of the longest label it had ever held, so the pixel baselines recorded the order the tests happened to run in: adding any test to FormsHeadTests failed InlineAccepted and Minimal. Six Windows baselines are re-approved; only the footers changed, and they now come out byte identical in either order. --- .../FormsHeadTests.cs | 54 +++++ .../ImageCacheTests.cs | 67 ++++++ ...lTests.GroupedConflictedQueue.verified.png | Bin 26482 -> 26413 bytes ...dowsPixelTests.InlineAccepted.verified.png | Bin 18301 -> 18227 bytes ...WindowsPixelTests.InlineQueue.verified.png | Bin 22972 -> 22896 bytes ...indowsPixelTests.InlineSingle.verified.png | Bin 21007 -> 20930 bytes ...dowsPixelTests.LongQueueLabel.verified.png | Bin 24191 -> 24115 bytes .../WindowsPixelTests.Minimal.verified.png | Bin 35910 -> 35893 bytes .../FormsViewerWindow.cs | 1 + src/DiffEngineViewer.Windows/ImageCache.cs | 210 +++++++++++++++--- src/DiffEngineViewer.Windows/ViewerCanvas.cs | 81 ++++++- src/DiffEngineViewer.Windows/ViewerForm.cs | 14 ++ todo.md | 1 - 13 files changed, 395 insertions(+), 33 deletions(-) diff --git a/src/DiffEngineViewer.Windows.Tests/FormsHeadTests.cs b/src/DiffEngineViewer.Windows.Tests/FormsHeadTests.cs index 80068532..0c35a84b 100644 --- a/src/DiffEngineViewer.Windows.Tests/FormsHeadTests.cs +++ b/src/DiffEngineViewer.Windows.Tests/FormsHeadTests.cs @@ -119,6 +119,57 @@ public async Task EveryPictureEverDrawnStaysDecoded() await Assert.That(count).IsLessThanOrEqualTo(2); } + /// + /// Through the real canvas: a pair of pictures painted twice at one size is composed once, and + /// the second paint copies it. Both paints show the pictures. + /// + [Test] + public async Task RepaintingAPictureComposesItOnce() + { + using var host = new CanvasHost(); + var screen = ScreenBuilder.Build(ViewerSession.Resize(Fixtures.Images(), columns, rows)); + host.Canvas.Draw(screen); + host.Canvas.LoadPictures(); + + var first = host.Draw(screen); + var second = host.Draw(screen); + + await Assert.That(host.Canvas.Composed()).IsEqualTo(2); + // The left picture's colour, which only a drawn picture puts on the canvas + var red = Bounds(second, _ => _.R == 198 && _.G == 64 && _.B == 64); + await Assert.That(red).IsNotNull(); + await Assert.That(Bounds(first, _ => _.R == 198 && _.G == 64 && _.B == 64)).IsEqualTo(red); + } + + /// + /// The footer's buttons are pooled and relabelled as the screen changes, and each is sized to + /// the label it has now. At WinForms' default, GrowOnly, a button stayed as wide as the longest + /// label it had ever held, so the footer was the history of the session - and the pixel + /// baselines the history of the test run, which moved whenever a test was added. + /// + [Test] + public async Task AFooterButtonIsSizedToItsCurrentLabel() + { + using var host = new FormHost(Fixtures.File(Fixtures.Long(true), Fixtures.Long(false))); + host.Frame(); + var button = FooterButtons(host.Form)[4]; + var before = (button.Text, button.Width); + + host.Form.Apply(ScreenBuilder.Build(ViewerSession.Apply(host.State, CommandKind.ToggleMinimal))); + var after = (button.Text, button.Width); + + Console.WriteLine($"{before} then {after}"); + await Assert.That(before.Text).IsEqualTo("Changes only"); + await Assert.That(after.Text).IsEqualTo("All lines"); + await Assert.That(after.Width).IsLessThan(before.Width); + await Assert.That(after.Width).IsGreaterThanOrEqualTo(button.MinimumSize.Width); + } + + static List FooterButtons(ViewerForm form) => + ((IList) typeof(ViewerForm).GetField("pool", BindingFlags.Instance | BindingFlags.NonPublic)!.GetValue(form)!) + .Cast() + .ToList(); + /// /// The default 1100 by 700 window at the common scales, through the canvas's own layout /// code with the cell MonoFont measures at that scale and the chrome the form takes there: the @@ -918,6 +969,9 @@ public static int BodyTop(this ViewerCanvas canvas) => public static (int Left, int Half, int Width) Panes(this ViewerCanvas canvas) => ((int, int, int)) typeof(ViewerCanvas).GetMethod("Panes", flags)!.Invoke(canvas, null)!; + public static int Composed(this ViewerCanvas canvas) => + ((ImageCache) typeof(ViewerCanvas).GetField("images", flags)!.GetValue(canvas)!).Composed; + public static (int Count, long Bytes) CachedImages(this ViewerCanvas canvas) { var cache = typeof(ViewerCanvas).GetField("images", flags)!.GetValue(canvas)!; diff --git a/src/DiffEngineViewer.Windows.Tests/ImageCacheTests.cs b/src/DiffEngineViewer.Windows.Tests/ImageCacheTests.cs index 843177f6..b8f28c72 100644 --- a/src/DiffEngineViewer.Windows.Tests/ImageCacheTests.cs +++ b/src/DiffEngineViewer.Windows.Tests/ImageCacheTests.cs @@ -1,3 +1,5 @@ +using System.Collections.Concurrent; + /// /// The decode the WinForms head puts under an image pane's rows. /// @@ -68,6 +70,71 @@ public async Task RemembersAFailure() await Assert.That(cache.Get(path, null)).IsNull(); } + /// + /// The window's decode runs on the pool and comes back through the post the window gives the + /// cache, which is BeginInvoke there and a queue here. Until it does, the pane has no picture + /// and the window is free to paint its rows. + /// + [Test] + public async Task ADecodeWithSomewhereToPostItIsHandedBack() + { + var path = Write("posted.png", SamplePng.Build(8, 6, 200, 40, 40)); + using var posted = new BlockingCollection(); + using var cache = new ImageCache(posted.Add); + var loaded = 0; + + await Assert.That(cache.Get(path, null, () => loaded++)).IsNull(); + await Assert.That(posted.TryTake(out var handBack, TimeSpan.FromSeconds(10))).IsTrue(); + handBack!(); + + await Assert.That(loaded).IsEqualTo(1); + await Assert.That(cache.Get(path, null, () => loaded++)!.Width).IsEqualTo(8); + } + + /// + /// A decode that finishes after its picture left the screen is thrown away rather than cached, + /// or navigating quickly through a queue of pictures would hold every one of them. + /// + [Test] + public async Task ADecodeForAPictureNoLongerOnScreenIsDropped() + { + var path = Write("left-behind.png", SamplePng.Build(8, 6, 200, 40, 40)); + using var posted = new BlockingCollection(); + using var cache = new ImageCache(posted.Add); + var loaded = 0; + cache.Keep([path]); + + cache.Get(path, null, () => loaded++); + await Assert.That(posted.TryTake(out var handBack, TimeSpan.FromSeconds(10))).IsTrue(); + cache.Keep([]); + handBack!(); + + await Assert.That(loaded).IsEqualTo(0); + await Assert.That(cache.Composite(path, new(8, 6), (_, size) => new(size.Width, size.Height))).IsNull(); + } + + /// + /// A pane paints the picture over its checkerboard, scaled, once per size, and copies that on + /// every paint after. Scaling it on every paint cost 46 to 66 ms a paint for a pair of 2000 by + /// 1500 pictures, on every wheel notch. + /// + [Test] + public async Task APictureIsComposedOncePerSize() + { + var path = Write("composed.png", SamplePng.Build(8, 6, 200, 40, 40)); + using var cache = new ImageCache(); + await Assert.That(cache.Get(path, null)).IsNotNull(); + Func build = (_, size) => new(size.Width, size.Height); + + var first = cache.Composite(path, new(4, 3), build); + var again = cache.Composite(path, new(4, 3), build); + var resized = cache.Composite(path, new(6, 4), build); + + await Assert.That(ReferenceEquals(first, again)).IsTrue(); + await Assert.That(resized!.Size).IsEqualTo(new Size(6, 4)); + await Assert.That(cache.Composed).IsEqualTo(2); + } + [Test] public async Task MissingFile() { diff --git a/src/DiffEngineViewer.Windows.Tests/WindowsPixelTests.GroupedConflictedQueue.verified.png b/src/DiffEngineViewer.Windows.Tests/WindowsPixelTests.GroupedConflictedQueue.verified.png index c7719a242cd63aa4a797a5a8a498a4fb93124db4..5d70f45f58c6298589f25fc601d145a8df6805fb 100644 GIT binary patch literal 26413 zcmeFZd03Oz);EkIQWe1-M`W~Bs1u`zjM37n2!euw$Pg@31tJ16lSFEjdQhUE1Z0wm zVuX-FOc;}(R00GDG9-oo5d$KG5T+!MkmTKf?K$Upujl)o>-*m8{Y$S)O(41NwfA0o zt>5~s-@b33aXGPZ{m%7DN=h3YPyXPhq_oCaNojTcS8Ksfgbw?1z<;Zv-A;V3RNkRI z2Hva*Id=M(l2Qd~!{Q|s@P6IZlU~tEO6rYEe^*f>o(C!^1;2Lu;n=x&KmI^OS_~_} z@MChCY5baP>)&o7sQupiX9hOw_MZJZm#E#3j)V%26fl0s2x{3qtDkv9`EpNIs{fu_ zj%KUgd^Oi}Z1*Mu;|IU3TeGFPekQHq(}wx;%_YyTGP}jyr3iw^O4>syalw}6roF(6 z?2~YK9!6RwD%hyY;=uXH&8s&reZjG1ifgdO0K9C-%ow7c{tC>8(sjc#19MmXRhV z3r&{f$Tx}X>3_AaMyU`#*$`9j{%F-_%R7|Bpl3`ZhV*j+4yhZud z%OyN!A8KKq3PDUS(2??+uJCbpCc}|X*asyR=1#|;>}T$ye7wcw!_yrjseur&$P(Q8 z$d2sA#Zd?)UOW(I?8+##ONw2nCW~fF^)W$^`Bxf~7A6=N12GxEHg>*Ndi(_!uJIl+uR42&DO9_3bAqEjwK57e3~qVR$cfZ^Om7G0a+nt-qf8 zE`u5qTOT&C{#le3n4(gQ{*z!t@+SwqT4FeE{jqeFT?APl9rLO!z|%Zcp!E#I=90PPA?`J?+HygAgY)<>C5y@Q@vs+FpnUzJy3hqZTt5$~R>+09GBnFM zi=6zlM_f}#s-<|NUulmEo=eTy$1$vLgpY!$Py3oQ?FKw}qqR$BG<&Jm)Q8-=)_Il_ z;p-Cpok@$6V{nRNmAE#>46@;B=de)d4u(AM6h{>mh=RU%hrLLs($3N9|$F&JAzlYFDW!S30+DgCt_oKB*%9)Y? z(Zrt=}9{T`}br8;+~17}N{`lawxV6ce{RSdT74$tq50RJBt z4%#D(SJO^pdtY+4*^+(7(k1`q=A`!Eo6o)JBS4?>z!+1^?AYJg*VsY8;XaW zANIKtJe$w1`ZF9tU7h*J%Z)y!c|hmq;l$L5bAAGFQ!{4lKER3`LsUGvd zUA6V0`SmrI=`XWY^kpp;+)6))l#Om|3oe|f8RISajV1iF&ZFVj(n37#@siUJw;pd> z8Wbk!r~VNCE);e1;&>cP5Y%RZA@@*~#9aGZC37S1PD4+4Q(?H=rS-aI2>iC2iOAy# zYw-<%qKem=Kh2fAnIl{8&Q|$WxJV8;sma8MrUP#Bq-y%DMGdy0xJg z(p2+HHsbW@>tOB5ey%V28JP!zOrH5^TY6jHslw|_s!S9s39KhFVF|NceujecdkQD5oT_ z)Rj~?=xI-Z`DSFYF~Td|9QWYt;inKhEjFF60kXtiE#=If6vvzT2^scbv>?q}cTyb3 zW5%WR3A{4cg!sUP_>%-h-6tpCTkh=Vn)=@6_TxJ~RvhU)Ey*1^Q5)mGl$)+zFtBz4@c;J3zwIdYRx!|%zM~qEr|(AiOn=Oc z@beasd&t33=~6CZp(T%Kep%zAu1HCD8a?@=xpCjjJA!pNsY3%Xbt5f~0~ept`lA4S zmPrhq@EaH{R4k4%v+N#>JCJT6khNpe(qWJ@e?QI?*VOxQ9Tdq*ldUkGT|-Ul)VBls zOfZ>>ox2(9;2OL4Z<(J)As6*;G_Bu!iYQhhkv~?Vi_+=gCi%x4b*e5#sGS(!!3--C zvGjE=G}4}jd0WJyUc{X59=98^R~<@CcN7+hptvFi1}B{F5toc3`J*g+2zp$ad|Kz9 zkRGYtALR&0vxr@Nnxwjf3yN*lIX8K2wm4Hptl}V~eUdm>X|=cwO*Ps7B)zfVk0)95 zwL^R ziHm8ra?F0O>hn5NBXUX)sjFfTGRX6;tHyY)nO z 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 Rl?bQ<>FMg{vd$@?2>{u_q?!N# literal 26482 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 diff --git a/src/DiffEngineViewer.Windows.Tests/WindowsPixelTests.InlineAccepted.verified.png b/src/DiffEngineViewer.Windows.Tests/WindowsPixelTests.InlineAccepted.verified.png index 488850f9d07e1bc858e5f4c582c1ca050bf92201..93cc6daf139a45de207d53afde101b13d885d45b 100644 GIT binary patch delta 9507 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 t`1a7EkKIf5|3)T3kA7`!a%dh>cwR6w+weM^1 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 diff --git a/src/DiffEngineViewer.Windows.Tests/WindowsPixelTests.InlineQueue.verified.png b/src/DiffEngineViewer.Windows.Tests/WindowsPixelTests.InlineQueue.verified.png index a9aaff11bcf5c8a8dfeb24136d6a46c922c4e75e..5dec36bc7ad019b8570b4ccbe813e2b79300a4ca 100644 GIT binary patch literal 22896 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 z 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 L{%!S%kemM(G;U;f diff --git a/src/DiffEngineViewer.Windows.Tests/WindowsPixelTests.InlineSingle.verified.png b/src/DiffEngineViewer.Windows.Tests/WindowsPixelTests.InlineSingle.verified.png index 8bf1cdac458b421c78691e2810584fd13a339c86..cb2555374caf39829ed5e90032de33df36a79154 100644 GIT binary patch literal 20930 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 e#DD*d2J4*}A=ZHPKGofj>1Gj literal 24191 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 XIdu=7ANgJTSg-H=zODHt{D=PsqJRlo diff --git a/src/DiffEngineViewer.Windows.Tests/WindowsPixelTests.Minimal.verified.png b/src/DiffEngineViewer.Windows.Tests/WindowsPixelTests.Minimal.verified.png index 1f4642f2ffa48144109bc388fec56b9ec342a34a..5b5baac73f585b709d7ddeb3c586fdd4b7373679 100644 GIT binary patch literal 35893 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 Nw%uDZHXr`&{{XFJ6tMsR literal 35910 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 z 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 /// -/// A cache and not a convenience: OnPaint runs on every wheel notch and every resize, and -/// decoding a picture per frame is what turns a window that is merely showing something into one -/// that is busy. +/// A cache and not a convenience: OnPaint runs on every wheel notch and every resize. Two +/// things are held for that. The decoded picture, which is decoded off the UI thread when there is +/// somewhere to post the result (), because decoding a +/// pair of 2000 by 1500 pictures held the window for over 100 ms. And the picture as painted, at +/// the size it was painted (): scaling it and drawing the checkerboard under +/// it on every paint cost 46 to 66 ms a paint for that pair, where copying the result costs +/// almost nothing. +/// +/// +/// Everything here is touched only from the UI thread. A background decode hands its result back +/// through post, which is the canvas's BeginInvoke. /// ///

-sealed class ImageCache : IDisposable +sealed class ImageCache(Action? post = null) : IDisposable { readonly Dictionary entries = new(StringComparer.OrdinalIgnoreCase); + /// + /// Decodes started and not yet handed back, by path, with the stamp each was started for. + /// + readonly Dictionary pending = new(StringComparer.OrdinalIgnoreCase); + + /// + /// The paths the last named. A decode that finishes for a path no longer on + /// screen is thrown away rather than cached. Null until the first Keep, which takes everything. + /// + HashSet? wanted; + + bool disposed; + + record struct Stamp(long WriteTicksUtc, long Length, string? Hash); + /// /// A null is a remembered failure. Kept rather than dropped, so a file /// this machine cannot decode is attempted once instead of once per frame. /// - record Entry(long WriteTicksUtc, long Length, string? Hash, Image? Image); + sealed record Entry(Stamp Stamp, Image? Image) + { + /// + /// The picture as last painted, at the size it was painted: see . + /// + public Bitmap? Composite { get; set; } + + public void Dispose() + { + Image?.Dispose(); + Composite?.Dispose(); + } + } /// /// Drops every picture not at one of , which is what is on screen. /// public void Keep(IReadOnlyCollection paths) { - foreach (var path in entries.Keys.Where(_ => !paths.Contains(_, StringComparer.OrdinalIgnoreCase)).ToList()) + wanted = new(paths, StringComparer.OrdinalIgnoreCase); + foreach (var path in entries.Keys.Where(_ => !wanted.Contains(_)).ToList()) { Forget(path); } } + /// + /// The picture at , decoded here and now if it is not cached. For a + /// caller that has to have it this frame, such as a capture. + /// public Image? Get(string path, string? hash) { - long ticks; - long length; + if (!TryStamp(path, hash, out var stamp)) + { + return null; + } + + if (TryCached(path, stamp, out var cached)) + { + return cached; + } + + var image = Load(path); + // Supersedes a background decode of the same file, whose result would only replace this + pending.Remove(path); + entries.Add(path, new(stamp, image)); + return image; + } + + /// + /// The picture at if it is decoded, and otherwise null while it is + /// decoded on the pool, after which is called on the UI thread. With + /// nowhere to post the result this decodes here and now, as + /// does. + /// + public Image? Get(string path, string? hash, Action loaded) + { + if (post is null) + { + return Get(path, hash); + } + + if (!TryStamp(path, hash, out var stamp)) + { + return null; + } + + if (TryCached(path, stamp, out var cached)) + { + return cached; + } + + if (pending.TryGetValue(path, out var started) && + started == stamp) + { + return null; + } + + pending[path] = stamp; + Task.Run(() => Load(path)) + .ContinueWith( + task => + { + var image = task.Result; + try + { + post(() => Loaded(path, stamp, image, loaded)); + } + catch (InvalidOperationException) + { + // The window went away before the decode finished, and with it the thread + // this would have been handed to + image?.Dispose(); + } + }, + CancellationToken.None, + TaskContinuationOptions.ExecuteSynchronously, + TaskScheduler.Default); + return null; + } + + void Loaded(string path, Stamp stamp, Image? image, Action loaded) + { + // Only the decode the path is still waiting on. An older one, for a stamp the file has + // since moved past, would put back the picture the newer decode is replacing + if (disposed || + !pending.TryGetValue(path, out var started) || + started != stamp || + (wanted is not null && !wanted.Contains(path))) + { + image?.Dispose(); + return; + } + + pending.Remove(path); + Forget(path); + entries.Add(path, new(stamp, image)); + loaded(); + } + + /// + /// The picture at as it is painted at , built + /// by from the decoded picture the first time that size is asked for + /// and kept until another size is, or the picture goes. Null when the picture is not decoded. + /// + public Bitmap? Composite(string path, Size size, Func build) + { + if (!entries.TryGetValue(path, out var entry) || + entry.Image is null) + { + return null; + } + + if (entry.Composite is { } composite && + composite.Size == size) + { + return composite; + } + + entry.Composite?.Dispose(); + entry.Composite = build(entry.Image, size); + Composed++; + return entry.Composite; + } + + /// + /// How many composites have been built, for the tests that pin how often that happens. + /// + internal int Composed { get; private set; } + + bool TryStamp(string path, string? hash, out Stamp stamp) + { try { var info = new FileInfo(path); - if (!info.Exists) + if (info.Exists) { - Forget(path); - return null; + stamp = new(info.LastWriteTimeUtc.Ticks, info.Length, hash); + return true; } - - ticks = info.LastWriteTimeUtc.Ticks; - length = info.Length; } catch { // A file that cannot be stat'd cannot be drawn, and the rows have already said what // the model made of it. - Forget(path); - return null; } + Forget(path); + stamp = default; + return false; + } + + bool TryCached(string path, Stamp stamp, out Image? image) + { if (entries.TryGetValue(path, out var entry)) { - if (entry.WriteTicksUtc == ticks && - entry.Length == length && - entry.Hash == hash) + if (entry.Stamp == stamp) { - return entry.Image; + image = entry.Image; + return true; } Forget(path); } - var image = Load(path); - entries.Add(path, new(ticks, length, hash, image)); - return image; + image = null; + return false; } static Image? Load(string path) @@ -98,17 +256,19 @@ void Forget(string path) { if (entries.Remove(path, out var entry)) { - entry.Image?.Dispose(); + entry.Dispose(); } } public void Dispose() { + disposed = true; foreach (var entry in entries.Values) { - entry.Image?.Dispose(); + entry.Dispose(); } entries.Clear(); + pending.Clear(); } } diff --git a/src/DiffEngineViewer.Windows/ViewerCanvas.cs b/src/DiffEngineViewer.Windows/ViewerCanvas.cs index e4a4d307..bfdf0c12 100644 --- a/src/DiffEngineViewer.Windows/ViewerCanvas.cs +++ b/src/DiffEngineViewer.Windows/ViewerCanvas.cs @@ -54,7 +54,7 @@ sealed class ViewerCanvas : Control readonly QueueTips tips = new(); - readonly ImageCache images = new(); + readonly ImageCache images; Screen? screen; @@ -105,8 +105,16 @@ public ViewerCanvas() ControlStyles.ResizeRedraw, true); BackColor = Palette.Background; + images = new(Post); } + /// + /// Hands a finished background decode back to this thread. Throws when the handle has gone, + /// which the cache takes as the window having closed under the decode. + /// + void Post(Action action) => + BeginInvoke(action); + public event Action? QueueItemClicked; /// @@ -147,11 +155,48 @@ public void Draw(Screen value) { screen = value; images.Keep(PicturesOn(value)); + // Started now rather than at the first paint, which is at least a pump away. The pane + // draws its rows meanwhile, and the picture under them once it is decoded + foreach (var image in ImagesOn(value)) + { + images.Get(image.Path, image.Hash, Invalidate); + } + // A new screen renumbers the rows, so a kept index would describe a different entry. tips.Forget(this); Invalidate(); } + /// + /// Decodes whatever the current screen shows, here and now. For a capture, which draws one frame + /// and has no later paint for a background decode to arrive in time for. + /// + public void LoadPictures() + { + if (screen is null) + { + return; + } + + foreach (var image in ImagesOn(screen)) + { + images.Get(image.Path, image.Hash); + } + } + + static IEnumerable ImagesOn(Screen screen) + { + if (screen.Left.Image is { } left) + { + yield return left; + } + + if (screen.Right.Image is { } right) + { + yield return right; + } + } + static List PicturesOn(Screen screen) { var paths = new List(2); @@ -387,8 +432,7 @@ void DrawImage(Graphics graphics, Pane pane, int left, int width, int bodyTop, i return; } - var picture = images.Get(image.Path, image.Hash); - if (picture is null) + if (images.Get(image.Path, image.Hash, Invalidate) is null) { return; } @@ -421,13 +465,19 @@ void DrawImage(Graphics graphics, Pane pane, int left, int width, int bodyTop, i drawn.Width, drawn.Height); - DrawChecker(graphics, bounds); + // Copied rather than drawn: the checkerboard and the scaled picture are composed once per + // picture and size, and every paint after that is a copy of the result + var composite = images.Composite(image.Path, drawn, Compose); + if (composite is null) + { + return; + } var interpolation = graphics.InterpolationMode; var offset = graphics.PixelOffsetMode; - graphics.InterpolationMode = InterpolationMode.HighQualityBicubic; - graphics.PixelOffsetMode = PixelOffsetMode.HighQuality; - graphics.DrawImage(picture, bounds); + graphics.InterpolationMode = InterpolationMode.NearestNeighbor; + graphics.PixelOffsetMode = PixelOffsetMode.Half; + graphics.DrawImage(composite, bounds); // Put back, because the text drawing this shares a Graphics with is set up once by Painter // and would otherwise inherit whichever picture was drawn last. graphics.InterpolationMode = interpolation; @@ -438,6 +488,23 @@ void DrawImage(Graphics graphics, Pane pane, int left, int width, int bodyTop, i graphics.DrawRectangle(pen, bounds.X - 1, bounds.Y - 1, bounds.Width + 1, bounds.Height + 1); } + /// + /// The picture as a pane shows it at : over the checkerboard, so an image + /// with transparency reads as one, and scaled with the high quality filter a downscale needs. + /// Premultiplied, which is what the double buffer it is copied into holds. + /// + static Bitmap Compose(Image picture, Size size) + { + var composite = new Bitmap(size.Width, size.Height, PixelFormat.Format32bppPArgb); + using var graphics = Graphics.FromImage(composite); + var bounds = new Rectangle(Point.Empty, size); + DrawChecker(graphics, bounds); + graphics.InterpolationMode = InterpolationMode.HighQualityBicubic; + graphics.PixelOffsetMode = PixelOffsetMode.HighQuality; + graphics.DrawImage(picture, bounds); + return composite; + } + static void DrawChecker(Graphics graphics, Rectangle bounds) { graphics.FillRectangle(Painter.Brush(Palette.CheckerLight), bounds); diff --git a/src/DiffEngineViewer.Windows/ViewerForm.cs b/src/DiffEngineViewer.Windows/ViewerForm.cs index 75343a01..30ca6a81 100644 --- a/src/DiffEngineViewer.Windows/ViewerForm.cs +++ b/src/DiffEngineViewer.Windows/ViewerForm.cs @@ -356,6 +356,12 @@ public void Apply(Screen screen) ApplyMenu(screen); } + /// + /// See . + /// + public void LoadPictures() => + canvas.LoadPictures(); + /// /// The bar follows the model rather than owning the position, so it agrees with the keyboard /// and the wheel. The left pane, because that is the row count the session clamps against. @@ -414,6 +420,14 @@ void ApplyButtons(Screen screen) var button = new FormsButton { AutoSize = true, + // Sized to the label it has now. The pool relabels its buttons as the screen + // changes, and a button's default, GrowOnly, kept each one as wide as the longest + // label it had ever held: the footer's layout was the history of the session, and + // the pixel baselines were the history of the test run. + AutoSizeMode = AutoSizeMode.GrowAndShrink, + // The size a button has by default, which GrowOnly never went under, so a short + // label does not make a button smaller than it always was + MinimumSize = LogicalToDeviceUnits(new Size(75, 23)), Margin = new(0, 0, 6, 0), // Standard rather than System: WinForms draws these itself, including in dark // mode, so their pixels are pinned to the .NET version rather than to whatever diff --git a/todo.md b/todo.md index badf41e6..8bf0a0d7 100644 --- a/todo.md +++ b/todo.md @@ -28,4 +28,3 @@ Native ## Perf - [ ] macOS repaints the whole window every frame (`native/swift/Sources/Deview/Runtime.swift:139-140`). Redraw only when the frame, bounds or a picture stamp change, and cache scaled pictures. -- [ ] Windows image panes rescale from full resolution and redraw the checkerboard on every paint (11 to 40 ms per image), and decode on the UI thread (`ViewerCanvas.cs:385-420`, `ImageCache.cs:56-71`). Cache the composited scaled bitmap per path, stamp and size.