mirror of
https://github.com/bggRGjQaUbCoE/PiliPlus.git
synced 2026-05-03 16:49:48 +08:00
opt: exclude analysis flutter widget (#1745)
This commit is contained in:
committed by
GitHub
parent
27ae296b28
commit
5ee83d902d
@@ -110,7 +110,7 @@ List<SettingsModel> get videoSettings => [
|
||||
await GStorage.setting.delete(SettingBoxKey.liveCdnUrl);
|
||||
} else {
|
||||
if (!result.startsWith('http')) {
|
||||
result = 'https://${result}';
|
||||
result = 'https://$result';
|
||||
}
|
||||
await GStorage.setting.put(SettingBoxKey.liveCdnUrl, result);
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import 'dart:math';
|
||||
|
||||
import 'package:PiliPlus/common/widgets/list_tile.dart';
|
||||
import 'package:PiliPlus/common/widgets/flutter/list_tile.dart';
|
||||
import 'package:PiliPlus/common/widgets/view_safe_area.dart';
|
||||
import 'package:PiliPlus/pages/setting/widgets/switch_item.dart';
|
||||
import 'package:PiliPlus/utils/context_ext.dart';
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import 'package:PiliPlus/common/widgets/list_tile.dart';
|
||||
import 'package:PiliPlus/common/widgets/flutter/list_tile.dart';
|
||||
import 'package:PiliPlus/pages/setting/models/model.dart';
|
||||
import 'package:PiliPlus/pages/setting/models/recommend_settings.dart';
|
||||
import 'package:flutter/material.dart' hide ListTile;
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
import 'package:PiliPlus/utils/danmaku_utils.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter/services.dart'
|
||||
show LengthLimitingTextInputFormatter, FilteringTextInputFormatter;
|
||||
@@ -20,17 +21,13 @@ class SlideColorPicker extends StatefulWidget {
|
||||
}
|
||||
|
||||
class _SlideColorPickerState extends State<SlideColorPicker> {
|
||||
late int _r;
|
||||
late int _g;
|
||||
late int _b;
|
||||
late int _rgb;
|
||||
late final TextEditingController _textController;
|
||||
|
||||
@override
|
||||
void initState() {
|
||||
super.initState();
|
||||
_r = widget.color.red;
|
||||
_g = widget.color.green;
|
||||
_b = widget.color.blue;
|
||||
_rgb = widget.color.toARGB32() & 0xFFFFFF;
|
||||
_textController = TextEditingController(text: _convert);
|
||||
}
|
||||
|
||||
@@ -40,12 +37,7 @@ class _SlideColorPickerState extends State<SlideColorPicker> {
|
||||
super.dispose();
|
||||
}
|
||||
|
||||
String get _convert => Color.fromRGBO(
|
||||
_r,
|
||||
_g,
|
||||
_b,
|
||||
1,
|
||||
).toARGB32().toRadixString(16).substring(2).toUpperCase();
|
||||
String get _convert => _rgb.toRadixString(16).toUpperCase().padLeft(6, '0');
|
||||
|
||||
Widget _slider({
|
||||
required String title,
|
||||
@@ -96,7 +88,7 @@ class _SlideColorPickerState extends State<SlideColorPicker> {
|
||||
children: [
|
||||
Container(
|
||||
height: 100,
|
||||
color: Color.fromARGB(255, _r, _g, _b),
|
||||
color: DmUtils.decimalToColor(_rgb),
|
||||
),
|
||||
const SizedBox(height: 10),
|
||||
IntrinsicWidth(
|
||||
@@ -114,13 +106,8 @@ class _SlideColorPickerState extends State<SlideColorPicker> {
|
||||
onChanged: (value) {
|
||||
_textController.text = value.toUpperCase();
|
||||
if (value.length == 6) {
|
||||
Color color = Color(
|
||||
int.tryParse('FF$value', radix: 16) ?? 0xFF000000,
|
||||
);
|
||||
setState(() {
|
||||
_r = color.red;
|
||||
_g = color.green;
|
||||
_b = color.blue;
|
||||
_rgb = int.tryParse(value, radix: 16) ?? 0;
|
||||
});
|
||||
}
|
||||
},
|
||||
@@ -128,30 +115,30 @@ class _SlideColorPickerState extends State<SlideColorPicker> {
|
||||
),
|
||||
_slider(
|
||||
title: 'R',
|
||||
value: _r,
|
||||
value: _rgb >> 16,
|
||||
onChanged: (value) {
|
||||
setState(() {
|
||||
_r = value.round();
|
||||
_rgb = _rgb.setByte(value.round(), 16);
|
||||
_textController.text = _convert;
|
||||
});
|
||||
},
|
||||
),
|
||||
_slider(
|
||||
title: 'G',
|
||||
value: _g,
|
||||
value: (_rgb >> 8) & 0xFF,
|
||||
onChanged: (value) {
|
||||
setState(() {
|
||||
_g = value.round();
|
||||
_rgb = _rgb.setByte(value.round(), 8);
|
||||
_textController.text = _convert;
|
||||
});
|
||||
},
|
||||
),
|
||||
_slider(
|
||||
title: 'B',
|
||||
value: _b,
|
||||
value: _rgb & 0xFF,
|
||||
onChanged: (value) {
|
||||
setState(() {
|
||||
_b = value.round();
|
||||
_rgb = _rgb.setByte(value.round(), 0);
|
||||
_textController.text = _convert;
|
||||
});
|
||||
},
|
||||
@@ -181,7 +168,7 @@ class _SlideColorPickerState extends State<SlideColorPicker> {
|
||||
TextButton(
|
||||
onPressed: () {
|
||||
Get.back();
|
||||
widget.callback(Color.fromARGB(255, _r, _g, _b));
|
||||
widget.callback(DmUtils.decimalToColor(_rgb));
|
||||
},
|
||||
child: const Text('确定'),
|
||||
),
|
||||
@@ -193,3 +180,9 @@ class _SlideColorPickerState extends State<SlideColorPicker> {
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
extension on int {
|
||||
@pragma("vm:prefer-inline")
|
||||
int setByte(int value, int shift) =>
|
||||
(this & ~(0xFF << shift)) | (value << shift);
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import 'package:PiliPlus/common/widgets/list_tile.dart';
|
||||
import 'package:PiliPlus/common/widgets/flutter/list_tile.dart';
|
||||
import 'package:PiliPlus/common/widgets/view_safe_area.dart';
|
||||
import 'package:PiliPlus/http/login.dart';
|
||||
import 'package:PiliPlus/models/common/setting_type.dart';
|
||||
|
||||
@@ -158,7 +158,6 @@ class OrderedCheckboxListTile extends StatelessWidget {
|
||||
/// Whether to add button:true to the semantics if onTap is provided.
|
||||
/// This is a temporary flag to help changing the behavior of ListTile onTap semantics.
|
||||
///
|
||||
// TODO(hangyujin): Remove this flag after fixing related g3 tests and flipping
|
||||
// the default value to true.
|
||||
final bool internalAddSemanticForOnTap;
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import 'package:PiliPlus/common/widgets/list_tile.dart';
|
||||
import 'package:PiliPlus/common/widgets/flutter/list_tile.dart';
|
||||
import 'package:flutter/material.dart' hide ListTile;
|
||||
|
||||
typedef StringGetter = String Function();
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import 'package:PiliPlus/common/widgets/list_tile.dart';
|
||||
import 'package:PiliPlus/common/widgets/flutter/list_tile.dart';
|
||||
import 'package:PiliPlus/utils/storage.dart';
|
||||
import 'package:PiliPlus/utils/storage_key.dart';
|
||||
import 'package:PiliPlus/utils/storage_pref.dart';
|
||||
|
||||
Reference in New Issue
Block a user