globalDestinationRect static method

Rect globalDestinationRect(
  1. DeviceInfo device,
  2. Orientation orientation
)

Implementation

static Rect globalDestinationRect(
  DeviceInfo device,
  Orientation orientation,
) {
  final outputPadding = EdgeInsets.only(
            left: ui.window.padding.left,
            right: ui.window.padding.right,
            top: ui.window.padding.top,
            bottom: ui.window.padding.bottom,
          ) /
          ui.window.devicePixelRatio +
      const EdgeInsets.all(10);
  final output = Size(
    (ui.window.physicalSize.width / ui.window.devicePixelRatio) -
        outputPadding.horizontal,
    (ui.window.physicalSize.height / ui.window.devicePixelRatio) -
        outputPadding.vertical,
  );
  final frameSize = device.frameSizeOn(orientation);
  final sizes = applyBoxFit(BoxFit.contain, frameSize, output);
  return Alignment.center.inscribe(
    sizes.destination,
    Offset(
          outputPadding.left,
          outputPadding.top,
        ) &
        output,
  );
}