diff --git a/lib/config/themes.dart b/lib/config/themes.dart index 58b845f62..5e8c638be 100644 --- a/lib/config/themes.dart +++ b/lib/config/themes.dart @@ -18,10 +18,10 @@ abstract class FluffyThemes { width > columnWidth * 2 + navRailWidth; static bool isColumnMode(BuildContext context) => - isColumnModeByWidth(MediaQuery.of(context).size.width); + isColumnModeByWidth(MediaQuery.sizeOf(context).width); static bool isThreeColumnMode(BuildContext context) => - MediaQuery.of(context).size.width > FluffyThemes.columnWidth * 3.5; + MediaQuery.sizeOf(context).width > FluffyThemes.columnWidth * 3.5; static LinearGradient backgroundGradient( BuildContext context, diff --git a/lib/pages/chat/chat_emoji_picker.dart b/lib/pages/chat/chat_emoji_picker.dart index 734d082e4..48e0f15e3 100644 --- a/lib/pages/chat/chat_emoji_picker.dart +++ b/lib/pages/chat/chat_emoji_picker.dart @@ -19,7 +19,7 @@ class ChatEmojiPicker extends StatelessWidget { clipBehavior: Clip.hardEdge, decoration: const BoxDecoration(), height: controller.showEmojiPicker - ? MediaQuery.of(context).size.height / 2 + ? MediaQuery.sizeOf(context).height / 2 : 0, child: controller.showEmojiPicker ? DefaultTabController( diff --git a/lib/pages/chat/events/message.dart b/lib/pages/chat/events/message.dart index 6563fe8f5..ff7a0f942 100644 --- a/lib/pages/chat/events/message.dart +++ b/lib/pages/chat/events/message.dart @@ -630,9 +630,10 @@ class Message extends StatelessWidget { // #Pangea // ignore: noBubble || // !ownMessage || - // MediaQuery.of( + // MediaQuery + // .highContrastOf( // context, - // ).highContrast, + // ), ignore: true, // Pangea# scrollController: diff --git a/lib/pages/dialer/dialer.dart b/lib/pages/dialer/dialer.dart index 9ff54030e..d14d5dfa7 100644 --- a/lib/pages/dialer/dialer.dart +++ b/lib/pages/dialer/dialer.dart @@ -238,18 +238,18 @@ class MyCallingPage extends State { void _resizeLocalVideo(Orientation orientation) { final shortSide = min( - MediaQuery.of(widget.context).size.width, - MediaQuery.of(widget.context).size.height, + MediaQuery.sizeOf(widget.context).width, + MediaQuery.sizeOf(widget.context).height, ); _localVideoMargin = remoteStream != null ? const EdgeInsets.only(top: 20.0, right: 20.0) : EdgeInsets.zero; _localVideoWidth = remoteStream != null ? shortSide / 3 - : MediaQuery.of(widget.context).size.width; + : MediaQuery.sizeOf(widget.context).width; _localVideoHeight = remoteStream != null ? shortSide / 4 - : MediaQuery.of(widget.context).size.height; + : MediaQuery.sizeOf(widget.context).height; } void _handleCallState(CallState state) { diff --git a/lib/pages/dialer/pip/pip_view.dart b/lib/pages/dialer/pip/pip_view.dart index d9aa3d90f..78facfaa0 100644 --- a/lib/pages/dialer/pip/pip_view.dart +++ b/lib/pages/dialer/pip/pip_view.dart @@ -138,10 +138,9 @@ class PIPViewState extends State with TickerProviderStateMixin { @override Widget build(BuildContext context) { - final mediaQuery = MediaQuery.of(context); - var windowPadding = mediaQuery.padding; + var windowPadding = MediaQuery.paddingOf(context); if (widget.avoidKeyboard) { - windowPadding += mediaQuery.viewInsets; + windowPadding += MediaQuery.viewInsetsOf(context); } final isFloating = _floating; diff --git a/lib/pages/image_viewer/image_viewer.dart b/lib/pages/image_viewer/image_viewer.dart index 3527ea68a..3ae3410a1 100644 --- a/lib/pages/image_viewer/image_viewer.dart +++ b/lib/pages/image_viewer/image_viewer.dart @@ -111,7 +111,7 @@ class ImageViewerController extends State { void onInteractionEnds(ScaleEndDetails endDetails) { if (PlatformInfos.usesTouchscreen == false) { if (endDetails.velocity.pixelsPerSecond.dy > - MediaQuery.of(context).size.height * maxScaleFactor) { + MediaQuery.sizeOf(context).height * maxScaleFactor) { Navigator.of(context, rootNavigator: false).pop(); } } diff --git a/lib/pages/image_viewer/video_player.dart b/lib/pages/image_viewer/video_player.dart index b90fcd1f8..99e4c09f3 100644 --- a/lib/pages/image_viewer/video_player.dart +++ b/lib/pages/image_viewer/video_player.dart @@ -150,7 +150,7 @@ class EventVideoPlayerState extends State { final infoMap = widget.event.content.tryGetMap('info'); final videoWidth = infoMap?.tryGet('w') ?? 400; final videoHeight = infoMap?.tryGet('h') ?? 300; - final height = MediaQuery.of(context).size.height - 52; + final height = MediaQuery.sizeOf(context).height - 52; final width = videoWidth * (height / videoHeight); final chewieController = _chewieController; diff --git a/lib/pangea/common/utils/overlay.dart b/lib/pangea/common/utils/overlay.dart index 23bc2ff27..b00186f04 100644 --- a/lib/pangea/common/utils/overlay.dart +++ b/lib/pangea/common/utils/overlay.dart @@ -165,12 +165,12 @@ class OverlayUtil { final halfMaxWidth = maxWidth / 2; final hasLeftOverflow = (horizontalMidpoint - halfMaxWidth) < 10; final hasRightOverflow = (horizontalMidpoint + halfMaxWidth) > - (MediaQuery.of(context).size.width - columnWidth - 10); + (MediaQuery.widthOf(context) - columnWidth - 10); hasTopOverflow = maxHeight + kToolbarHeight > transformTargetOffset.dy; double xOffset = 0; - MediaQuery.of(context).size.width - (horizontalMidpoint + halfMaxWidth); + MediaQuery.widthOf(context) - (horizontalMidpoint + halfMaxWidth); if (hasLeftOverflow) { xOffset = (horizontalMidpoint - halfMaxWidth - 10) * -1; } else if (hasRightOverflow) { diff --git a/lib/pangea/common/widgets/full_width_dialog.dart b/lib/pangea/common/widgets/full_width_dialog.dart index aeaa6d416..62c177098 100644 --- a/lib/pangea/common/widgets/full_width_dialog.dart +++ b/lib/pangea/common/widgets/full_width_dialog.dart @@ -30,8 +30,8 @@ class FullWidthDialog extends StatelessWidget { maxHeight: maxHeight, ) : BoxConstraints( - maxWidth: MediaQuery.of(context).size.width, - maxHeight: MediaQuery.of(context).size.height, + maxWidth: MediaQuery.widthOf(context), + maxHeight: MediaQuery.heightOf(context), ), child: ClipRRect( borderRadius: diff --git a/lib/pangea/learning_settings/p_question_container.dart b/lib/pangea/learning_settings/p_question_container.dart index 95a9b7c20..ff095b7ca 100644 --- a/lib/pangea/learning_settings/p_question_container.dart +++ b/lib/pangea/learning_settings/p_question_container.dart @@ -5,7 +5,7 @@ class PQuestionContainer extends StatelessWidget { const PQuestionContainer({super.key, required this.title}); @override Widget build(BuildContext context) { - final Size size = MediaQuery.of(context).size; + final Size size = MediaQuery.sizeOf(context); return Container( constraints: const BoxConstraints(minWidth: 100, maxWidth: 650), padding: EdgeInsets.all(size.height * 0.01), diff --git a/lib/pangea/subscription/controllers/subscription_controller.dart b/lib/pangea/subscription/controllers/subscription_controller.dart index 69d9c5276..20abf8287 100644 --- a/lib/pangea/subscription/controllers/subscription_controller.dart +++ b/lib/pangea/subscription/controllers/subscription_controller.dart @@ -272,9 +272,8 @@ class SubscriptionController with ChangeNotifier { clipBehavior: Clip.hardEdge, context: context, constraints: BoxConstraints( - maxHeight: PlatformInfos.isMobile - ? MediaQuery.of(context).size.height - 50 - : 600, + maxHeight: + PlatformInfos.isMobile ? MediaQuery.heightOf(context) - 50 : 600, ), builder: (_) { return SubscriptionPaywall( diff --git a/lib/pangea/toolbar/layout/message_selection_positioner.dart b/lib/pangea/toolbar/layout/message_selection_positioner.dart index c4bf54b8c..5d9f2fe16 100644 --- a/lib/pangea/toolbar/layout/message_selection_positioner.dart +++ b/lib/pangea/toolbar/layout/message_selection_positioner.dart @@ -158,9 +158,15 @@ class MessageSelectionPositionerState extends State FluffyThemes.isThreeColumnMode(context) && widget.chatController.room.membership == Membership.join; - MediaQueryData? get mediaQuery => _runWithLogging( - () => MediaQuery.of(context), - "Error getting media query", + Size? get screenSize => _runWithLogging( + () => MediaQuery.sizeOf(context), + "Error getting media query size", + null, + ); + + EdgeInsets? get screenPadding => _runWithLogging( + () => MediaQuery.paddingOf(context), + "Error getting media query padding", null, ); @@ -177,8 +183,8 @@ class MessageSelectionPositionerState extends State messageMargin; double? maxWidth; - if (mediaQuery != null) { - final chatViewWidth = mediaQuery!.size.width - columnWidth; + if (screenSize != null) { + final chatViewWidth = screenSize!.width - columnWidth; maxWidth = chatViewWidth - (2 * _horizontalPadding) - messageMargin; } @@ -278,7 +284,7 @@ class MessageSelectionPositionerState extends State } double? get messageRightOffset { - if (mediaQuery == null || !ownMessage) return null; + if (screenSize == null || !ownMessage) return null; final offset = _originalMessageOffset; if (offset == null) { @@ -286,13 +292,13 @@ class MessageSelectionPositionerState extends State } if (isRtl) { - return mediaQuery!.size.width - + return screenSize!.width - columnWidth - offset.dx - originalMessageSize.width; } - return mediaQuery!.size.width - + return screenSize!.width - offset.dx - originalMessageSize.width - (showDetails ? FluffyThemes.columnWidth : 0); @@ -325,9 +331,9 @@ class MessageSelectionPositionerState extends State double? get _wordCardLeftOffset { if (ownMessage) return null; if (widget.overlayController.selectedToken != null && - mediaQuery != null && - (mediaQuery!.size.width < _toolbarMaxWidth + messageLeftOffset!)) { - return mediaQuery!.size.width - _toolbarMaxWidth - 8.0; + screenSize != null && + (screenSize!.width < _toolbarMaxWidth + messageLeftOffset!)) { + return screenSize!.width - _toolbarMaxWidth - 8.0; } return messageLeftOffset; } @@ -337,10 +343,8 @@ class MessageSelectionPositionerState extends State } double? get _screenHeight { - if (mediaQuery == null) return null; - return mediaQuery!.size.height - - mediaQuery!.padding.bottom - - mediaQuery!.padding.top; + if (screenSize == null || screenPadding == null) return null; + return screenSize!.height - screenPadding!.bottom - screenPadding!.top; } bool get shouldScroll { @@ -373,16 +377,15 @@ class MessageSelectionPositionerState extends State final originalContentHeight = messageHeight + _reactionsHeight + AppConfig.toolbarMenuHeight + 8.0; - final screenHeight = mediaQuery!.size.height - mediaQuery!.padding.bottom; + final screenHeight = screenSize!.height - screenPadding!.bottom; double boxHeight = screenHeight - offset.dy - originalContentHeight; final neededSpace = - boxHeight + _fullContentHeight + mediaQuery!.padding.top + 4.0; + boxHeight + _fullContentHeight + screenPadding!.top + 4.0; if (neededSpace > screenHeight) { - boxHeight = - screenHeight - _fullContentHeight - mediaQuery!.padding.top - 4.0; + boxHeight = screenHeight - _fullContentHeight - screenPadding!.top - 4.0; } return boxHeight; @@ -409,7 +412,7 @@ class MessageSelectionPositionerState extends State @override Widget build(BuildContext context) { - if (_messageRenderBox == null || mediaQuery == null) { + if (_messageRenderBox == null || screenSize == null) { return const SizedBox.shrink(); } @@ -420,7 +423,7 @@ class MessageSelectionPositionerState extends State Column( children: [ SizedBox( - width: mediaQuery!.size.width - + width: screenSize!.width - columnWidth - (showDetails ? FluffyThemes.columnWidth : 0), height: _screenHeight!, diff --git a/lib/pangea/toolbar/layout/over_message_overlay.dart b/lib/pangea/toolbar/layout/over_message_overlay.dart index fd378b002..3e8d0ad23 100644 --- a/lib/pangea/toolbar/layout/over_message_overlay.dart +++ b/lib/pangea/toolbar/layout/over_message_overlay.dart @@ -83,7 +83,7 @@ class OverMessageOverlay extends StatelessWidget { AnimatedContainer( duration: FluffyThemes.animationDuration, height: max(0, controller.spaceBelowContent), - width: controller.mediaQuery!.size.width - + width: controller.screenSize!.width - controller.columnWidth - (controller.showDetails ? FluffyThemes.columnWidth : 0), ), diff --git a/lib/pangea/toolbar/layout/overlay_message.dart b/lib/pangea/toolbar/layout/overlay_message.dart index b5b7f53e5..076d70818 100644 --- a/lib/pangea/toolbar/layout/overlay_message.dart +++ b/lib/pangea/toolbar/layout/overlay_message.dart @@ -261,7 +261,7 @@ class OverlayMessage extends StatelessWidget { final maxWidth = min( FluffyThemes.columnWidth * 1.5, - MediaQuery.of(context).size.width - + MediaQuery.widthOf(context) - (ownMessage ? 0 : Avatar.defaultSize) - 32.0 - (FluffyThemes.isColumnMode(context) diff --git a/lib/pangea/toolbar/layout/practice_mode_transition_animation.dart b/lib/pangea/toolbar/layout/practice_mode_transition_animation.dart index 7c8a06f5d..21d8c0a7c 100644 --- a/lib/pangea/toolbar/layout/practice_mode_transition_animation.dart +++ b/lib/pangea/toolbar/layout/practice_mode_transition_animation.dart @@ -182,8 +182,8 @@ class CenteredMessage extends StatelessWidget { mainAxisSize: MainAxisSize.min, children: [ SizedBox( - width: controller.mediaQuery!.size.width - - controller.columnWidth, + width: + controller.screenSize!.width - controller.columnWidth, height: 20.0, ), OverlayCenterContent( diff --git a/lib/utils/adaptive_bottom_sheet.dart b/lib/utils/adaptive_bottom_sheet.dart index faa7f5ce8..db9a11ede 100644 --- a/lib/utils/adaptive_bottom_sheet.dart +++ b/lib/utils/adaptive_bottom_sheet.dart @@ -54,7 +54,7 @@ Future showAdaptiveBottomSheet({ isDismissible: isDismissible, isScrollControlled: isScrollControlled, constraints: BoxConstraints( - maxHeight: min(MediaQuery.of(context).size.height - 32, 600), + maxHeight: min(MediaQuery.sizeOf(context).height - 32, 600), maxWidth: FluffyThemes.columnWidth * 1.25, ), backgroundColor: Colors.transparent, diff --git a/lib/widgets/adaptive_dialogs/show_modal_action_popup.dart b/lib/widgets/adaptive_dialogs/show_modal_action_popup.dart index 7e6709871..47db330f1 100644 --- a/lib/widgets/adaptive_dialogs/show_modal_action_popup.dart +++ b/lib/widgets/adaptive_dialogs/show_modal_action_popup.dart @@ -23,7 +23,7 @@ Future showModalActionPopup({ clipBehavior: Clip.hardEdge, constraints: BoxConstraints( maxWidth: 512, - maxHeight: MediaQuery.of(context).size.height - 32, + maxHeight: MediaQuery.sizeOf(context).height - 32, ), builder: (context) => ListView( shrinkWrap: true, diff --git a/lib/widgets/layouts/empty_page.dart b/lib/widgets/layouts/empty_page.dart index 0ac51a111..8f91e7fde 100644 --- a/lib/widgets/layouts/empty_page.dart +++ b/lib/widgets/layouts/empty_page.dart @@ -9,7 +9,7 @@ class EmptyPage extends StatelessWidget { const EmptyPage({super.key}); @override Widget build(BuildContext context) { - final width = min(MediaQuery.of(context).size.width, EmptyPage._width) / 2; + final width = min(MediaQuery.sizeOf(context).width, EmptyPage._width) / 2; // #Pangea // final theme = Theme.of(context); // Pangea# diff --git a/lib/widgets/mxc_image.dart b/lib/widgets/mxc_image.dart index 33af91abf..0615f5777 100644 --- a/lib/widgets/mxc_image.dart +++ b/lib/widgets/mxc_image.dart @@ -77,7 +77,7 @@ class _MxcImageState extends State { final event = widget.event; if (uri != null) { - final devicePixelRatio = MediaQuery.of(context).devicePixelRatio; + final devicePixelRatio = MediaQuery.devicePixelRatioOf(context); final width = widget.width; final realWidth = width == null ? null : width * devicePixelRatio; final height = widget.height; diff --git a/lib/widgets/mxc_image_viewer.dart b/lib/widgets/mxc_image_viewer.dart index 1d806d858..be075d79b 100644 --- a/lib/widgets/mxc_image_viewer.dart +++ b/lib/widgets/mxc_image_viewer.dart @@ -35,7 +35,7 @@ class MxcImageViewer extends StatelessWidget { maxScale: 10.0, onInteractionEnd: (endDetails) { if (endDetails.velocity.pixelsPerSecond.dy > - MediaQuery.of(context).size.height * 1.5) { + MediaQuery.sizeOf(context).height * 1.5) { Navigator.of(context, rootNavigator: false).pop(); } },