diff --git a/lib/common/widgets/video_card_v.dart b/lib/common/widgets/video_card_v.dart index 39358fda..fa15a75c 100644 --- a/lib/common/widgets/video_card_v.dart +++ b/lib/common/widgets/video_card_v.dart @@ -333,8 +333,10 @@ class VideoStat extends StatelessWidget { color: Theme.of(context).colorScheme.outline, ), children: [ - TextSpan(text: '${videoItem.stat.view}观看'), - TextSpan(text: ' • ${videoItem.stat.danmu}弹幕'), + if (videoItem.stat.view != '-') + TextSpan(text: '${videoItem.stat.view}观看'), + if (videoItem.stat.danmu != '-') + TextSpan(text: ' • ${videoItem.stat.danmu}弹幕'), ], ), ); diff --git a/lib/http/member.dart b/lib/http/member.dart index a2af8d82..6854dfc6 100644 --- a/lib/http/member.dart +++ b/lib/http/member.dart @@ -403,7 +403,7 @@ class MemberHttp { 'csrf': await Request.getCsrf(), }); await Future.delayed(const Duration(milliseconds: 300)); - qrcodePoll(authCodeRes['data']); + await qrcodePoll(authCodeRes['data']); if (res.data['code'] == 0) { return {'status': true, 'data': [], 'msg': '操作成功'}; } else { diff --git a/lib/http/user.dart b/lib/http/user.dart index 1ab465e0..f439b815 100644 --- a/lib/http/user.dart +++ b/lib/http/user.dart @@ -199,7 +199,7 @@ class UserHttp { } } - // 获取用户凭证 + // 获取用户凭证 失效 static Future thirdLogin() async { var res = await Request().get( 'https://passport.bilibili.com/login/app/third', diff --git a/lib/models/home/rcmd/result.dart b/lib/models/home/rcmd/result.dart index 94ed0727..a2a8006d 100644 --- a/lib/models/home/rcmd/result.dart +++ b/lib/models/home/rcmd/result.dart @@ -118,7 +118,7 @@ class RcmdStat { RcmdStat.fromJson(Map json) { view = json["cover_left_text_1"]; - danmu = json['cover_left_text_2']; + danmu = json['cover_left_text_2'] ?? '-'; } } diff --git a/lib/models/video/play/url.dart b/lib/models/video/play/url.dart index 71894406..4c43cb00 100644 --- a/lib/models/video/play/url.dart +++ b/lib/models/video/play/url.dart @@ -1,5 +1,3 @@ -import 'dart:developer'; - import 'package:pilipala/models/video/play/quality.dart'; class PlayUrlModel { diff --git a/lib/pages/about/index.dart b/lib/pages/about/index.dart index d50946d6..17eabee5 100644 --- a/lib/pages/about/index.dart +++ b/lib/pages/about/index.dart @@ -1,6 +1,3 @@ -import 'dart:io'; - -import 'package:device_info_plus/device_info_plus.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:flutter_smart_dialog/flutter_smart_dialog.dart'; diff --git a/lib/pages/bangumi/introduction/view.dart b/lib/pages/bangumi/introduction/view.dart index af47d7da..62842075 100644 --- a/lib/pages/bangumi/introduction/view.dart +++ b/lib/pages/bangumi/introduction/view.dart @@ -5,7 +5,6 @@ import 'package:get/get.dart'; import 'package:hive/hive.dart'; import 'package:pilipala/common/constants.dart'; import 'package:pilipala/common/widgets/badge.dart'; -import 'package:pilipala/common/widgets/http_error.dart'; import 'package:pilipala/common/widgets/network_img_layer.dart'; import 'package:pilipala/common/widgets/stat/danmu.dart'; import 'package:pilipala/common/widgets/stat/view.dart'; diff --git a/lib/pages/dynamics/widgets/rich_node_panel.dart b/lib/pages/dynamics/widgets/rich_node_panel.dart index a66772a4..8b7dcd69 100644 --- a/lib/pages/dynamics/widgets/rich_node_panel.dart +++ b/lib/pages/dynamics/widgets/rich_node_panel.dart @@ -1,8 +1,6 @@ import 'package:flutter/material.dart'; import 'package:get/get.dart'; import 'package:pilipala/common/widgets/network_img_layer.dart'; -import 'package:pilipala/models/dynamics/result.dart'; -import 'package:pilipala/pages/preview/index.dart'; // 富文本 InlineSpan richNode(item, context) { @@ -11,13 +9,11 @@ InlineSpan richNode(item, context) { TextStyle authorStyle = TextStyle(color: Theme.of(context).colorScheme.primary); List spanChilds = []; - String contentType = 'desc'; dynamic richTextNodes; if (item.modules.moduleDynamic.desc != null) { richTextNodes = item.modules.moduleDynamic.desc.richTextNodes; } else if (item.modules.moduleDynamic.major != null) { - contentType = 'major'; // 动态页面 richTextNodes 层级可能与主页动态层级不同 richTextNodes = item.modules.moduleDynamic.major.opus.summary.richTextNodes; diff --git a/lib/pages/follow/widgets/follow_item.dart b/lib/pages/follow/widgets/follow_item.dart index 3f9e4f3c..ac9cc01b 100644 --- a/lib/pages/follow/widgets/follow_item.dart +++ b/lib/pages/follow/widgets/follow_item.dart @@ -1,5 +1,4 @@ import 'package:flutter/material.dart'; -import 'package:flutter_smart_dialog/flutter_smart_dialog.dart'; import 'package:get/get.dart'; import 'package:pilipala/common/widgets/network_img_layer.dart'; import 'package:pilipala/models/follow/result.dart'; diff --git a/lib/pages/follow/widgets/owner_follow_list.dart b/lib/pages/follow/widgets/owner_follow_list.dart index 0dcd785d..ccc11c44 100644 --- a/lib/pages/follow/widgets/owner_follow_list.dart +++ b/lib/pages/follow/widgets/owner_follow_list.dart @@ -1,5 +1,3 @@ -import 'dart:math'; - import 'package:easy_debounce/easy_throttle.dart'; import 'package:flutter/material.dart'; import 'package:get/get.dart'; diff --git a/lib/pages/history/widgets/item.dart b/lib/pages/history/widgets/item.dart index b80affc8..a83e118b 100644 --- a/lib/pages/history/widgets/item.dart +++ b/lib/pages/history/widgets/item.dart @@ -11,7 +11,6 @@ import 'package:pilipala/models/bangumi/info.dart'; import 'package:pilipala/models/common/business_type.dart'; import 'package:pilipala/models/common/search_type.dart'; import 'package:pilipala/models/live/item.dart'; -import 'package:pilipala/pages/history/index.dart'; import 'package:pilipala/pages/history_search/index.dart'; import 'package:pilipala/utils/feed_back.dart'; import 'package:pilipala/utils/id_utils.dart'; diff --git a/lib/pages/home/view.dart b/lib/pages/home/view.dart index fa5a1cc9..a6f3b42f 100644 --- a/lib/pages/home/view.dart +++ b/lib/pages/home/view.dart @@ -3,7 +3,6 @@ import 'dart:async'; import 'package:flutter/material.dart'; import 'package:get/get.dart'; import 'package:pilipala/common/widgets/network_img_layer.dart'; -import 'package:pilipala/pages/main/index.dart'; import 'package:pilipala/pages/mine/index.dart'; import 'package:pilipala/pages/search/index.dart'; import 'package:pilipala/utils/feed_back.dart'; @@ -75,6 +74,7 @@ class _HomePageState extends State dividerColor: Colors.transparent, enableFeedback: true, splashBorderRadius: BorderRadius.circular(10), + tabAlignment: TabAlignment.center, onTap: (value) { feedBack(); if (_homeController.initialIndex == value) { diff --git a/lib/pages/html/view.dart b/lib/pages/html/view.dart index 64fabff8..478626af 100644 --- a/lib/pages/html/view.dart +++ b/lib/pages/html/view.dart @@ -9,7 +9,6 @@ import 'package:pilipala/common/widgets/html_render.dart'; import 'package:pilipala/common/widgets/http_error.dart'; import 'package:pilipala/common/widgets/network_img_layer.dart'; import 'package:pilipala/models/common/reply_type.dart'; -import 'package:pilipala/pages/mine/index.dart'; import 'package:pilipala/pages/video/detail/reply/widgets/reply_item.dart'; import 'package:pilipala/pages/video/detail/replyNew/index.dart'; import 'package:pilipala/pages/video/detail/replyReply/index.dart'; diff --git a/lib/pages/live/view.dart b/lib/pages/live/view.dart index c224dddf..302d226d 100644 --- a/lib/pages/live/view.dart +++ b/lib/pages/live/view.dart @@ -72,6 +72,7 @@ class _LivePageState extends State @override Widget build(BuildContext context) { + super.build(context); return Container( clipBehavior: Clip.hardEdge, margin: const EdgeInsets.only( diff --git a/lib/pages/liveRoom/view.dart b/lib/pages/liveRoom/view.dart index 36b1f979..125460b9 100644 --- a/lib/pages/liveRoom/view.dart +++ b/lib/pages/liveRoom/view.dart @@ -52,7 +52,6 @@ class _LiveRoomPageState extends State { @override Widget build(BuildContext context) { - final videoHeight = MediaQuery.of(context).size.width * 9 / 16; Widget childWhenDisabled = Scaffold( primary: true, appBar: AppBar( diff --git a/lib/pages/liveRoom/widgets/bottom_control.dart b/lib/pages/liveRoom/widgets/bottom_control.dart index 49343bb1..7347a8fc 100644 --- a/lib/pages/liveRoom/widgets/bottom_control.dart +++ b/lib/pages/liveRoom/widgets/bottom_control.dart @@ -3,7 +3,6 @@ import 'dart:io'; import 'package:floating/floating.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; -import 'package:get/get.dart'; import 'package:hive/hive.dart'; import 'package:pilipala/models/video/play/url.dart'; import 'package:pilipala/pages/liveRoom/index.dart'; @@ -43,10 +42,6 @@ class _BottomControlState extends State { @override Widget build(BuildContext context) { - const textStyle = TextStyle( - color: Colors.white, - fontSize: 12, - ); return AppBar( backgroundColor: Colors.transparent, foregroundColor: Colors.white, diff --git a/lib/pages/rcmd/view.dart b/lib/pages/rcmd/view.dart index a0f867f7..f9773271 100644 --- a/lib/pages/rcmd/view.dart +++ b/lib/pages/rcmd/view.dart @@ -196,8 +196,8 @@ class _RcmdPageState extends State } class LoadingMore extends StatelessWidget { - dynamic ctr; - LoadingMore({super.key, this.ctr}); + final dynamic ctr; + const LoadingMore({super.key, this.ctr}); @override Widget build(BuildContext context) { diff --git a/lib/pages/search/view.dart b/lib/pages/search/view.dart index 0ec910f1..55ee3b22 100644 --- a/lib/pages/search/view.dart +++ b/lib/pages/search/view.dart @@ -160,25 +160,25 @@ class _SearchPageState extends State with RouteAware { } Widget _searchSuggest() { - SSearchController _ssCtr = _searchController; + SSearchController ssCtr = _searchController; return Obx( - () => _ssCtr.searchSuggestList.isNotEmpty && - _ssCtr.searchSuggestList.first.term != null && - _ssCtr.controller.value.text != '' + () => ssCtr.searchSuggestList.isNotEmpty && + ssCtr.searchSuggestList.first.term != null && + ssCtr.controller.value.text != '' ? ListView.builder( physics: const NeverScrollableScrollPhysics(), shrinkWrap: true, - itemCount: _ssCtr.searchSuggestList.length, + itemCount: ssCtr.searchSuggestList.length, itemBuilder: (context, index) { return InkWell( customBorder: RoundedRectangleBorder( borderRadius: BorderRadius.circular(4), ), - onTap: () => _ssCtr - .onClickKeyword(_ssCtr.searchSuggestList[index].term!), + onTap: () => ssCtr + .onClickKeyword(ssCtr.searchSuggestList[index].term!), child: Padding( padding: const EdgeInsets.only(left: 20, top: 9, bottom: 9), - child: _ssCtr.searchSuggestList[index].textRich, + child: ssCtr.searchSuggestList[index].textRich, ), ); }, @@ -235,6 +235,7 @@ class _SearchPageState extends State with RouteAware { return Obx( () => HotKeyword( width: width, + // ignore: invalid_use_of_protected_member hotSearchList: _searchController.hotSearchList.value, onClick: (keyword) async { _searchController.searchFocusNode.unfocus(); diff --git a/lib/pages/searchPanel/view.dart b/lib/pages/searchPanel/view.dart index 9fd37b7e..10e52a54 100644 --- a/lib/pages/searchPanel/view.dart +++ b/lib/pages/searchPanel/view.dart @@ -83,6 +83,7 @@ class _SearchPanelState extends State case SearchType.video: return SearchVideoPanel( ctr: _searchPanelController, + // ignore: invalid_use_of_protected_member list: list.value, ); case SearchType.media_bangumi: diff --git a/lib/pages/searchResult/view.dart b/lib/pages/searchResult/view.dart index f2efb33a..ceb77190 100644 --- a/lib/pages/searchResult/view.dart +++ b/lib/pages/searchResult/view.dart @@ -82,6 +82,7 @@ class _SearchResultPageState extends State labelStyle: const TextStyle(fontSize: 13), dividerColor: Colors.transparent, unselectedLabelColor: Theme.of(context).colorScheme.outline, + tabAlignment: TabAlignment.start, onTap: (index) { if (index == _searchResultController!.tabIndex) { Get.find( diff --git a/lib/pages/video/detail/introduction/view.dart b/lib/pages/video/detail/introduction/view.dart index c6bd7f97..98ce9ba8 100644 --- a/lib/pages/video/detail/introduction/view.dart +++ b/lib/pages/video/detail/introduction/view.dart @@ -12,7 +12,6 @@ import 'package:pilipala/common/widgets/stat/view.dart'; import 'package:pilipala/models/video_detail_res.dart'; import 'package:pilipala/pages/video/detail/introduction/controller.dart'; import 'package:pilipala/pages/video/detail/widgets/ai_detail.dart'; -import 'package:pilipala/services/service_locator.dart'; import 'package:pilipala/utils/feed_back.dart'; import 'package:pilipala/utils/storage.dart'; import 'package:pilipala/utils/utils.dart'; diff --git a/lib/pages/webview/controller.dart b/lib/pages/webview/controller.dart index fae5a5fc..2dfa9582 100644 --- a/lib/pages/webview/controller.dart +++ b/lib/pages/webview/controller.dart @@ -6,6 +6,7 @@ import 'package:flutter_smart_dialog/flutter_smart_dialog.dart'; import 'package:get/get.dart'; import 'package:hive/hive.dart'; import 'package:pilipala/http/init.dart'; +import 'package:pilipala/http/member.dart'; import 'package:pilipala/http/user.dart'; import 'package:pilipala/pages/home/index.dart'; import 'package:pilipala/pages/media/index.dart'; @@ -102,7 +103,6 @@ class WebviewController extends GetxController { try { await SetCookie.onSet(); var result = await UserHttp.userInfo(); - UserHttp.thirdLogin(); if (result['status'] && result['data'].isLogin) { SmartDialog.showToast('登录成功'); try { @@ -115,6 +115,7 @@ class WebviewController extends GetxController { MediaController mediaCtr = Get.find(); mediaCtr.mid = result['data'].mid; await LoginUtils.refreshLoginStatus(true); + MemberHttp.cookieToKey(); } catch (err) { SmartDialog.show(builder: (context) { return AlertDialog( diff --git a/lib/plugin/pl_player/controller.dart b/lib/plugin/pl_player/controller.dart index 8f09d0ca..569c2a1c 100644 --- a/lib/plugin/pl_player/controller.dart +++ b/lib/plugin/pl_player/controller.dart @@ -6,7 +6,6 @@ import 'dart:typed_data'; import 'package:easy_debounce/easy_throttle.dart'; import 'package:flutter/material.dart'; -import 'package:flutter_smart_dialog/flutter_smart_dialog.dart'; import 'package:flutter_volume_controller/flutter_volume_controller.dart'; import 'package:get/get.dart'; import 'package:hive/hive.dart'; diff --git a/lib/router/app_pages.dart b/lib/router/app_pages.dart index cec93c26..03e3d97f 100644 --- a/lib/router/app_pages.dart +++ b/lib/router/app_pages.dart @@ -27,7 +27,6 @@ import 'package:pilipala/pages/member_dynamics/index.dart'; import 'package:pilipala/pages/member_like/index.dart'; import 'package:pilipala/pages/member_search/index.dart'; import 'package:pilipala/pages/member_seasons/index.dart'; -import 'package:pilipala/pages/preview/index.dart'; import 'package:pilipala/pages/search/index.dart'; import 'package:pilipala/pages/searchResult/index.dart'; import 'package:pilipala/pages/setting/extra_setting.dart';