mirror of
https://github.com/HChaZZY/PiliPlus.git
synced 2025-12-06 09:13:48 +08:00
Compare commits
3 Commits
1.1.3.37-f
...
1.1.3.37-f
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
924fb4bf81 | ||
|
|
f60c0b9a10 | ||
|
|
7c0d161b9a |
@@ -58,6 +58,9 @@
|
||||
android:supportsPictureInPicture="true"
|
||||
android:resizeableActivity="true"
|
||||
>
|
||||
|
||||
<meta-data android:name="flutter_deeplinking_enabled" android:value="false" />
|
||||
|
||||
<!-- Specifies an Android theme to apply to this Activity as soon as
|
||||
the Android process has started. This theme is visible to the user
|
||||
while the Flutter UI initializes. After that, this theme continues
|
||||
|
||||
@@ -119,15 +119,17 @@ class _DynamicSliverAppBarMediumState extends State<DynamicSliverAppBarMedium> {
|
||||
});
|
||||
}
|
||||
|
||||
@override
|
||||
void didChangeDependencies() {
|
||||
_height = 0;
|
||||
_updateHeight();
|
||||
super.didChangeDependencies();
|
||||
}
|
||||
Orientation? _orientation;
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
final orientation = MediaQuery.of(context).orientation;
|
||||
if (orientation != _orientation) {
|
||||
_orientation = orientation;
|
||||
_height = 0;
|
||||
_updateHeight();
|
||||
}
|
||||
|
||||
//Needed to lay out the flexibleSpace the first time, so we can calculate its intrinsic height
|
||||
if (_height == 0) {
|
||||
return SliverToBoxAdapter(
|
||||
|
||||
@@ -22,7 +22,7 @@ import 'package:cached_network_image/cached_network_image.dart';
|
||||
import 'package:canvas_danmaku/canvas_danmaku.dart';
|
||||
import 'package:floating/floating.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter/services.dart' show MethodChannel;
|
||||
import 'package:flutter/services.dart' show MethodChannel, SystemUiOverlayStyle;
|
||||
import 'package:flutter_smart_dialog/flutter_smart_dialog.dart';
|
||||
import 'package:get/get.dart';
|
||||
import 'package:screen_brightness/screen_brightness.dart';
|
||||
@@ -207,57 +207,79 @@ class _LiveRoomPageState extends State<LiveRoomPage>
|
||||
);
|
||||
}
|
||||
|
||||
SystemUiOverlayStyle _systemOverlayStyleForBrightness(
|
||||
Brightness brightness, [
|
||||
Color? backgroundColor,
|
||||
]) {
|
||||
final SystemUiOverlayStyle style = brightness == Brightness.dark
|
||||
? SystemUiOverlayStyle.light
|
||||
: SystemUiOverlayStyle.dark;
|
||||
// For backward compatibility, create an overlay style without system navigation bar settings.
|
||||
return SystemUiOverlayStyle(
|
||||
statusBarColor: backgroundColor,
|
||||
statusBarBrightness: style.statusBarBrightness,
|
||||
statusBarIconBrightness: style.statusBarIconBrightness,
|
||||
systemStatusBarContrastEnforced: style.systemStatusBarContrastEnforced,
|
||||
);
|
||||
}
|
||||
|
||||
Widget childWhenDisabled(bool isPortrait) {
|
||||
return ColoredBox(
|
||||
color: Colors.black,
|
||||
child: Stack(
|
||||
clipBehavior: Clip.none,
|
||||
children: [
|
||||
Obx(
|
||||
() => isFullScreen
|
||||
? const SizedBox.shrink()
|
||||
: Positioned.fill(
|
||||
child: Opacity(
|
||||
opacity: 0.6,
|
||||
child: _liveRoomController.roomInfoH5.value?.roomInfo
|
||||
?.appBackground?.isNotEmpty ==
|
||||
true
|
||||
? CachedNetworkImage(
|
||||
fit: BoxFit.cover,
|
||||
width: Get.width,
|
||||
height: Get.height,
|
||||
imageUrl: _liveRoomController.roomInfoH5.value!
|
||||
.roomInfo!.appBackground!.http2https,
|
||||
)
|
||||
: Image.asset(
|
||||
'assets/images/live/default_bg.webp',
|
||||
fit: BoxFit.cover,
|
||||
),
|
||||
return AnnotatedRegion<SystemUiOverlayStyle>(
|
||||
value: _systemOverlayStyleForBrightness(
|
||||
Brightness.dark,
|
||||
Theme.of(context).useMaterial3 ? const Color(0x00000000) : null,
|
||||
),
|
||||
child: ColoredBox(
|
||||
color: Colors.black,
|
||||
child: Stack(
|
||||
clipBehavior: Clip.none,
|
||||
children: [
|
||||
Obx(
|
||||
() => isFullScreen
|
||||
? const SizedBox.shrink()
|
||||
: Positioned.fill(
|
||||
child: Opacity(
|
||||
opacity: 0.6,
|
||||
child: _liveRoomController.roomInfoH5.value?.roomInfo
|
||||
?.appBackground?.isNotEmpty ==
|
||||
true
|
||||
? CachedNetworkImage(
|
||||
fit: BoxFit.cover,
|
||||
width: Get.width,
|
||||
height: Get.height,
|
||||
imageUrl: _liveRoomController.roomInfoH5.value!
|
||||
.roomInfo!.appBackground!.http2https,
|
||||
)
|
||||
: Image.asset(
|
||||
'assets/images/live/default_bg.webp',
|
||||
fit: BoxFit.cover,
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
SafeArea(
|
||||
top: !isFullScreen,
|
||||
left: !isFullScreen,
|
||||
right: !isFullScreen,
|
||||
bottom: false,
|
||||
child: isPortrait
|
||||
? Obx(
|
||||
() {
|
||||
if (_liveRoomController.isPortrait.value) {
|
||||
return _buildPP;
|
||||
}
|
||||
return _buildPH;
|
||||
},
|
||||
)
|
||||
: Column(
|
||||
children: [
|
||||
Obx(() => _buildAppBar),
|
||||
_buildBodyH,
|
||||
],
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
SafeArea(
|
||||
top: !isFullScreen,
|
||||
left: !isFullScreen,
|
||||
right: !isFullScreen,
|
||||
bottom: false,
|
||||
child: isPortrait
|
||||
? Obx(
|
||||
() {
|
||||
if (_liveRoomController.isPortrait.value) {
|
||||
return _buildPP;
|
||||
}
|
||||
return _buildPH;
|
||||
},
|
||||
)
|
||||
: Column(
|
||||
children: [
|
||||
Obx(() => _buildAppBar),
|
||||
_buildBodyH,
|
||||
],
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user