diff --git a/Photo.cs b/Photo.cs index f2710b1..1d81e44 100644 --- a/Photo.cs +++ b/Photo.cs @@ -52,8 +52,7 @@ public class Photo { // edit the image due to rotation (etc) and don't want to try generating // a texture for it until that's already happened. LastTouch = touchCounter++; - // TODO: if we zoom in to more than the display size, actually load the whole image? - // TODO: now cropping is fucky. + // FIXME: if we zoom in to more than the display size, actually load the whole image? DecoderOptions options = new DecoderOptions { TargetSize = new Size(size.X, size.Y), SkipMetadata = true diff --git a/Program.cs b/Program.cs index 84e380e..fda649c 100644 --- a/Program.cs +++ b/Program.cs @@ -276,9 +276,6 @@ public static class Util { if (orientation <= 1) { return; } - // FIXME: I'm not convinced that all of these are correct, especially the - // cases that involve flipping (because whether you're flipping before or - // after rotation matters.) var operations = new Dictionary { { 2, (RotateMode.None, FlipMode.Horizontal) }, { 3, (RotateMode.Rotate180, FlipMode.None) }, @@ -688,8 +685,6 @@ public class Game : GameWindow { if (earliest != null) { Console.WriteLine($"loadedImages.Count: {loadedImages.Count}, " + $"evicting {earliest.Filename} @ {earliestTime}"); - // TODO: we have to free textures on the GL thread, but could we do - // that async'ly to keep the UI responsive? earliest.Unload(); loadedImages.Remove(earliest); } @@ -770,6 +765,7 @@ public class Game : GameWindow { Texture active = activePhoto.Texture(); // FIXME: make a function for scaling & centering one box on another. + // FIXME: cropping is fucky because activeScale is using the texture size, not the photo size. float scaleX = 1f * geometry.PhotoBox.Size.X / active.Size.X; float scaleY = 1f * geometry.PhotoBox.Size.Y / active.Size.Y; float scale = Math.Min(scaleX, scaleY);