getOptimizedCanvasSize static method

Size getOptimizedCanvasSize(
  1. Size requestedSize
)

Get optimized canvas size for mobile web

Implementation

static Size getOptimizedCanvasSize(Size requestedSize) {
  if (!isMobileWeb) return requestedSize;

  // Limit canvas size on mobile for better performance
  const double maxMobileCanvasSize = 800.0;

  if (requestedSize.width > maxMobileCanvasSize ||
      requestedSize.height > maxMobileCanvasSize) {
    final double scale = maxMobileCanvasSize /
      (requestedSize.width > requestedSize.height ? requestedSize.width : requestedSize.height);

    return Size(
      requestedSize.width * scale,
      requestedSize.height * scale,
    );
  }

  return requestedSize;
}