瀏覽代碼

Fix maximized window resolution #202

Refactor: Simplify work area and border calculations in `ImageSizeCalculationHelper`

- Removed redundant maximized condition from `CalculateWorkArea` logic.
- Adjusted `screenMargin` calculation to account for both fullscreen and maximized states.
- Streamlined parameter usage in `CalculateWorkArea`.
Ruben 2 月之前
父節點
當前提交
fcfe43d73e
共有 1 個文件被更改,包括 4 次插入9 次删除
  1. 4 9
      src/PicView.Core/Sizing/ImageSizeCalculationHelper.cs

+ 4 - 9
src/PicView.Core/Sizing/ImageSizeCalculationHelper.cs

@@ -57,10 +57,10 @@ public static class ImageSizeCalculationHelper
 
         // Calculate the possible surrounding area and borders between the picture and window
         var borderSpaceHeight = CalculateBorderSpaceHeight(isFullscreen, uiTopSize, uiBottomSize, galleryHeight);
-        var borderSpaceWidth = isFullscreen ? 0 : screenSize.Margin;
+        var borderSpaceWidth = isFullscreen  ? 0 : screenSize.Margin;
 
-        var workArea = CalculateWorkArea(screenSize, isFullscreen, borderSpaceWidth, borderSpaceHeight, isMaximized);
-        var screenMargin = isFullscreen ? 0 : screenSize.Margin;
+        var workArea = CalculateWorkArea(screenSize, isFullscreen, borderSpaceWidth, borderSpaceHeight);
+        var screenMargin = isFullscreen || isMaximized ? 0 : screenSize.Margin;
 
         var (maxAvailableWidth, maxAvailableHeight, adjustedContainerWidth, adjustedContainerHeight) =
             CalculateMaxImageSize(scrollEnabled, stretchImage, autoFit,
@@ -97,18 +97,13 @@ public static class ImageSizeCalculationHelper
     }
 
     private static (double width, double height) CalculateWorkArea(ScreenSize screenSize, bool fullscreen,
-        double borderSpaceWidth, double borderSpaceHeight, bool maximized)
+        double borderSpaceWidth, double borderSpaceHeight)
     {
         if (fullscreen)
         {
             return (screenSize.Width, screenSize.Height);
         }
 
-        if (maximized)
-        {
-            return (screenSize.WorkingAreaWidth, screenSize.WorkingAreaHeight);
-        }
-
         return (screenSize.WorkingAreaWidth - borderSpaceWidth,
             screenSize.WorkingAreaHeight - borderSpaceHeight);
     }