update dart sdk

update webview version
add small window page
master
laiiihz 5 years ago
parent eff4f39cfe
commit a8d1200def

@ -12,6 +12,7 @@ import 'package:recook/pages/home/classify/mvp/goods_detail_model_impl.dart';
import 'package:recook/pages/home/classify/order_preview_page.dart';
import 'package:recook/pages/home/widget/plus_minus_view.dart';
import 'package:recook/pages/live/live_stream/live_sku_widget.dart';
import 'package:recook/pages/live/live_stream/small_window/small_window_page.dart';
import 'package:recook/pages/live/models/live_stream_info_model.dart'
show GoodsLists;
import 'package:recook/pages/user/user_page.dart';
@ -116,11 +117,7 @@ class _GoodsListDialogState extends State<GoodsListDialog> {
onTap: () {
CRoute.push(
context,
CommodityDetailPage(
arguments: CommodityDetailPage.setArguments(model.id),
liveId: widget.id,
isLive: true,
),
SmallWindowPage(liveId: widget.id, id: model.id),
);
},
child: Container(

@ -0,0 +1,33 @@
import 'package:flutter/material.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:recook/pages/home/classify/commodity_detail_page.dart';
import 'package:recook/pages/live/live_stream/small_window/small_window_widget.dart';
class SmallWindowPage extends StatefulWidget {
///ID
final int liveId;
///ID
final int id;
SmallWindowPage({Key key, @required this.liveId, @required this.id})
: super(key: key);
@override
_SmallWindowPageState createState() => _SmallWindowPageState();
}
class _SmallWindowPageState extends State<SmallWindowPage> {
@override
Widget build(BuildContext context) {
return Stack(
children: [
CommodityDetailPage(
arguments: CommodityDetailPage.setArguments(widget.id),
liveId: widget.liveId,
isLive: true,
),
SmallWindowWidget(),
],
);
}
}

@ -0,0 +1,94 @@
import 'package:flutter/material.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
class SmallWindowWidget extends StatefulWidget {
SmallWindowWidget({Key key}) : super(key: key);
@override
_SmallWindowWidgetState createState() => _SmallWindowWidgetState();
}
class _SmallWindowWidgetState extends State<SmallWindowWidget> {
double get _bottomSafe => 55 + ScreenUtil.statusBarHeight;
double _topPos = 0;
double _leftPos = 0;
bool _isMoving = false;
double _width = 90;
double get _subWidth => _width / 2;
double _height = 160;
double get _subHeight => _height / 2;
bool _isHide = false;
@override
void initState() {
super.initState();
_topPos = ScreenUtil.statusBarHeight + 20;
_leftPos = 20;
}
@override
Widget build(BuildContext context) {
return AnimatedPositioned(
left: _isHide ? -_width : _leftPos,
top: _topPos,
child: Stack(
children: [
GestureDetector(
onPanUpdate: (detail) {
setState(() {
_topPos = detail.globalPosition.dy - _subHeight;
_leftPos = detail.globalPosition.dx - _subWidth;
});
},
onPanStart: (detail) {
setState(() {
_isMoving = true;
});
},
onPanEnd: (detail) {
_isMoving = false;
if (_leftPos < 20) _leftPos = 20;
if (_topPos < ScreenUtil.statusBarHeight + 20)
_topPos = (20 + ScreenUtil.statusBarHeight);
if ((_leftPos + _width + 20) > ScreenUtil.screenWidthDp)
_leftPos = ScreenUtil.screenWidthDp - 20 - _width;
if ((_topPos + _height + 55 + 20) > ScreenUtil.screenHeightDp)
_topPos = ScreenUtil.screenHeightDp - 20 - _height - 55;
setState(() {});
},
child: Container(
height: _height,
width: _width,
color: Colors.blueAccent,
),
),
Positioned(
right: 10,
top: 10,
child: GestureDetector(
onTap: () {
setState(() {
_isHide = true;
});
},
child: Container(
height: 20,
width: 20,
child: Icon(
Icons.clear,
size: 16,
color: Colors.black,
),
decoration: BoxDecoration(
color: Colors.white,
borderRadius: BorderRadius.circular(10),
),
),
),
),
],
),
curve: Curves.easeInOutCubic,
duration: _isMoving ? Duration.zero : Duration(milliseconds: 300),
);
}
}

@ -1195,7 +1195,7 @@ packages:
name: webview_flutter
url: "https://pub.flutter-io.cn"
source: hosted
version: "0.3.24"
version: "1.0.7"
win32:
dependency: transitive
description:
@ -1225,5 +1225,5 @@ packages:
source: hosted
version: "2.2.1"
sdks:
dart: ">=2.10.0-110 <2.11.0"
flutter: ">=1.20.0 <2.0.0"
dart: ">=2.10.0 <2.11.0"
flutter: ">=1.22.0 <2.0.0"

@ -2,12 +2,12 @@ name: recook
description: Recook Market App.
publish_to: "none"
version: 1.3.12+205
version: 1.3.13+206
# sdk min version to 2.2.2
# to support ... feature
environment:
sdk: ">=2.2.2 <3.0.0"
sdk: ">=2.10.0 <3.0.0"
module:
androidX: true
@ -50,9 +50,9 @@ dependencies:
git:
url: https://gitee.com/laiiihz/flutter_qr_reader
ref: 3e4824752f4fa50c30ecd415341a3a779db01922
webview_flutter: ^1.0.7
# 网页组件
webview_flutter: ^0.3.15+1
# webview_flutter:
# git:
# url: https://github.com/haysuperman/webview_flutter.git

Loading…
Cancel
Save