getPanCorrection function
Calculates the offset needed to move rect inside safeArea.
Implementation
@pragma('vm:prefer-inline')
Offset getPanCorrection(Rect rect, Rect safeArea) {
double ox = 0, oy = 0;
if (rect.left < safeArea.left) {
ox = safeArea.left - rect.left;
} else if (rect.right > safeArea.right) {
ox = safeArea.right - rect.right;
}
if (rect.top < safeArea.top) {
oy = safeArea.top - rect.top;
} else if (rect.bottom > safeArea.bottom) {
oy = safeArea.bottom - rect.bottom;
}
return Offset(ox, oy);
}