Signed-off-by: dom <githubaccount56556@proton.me>
This commit is contained in:
dom
2026-04-29 12:47:14 +08:00
parent c7864ff4a3
commit cd26cf6d98
104 changed files with 482 additions and 391 deletions

View File

@@ -1,4 +1,3 @@
import 'package:PiliPlus/utils/platform_utils.dart';
import 'package:flutter/material.dart';
/// from Getx
@@ -72,10 +71,4 @@ extension ContextExtensions on BuildContext {
/// True if the current device is Tablet
bool get isTablet => isSmallTablet || isLargeTablet;
String get platformName => PlatformUtils.isDesktop
? 'desktop'
: isTablet
? 'pad'
: 'phone';
}

View File

@@ -3,3 +3,16 @@ import 'package:PiliPlus/grpc/bilibili/app/archive/v1.pb.dart' show Dimension;
extension DimensionExt on Dimension {
bool get isVertical => rotate == .ONE ? width > height : height > width;
}
extension StringExt on String {
bool get isVerticalFromUri {
try {
final params = Uri.parse(this).queryParameters;
final width = int.parse(params['player_width']!);
final height = int.parse(params['player_height']!);
return params['player_rotate'] == '1' ? width > height : height > width;
} catch (_) {
return false;
}
}
}

View File

@@ -1,4 +1,4 @@
import 'dart:io';
import 'dart:io' show FileSystemEntity, Directory;
extension FileSystemEntityExt on FileSystemEntity {
Future<void> tryDel({bool recursive = false}) async {

View File

@@ -6,10 +6,10 @@ extension GetExt on GetInterface {
GetInstance().putOrFind(dep, tag: tag);
void updateMyAppTheme() {
final (l, d) = MyApp.getAllTheme();
final (light, dark) = MyApp.getAllTheme();
rootController
..theme = l
..darkTheme = d
..theme = light
..darkTheme = dark
..update();
}
}

View File

@@ -1,6 +1,6 @@
import 'dart:math' show pow;
import 'package:flutter/widgets.dart';
import 'package:flutter/widgets.dart' show BuildContext, MediaQuery;
extension ImageExtension on num {
int? cacheSize(BuildContext context) {

View File

@@ -1,4 +1,4 @@
import 'package:flutter/widgets.dart';
import 'package:flutter/widgets.dart' show ScrollController, Curves;
extension ScrollControllerExt on ScrollController {
void animToTop() => animTo(0);

View File

@@ -1,9 +1,16 @@
import 'package:flex_seed_scheme/flex_seed_scheme.dart';
import 'package:flutter/material.dart';
import 'package:flutter/material.dart'
show ThemeData, Color, ColorScheme, Brightness, Colors;
const _pinkLight = Color(0xFFFF6699);
const _pinkDark = Color(0xFFD44E7D);
extension ThemeDataExt on ThemeData {
bool get isLight => brightness.isLight;
bool get isDark => brightness.isDark;
}
extension ColorSchemeExt on ColorScheme {
Color get vipColor => brightness.isLight ? _pinkLight : _pinkDark;