Merge branch 'main' into feature-notice
This commit is contained in:
28
change_log/1.0.9.1015.md
Normal file
28
change_log/1.0.9.1015.md
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
## 1.0.9
|
||||||
|
|
||||||
|
|
||||||
|
### 新功能
|
||||||
|
+ 自定义倍速、默认倍速
|
||||||
|
+ 历史记录搜索
|
||||||
|
+ 收藏夹搜索
|
||||||
|
+ 历史记录多选删除
|
||||||
|
+ 视频循环播放
|
||||||
|
+ 免登录看1080P
|
||||||
|
+ 评论区视频链接跳转
|
||||||
|
+ up主分组
|
||||||
|
+ up主投稿搜索
|
||||||
|
|
||||||
|
### 修复
|
||||||
|
+ 搜索视频标题乱码
|
||||||
|
+ 屏幕帧率
|
||||||
|
+ 动态页面渲染
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 优化
|
||||||
|
+ 快进手势
|
||||||
|
+ 视频简介链接匹配
|
||||||
|
+ 视频全屏时安全区域
|
||||||
|
|
||||||
|
更多更新日志可在Github上查看
|
||||||
|
问题反馈、功能建议请查看「关于」页面。
|
||||||
@ -83,45 +83,53 @@ Widget addWidget(item, context, type, {floor = 1}) {
|
|||||||
);
|
);
|
||||||
case 'ADDITIONAL_TYPE_RESERVE':
|
case 'ADDITIONAL_TYPE_RESERVE':
|
||||||
return dynamicProperty[type].state != -1
|
return dynamicProperty[type].state != -1
|
||||||
? Padding(
|
? dynamicProperty[type].title != null
|
||||||
padding: const EdgeInsets.only(top: 8),
|
? Padding(
|
||||||
child: InkWell(
|
padding: const EdgeInsets.only(top: 8),
|
||||||
onTap: () {},
|
child: InkWell(
|
||||||
child: Container(
|
onTap: () {},
|
||||||
width: double.infinity,
|
child: Container(
|
||||||
padding: const EdgeInsets.only(
|
width: double.infinity,
|
||||||
left: 12, top: 10, right: 12, bottom: 10),
|
padding: const EdgeInsets.only(
|
||||||
color: bgColor,
|
left: 12, top: 10, right: 12, bottom: 10),
|
||||||
child: Column(
|
color: bgColor,
|
||||||
crossAxisAlignment: CrossAxisAlignment.start,
|
child: Column(
|
||||||
children: [
|
crossAxisAlignment: CrossAxisAlignment.start,
|
||||||
Text(
|
children: [
|
||||||
dynamicProperty[type].title,
|
Text(
|
||||||
maxLines: 1,
|
dynamicProperty[type].title,
|
||||||
overflow: TextOverflow.ellipsis,
|
maxLines: 1,
|
||||||
|
overflow: TextOverflow.ellipsis,
|
||||||
|
),
|
||||||
|
const SizedBox(height: 1),
|
||||||
|
Text.rich(
|
||||||
|
TextSpan(
|
||||||
|
style: TextStyle(
|
||||||
|
color: Theme.of(context).colorScheme.outline,
|
||||||
|
fontSize: Theme.of(context)
|
||||||
|
.textTheme
|
||||||
|
.labelMedium!
|
||||||
|
.fontSize),
|
||||||
|
children: [
|
||||||
|
if (dynamicProperty[type].desc1 != null)
|
||||||
|
TextSpan(
|
||||||
|
text:
|
||||||
|
dynamicProperty[type].desc1['text']),
|
||||||
|
const TextSpan(text: ' '),
|
||||||
|
if (dynamicProperty[type].desc2 != null)
|
||||||
|
TextSpan(
|
||||||
|
text:
|
||||||
|
dynamicProperty[type].desc2['text']),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
)
|
||||||
|
],
|
||||||
),
|
),
|
||||||
const SizedBox(height: 1),
|
// TextButton(onPressed: () {}, child: Text('123'))
|
||||||
Text.rich(
|
),
|
||||||
TextSpan(
|
|
||||||
style: TextStyle(
|
|
||||||
color: Theme.of(context).colorScheme.outline,
|
|
||||||
fontSize: Theme.of(context)
|
|
||||||
.textTheme
|
|
||||||
.labelMedium!
|
|
||||||
.fontSize),
|
|
||||||
children: [
|
|
||||||
TextSpan(text: dynamicProperty[type].desc1['text']),
|
|
||||||
const TextSpan(text: ' '),
|
|
||||||
TextSpan(text: dynamicProperty[type].desc2['text']),
|
|
||||||
],
|
|
||||||
),
|
|
||||||
)
|
|
||||||
],
|
|
||||||
),
|
),
|
||||||
// TextButton(onPressed: () {}, child: Text('123'))
|
)
|
||||||
),
|
: const SizedBox()
|
||||||
),
|
|
||||||
)
|
|
||||||
: const SizedBox();
|
: const SizedBox();
|
||||||
case 'ADDITIONAL_TYPE_GOODS':
|
case 'ADDITIONAL_TYPE_GOODS':
|
||||||
// 商品
|
// 商品
|
||||||
|
|||||||
@ -377,7 +377,8 @@ class PlPlayerController {
|
|||||||
);
|
);
|
||||||
|
|
||||||
var pp = player.platform as NativePlayer;
|
var pp = player.platform as NativePlayer;
|
||||||
|
// 解除倍速限制
|
||||||
|
await pp.setProperty("af", "scaletempo2=max-speed=8");
|
||||||
// 音轨
|
// 音轨
|
||||||
if (dataSource.audioSource != '' && dataSource.audioSource != null) {
|
if (dataSource.audioSource != '' && dataSource.audioSource != null) {
|
||||||
await pp.setProperty(
|
await pp.setProperty(
|
||||||
|
|||||||
@ -206,7 +206,7 @@ class Utils {
|
|||||||
static Future<bool> checkUpdata() async {
|
static Future<bool> checkUpdata() async {
|
||||||
SmartDialog.dismiss();
|
SmartDialog.dismiss();
|
||||||
var currentInfo = await PackageInfo.fromPlatform();
|
var currentInfo = await PackageInfo.fromPlatform();
|
||||||
var result = await Request().get(Api.latestApp);
|
var result = await Request().get(Api.latestApp, extra: {'ua': 'mob'});
|
||||||
LatestDataModel data = LatestDataModel.fromJson(result.data);
|
LatestDataModel data = LatestDataModel.fromJson(result.data);
|
||||||
bool isUpdate = Utils.needUpdate(currentInfo.version, data.tagName!);
|
bool isUpdate = Utils.needUpdate(currentInfo.version, data.tagName!);
|
||||||
if (isUpdate) {
|
if (isUpdate) {
|
||||||
|
|||||||
@ -16,7 +16,7 @@ publish_to: "none" # Remove this line if you wish to publish to pub.dev
|
|||||||
# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html
|
# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html
|
||||||
# In Windows, build-name is used as the major, minor, and patch parts
|
# In Windows, build-name is used as the major, minor, and patch parts
|
||||||
# of the product and file versions while build-number is used as the build suffix.
|
# of the product and file versions while build-number is used as the build suffix.
|
||||||
version: 1.0.8
|
version: 1.0.9
|
||||||
|
|
||||||
environment:
|
environment:
|
||||||
sdk: ">=2.19.6 <3.0.0"
|
sdk: ">=2.19.6 <3.0.0"
|
||||||
|
|||||||
Reference in New Issue
Block a user