fix flutter3 warning upgrade dependencies

This commit is contained in:
csf 2022-08-01 21:32:59 +08:00
parent 2d90946a4d
commit 747cc794f8
5 changed files with 163 additions and 64 deletions

View File

@ -32,7 +32,7 @@ apply plugin: 'kotlin-android'
apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
android {
compileSdkVersion 31
compileSdkVersion 32
sourceSets {
main.java.srcDirs += 'src/main/kotlin'
}

View File

@ -1,6 +1,6 @@
import 'dart:convert';
import 'package:dash_chat/dash_chat.dart';
import 'package:dash_chat_2/dash_chat_2.dart';
import 'package:flutter/material.dart';
import '../widgets/overlay.dart';
@ -11,8 +11,8 @@ class MessageBody {
List<ChatMessage> chatMessages;
MessageBody(this.chatUser, this.chatMessages);
void add(ChatMessage cm) {
this.chatMessages.add(cm);
void insert(ChatMessage cm) {
this.chatMessages.insert(0, cm);
}
void clear() {
@ -24,19 +24,15 @@ class ChatModel with ChangeNotifier {
static final clientModeID = -1;
final ChatUser me = ChatUser(
uid: "",
name: "Me",
id: "",
firstName: "Me",
);
late final Map<int, MessageBody> _messages = Map()
..[clientModeID] = MessageBody(me, []);
final _scroller = ScrollController();
var _currentID = clientModeID;
ScrollController get scroller => _scroller;
Map<int, MessageBody> get messages => _messages;
int get currentID => _currentID;
@ -62,8 +58,8 @@ class ChatModel with ChangeNotifier {
"Failed to changeCurrentID,remote user doesn't exist");
}
final chatUser = ChatUser(
uid: client.peerId,
name: client.name,
id: client.peerId,
firstName: client.name,
);
_messages[id] = MessageBody(chatUser, []);
_currentID = id;
@ -80,48 +76,39 @@ class ChatModel with ChangeNotifier {
late final chatUser;
if (id == clientModeID) {
chatUser = ChatUser(
name: FFI.ffiModel.pi.username,
uid: FFI.getId(),
firstName: FFI.ffiModel.pi.username,
id: FFI.getId(),
);
} else {
final client = FFI.serverModel.clients[id];
if (client == null) {
return debugPrint("Failed to receive msg,user doesn't exist");
}
chatUser = ChatUser(uid: client.peerId, name: client.name);
chatUser = ChatUser(id: client.peerId, firstName: client.name);
}
if (!_messages.containsKey(id)) {
_messages[id] = MessageBody(chatUser, []);
}
_messages[id]!.add(ChatMessage(text: text, user: chatUser));
_messages[id]!.insert(
ChatMessage(text: text, user: chatUser, createdAt: DateTime.now()));
_currentID = id;
notifyListeners();
scrollToBottom();
}
scrollToBottom() {
Future.delayed(Duration(milliseconds: 500), () {
_scroller.animateTo(_scroller.position.maxScrollExtent,
duration: Duration(milliseconds: 200),
curve: Curves.fastLinearToSlowEaseIn);
});
}
send(ChatMessage message) {
if (message.text != null && message.text!.isNotEmpty) {
_messages[_currentID]?.add(message);
if (message.text.isNotEmpty) {
_messages[_currentID]?.insert(message);
if (_currentID == clientModeID) {
FFI.setByName("chat_client_mode", message.text!);
FFI.setByName("chat_client_mode", message.text);
} else {
final msg = Map()
..["id"] = _currentID
..["text"] = message.text!;
..["text"] = message.text;
FFI.setByName("chat_server_mode", jsonEncode(msg));
}
}
notifyListeners();
scrollToBottom();
}
close() {

View File

@ -1,4 +1,4 @@
import 'package:dash_chat/dash_chat.dart';
import 'package:dash_chat_2/dash_chat_2.dart';
import 'package:flutter/material.dart';
import 'package:flutter_hbb/common.dart';
import 'package:flutter_hbb/models/chat_model.dart';
@ -23,7 +23,7 @@ class ChatPage extends StatelessWidget implements PageShape {
final id = entry.key;
final user = entry.value.chatUser;
return PopupMenuItem<int>(
child: Text("${user.name} ${user.uid}"),
child: Text("${user.firstName} ${user.id}"),
value: id,
);
}).toList();
@ -44,19 +44,24 @@ class ChatPage extends StatelessWidget implements PageShape {
return Stack(
children: [
DashChat(
inputContainerStyle: BoxDecoration(color: Colors.white70),
sendOnEnter: false,
// if true,reload keyboard everytime,need fix
onSend: (chatMsg) {
chatModel.send(chatMsg);
},
user: chatModel.me,
currentUser: chatModel.me,
messages:
chatModel.messages[chatModel.currentID]?.chatMessages ??
[],
// default scrollToBottom has bug https://github.com/fayeed/dash_chat/issues/53
scrollToBottom: false,
scrollController: chatModel.scroller,
messageOptions: MessageOptions(
showOtherUsersAvatar: false,
showTime: true,
messageDecorationBuilder: (_, __, ___) =>
defaultMessageDecoration(
color: MyTheme.accent80,
borderTopLeft: 8,
borderTopRight: 8,
borderBottomRight: 8,
borderBottomLeft: 8,
)),
),
chatModel.currentID == ChatModel.clientModeID
? SizedBox.shrink()
@ -68,7 +73,7 @@ class ChatPage extends StatelessWidget implements PageShape {
color: MyTheme.accent80),
SizedBox(width: 5),
Text(
"${currentUser.name ?? ""} ${currentUser.uid ?? ""}",
"${currentUser.firstName} ${currentUser.id}",
style: TextStyle(color: MyTheme.accent50),
),
],

View File

@ -29,6 +29,27 @@ packages:
url: "https://pub.dartlang.org"
source: hosted
version: "2.1.0"
cached_network_image:
dependency: transitive
description:
name: cached_network_image
url: "https://pub.dartlang.org"
source: hosted
version: "3.2.1"
cached_network_image_platform_interface:
dependency: transitive
description:
name: cached_network_image_platform_interface
url: "https://pub.dartlang.org"
source: hosted
version: "1.0.0"
cached_network_image_web:
dependency: transitive
description:
name: cached_network_image_web
url: "https://pub.dartlang.org"
source: hosted
version: "1.0.1"
characters:
dependency: transitive
description:
@ -71,6 +92,13 @@ packages:
url: "https://pub.dartlang.org"
source: hosted
version: "3.0.2"
csslib:
dependency: transitive
description:
name: csslib
url: "https://pub.dartlang.org"
source: hosted
version: "0.17.2"
cupertino_icons:
dependency: "direct main"
description:
@ -78,13 +106,13 @@ packages:
url: "https://pub.dartlang.org"
source: hosted
version: "1.0.4"
dash_chat:
dash_chat_2:
dependency: "direct main"
description:
name: dash_chat
name: dash_chat_2
url: "https://pub.dartlang.org"
source: hosted
version: "1.1.16"
version: "0.0.12"
device_info:
dependency: "direct main"
description:
@ -195,6 +223,13 @@ packages:
description: flutter
source: sdk
version: "0.0.0"
flutter_blurhash:
dependency: transitive
description:
name: flutter_blurhash
url: "https://pub.dartlang.org"
source: hosted
version: "0.7.0"
flutter_breadcrumb:
dependency: "direct main"
description:
@ -202,6 +237,13 @@ packages:
url: "https://pub.dartlang.org"
source: hosted
version: "1.0.1"
flutter_cache_manager:
dependency: transitive
description:
name: flutter_cache_manager
url: "https://pub.dartlang.org"
source: hosted
version: "3.3.0"
flutter_launcher_icons:
dependency: "direct dev"
description:
@ -247,6 +289,13 @@ packages:
description: flutter
source: sdk
version: "0.0.0"
html:
dependency: transitive
description:
name: html
url: "https://pub.dartlang.org"
source: hosted
version: "0.15.0"
http:
dependency: "direct main"
description:
@ -345,6 +394,13 @@ packages:
url: "https://pub.dartlang.org"
source: hosted
version: "1.0.0"
octo_image:
dependency: transitive
description:
name: octo_image
url: "https://pub.dartlang.org"
source: hosted
version: "1.0.2"
package_info:
dependency: "direct main"
description:
@ -449,16 +505,14 @@ packages:
name: provider
url: "https://pub.dartlang.org"
source: hosted
version: "5.0.0"
version: "6.0.3"
qr_code_scanner:
dependency: "direct main"
description:
path: "."
ref: fix_break_changes_platform
resolved-ref: "0feca6f15042c279ff575c559a3430df917b623d"
url: "https://github.com/Heap-Hop/qr_code_scanner.git"
source: git
version: "0.7.0"
name: qr_code_scanner
url: "https://pub.dartlang.org"
source: hosted
version: "1.0.0"
quiver:
dependency: transitive
description:
@ -466,6 +520,13 @@ packages:
url: "https://pub.dartlang.org"
source: hosted
version: "3.1.0"
rxdart:
dependency: transitive
description:
name: rxdart
url: "https://pub.dartlang.org"
source: hosted
version: "0.27.5"
settings_ui:
dependency: "direct main"
description:
@ -541,6 +602,20 @@ packages:
url: "https://pub.dartlang.org"
source: hosted
version: "1.8.2"
sqflite:
dependency: transitive
description:
name: sqflite
url: "https://pub.dartlang.org"
source: hosted
version: "2.0.3"
sqflite_common:
dependency: transitive
description:
name: sqflite_common
url: "https://pub.dartlang.org"
source: hosted
version: "2.2.1+1"
stack_trace:
dependency: transitive
description:
@ -562,6 +637,13 @@ packages:
url: "https://pub.dartlang.org"
source: hosted
version: "1.1.0"
synchronized:
dependency: transitive
description:
name: synchronized
url: "https://pub.dartlang.org"
source: hosted
version: "3.0.0+2"
term_glyph:
dependency: transitive
description:
@ -583,13 +665,6 @@ packages:
url: "https://pub.dartlang.org"
source: hosted
version: "1.4.0"
transparent_image:
dependency: transitive
description:
name: transparent_image
url: "https://pub.dartlang.org"
source: hosted
version: "2.0.0"
tuple:
dependency: "direct main"
description:
@ -674,6 +749,41 @@ packages:
url: "https://pub.dartlang.org"
source: hosted
version: "2.1.2"
video_player:
dependency: transitive
description:
name: video_player
url: "https://pub.dartlang.org"
source: hosted
version: "2.4.5"
video_player_android:
dependency: transitive
description:
name: video_player_android
url: "https://pub.dartlang.org"
source: hosted
version: "2.3.8"
video_player_avfoundation:
dependency: transitive
description:
name: video_player_avfoundation
url: "https://pub.dartlang.org"
source: hosted
version: "2.3.5"
video_player_platform_interface:
dependency: transitive
description:
name: video_player_platform_interface
url: "https://pub.dartlang.org"
source: hosted
version: "5.1.3"
video_player_web:
dependency: transitive
description:
name: video_player_web
url: "https://pub.dartlang.org"
source: hosted
version: "2.0.12"
wakelock:
dependency: "direct main"
description:
@ -745,5 +855,5 @@ packages:
source: hosted
version: "0.1.0"
sdks:
dart: ">=2.17.0-0 <3.0.0"
dart: ">=2.17.0 <3.0.0"
flutter: ">=3.0.0"

View File

@ -32,7 +32,7 @@ dependencies:
ffi: ^1.1.2
path_provider: ^2.0.2
external_path: ^1.0.1
provider: ^5.0.0
provider: ^6.0.3
tuple: ^2.0.0
wakelock: ^0.5.2
device_info: ^2.0.2
@ -41,15 +41,12 @@ dependencies:
url_launcher: ^6.0.9
shared_preferences: ^2.0.6
toggle_switch: ^1.4.0
dash_chat: ^1.1.16
dash_chat_2: ^0.0.12
draggable_float_widget: ^0.0.2
settings_ui: ^2.0.2
flutter_breadcrumb: ^1.0.1
http: ^0.13.4
qr_code_scanner:
git:
url: https://github.com/Heap-Hop/qr_code_scanner.git
ref: fix_break_changes_platform
qr_code_scanner: ^1.0.0
zxing2: ^0.1.0
image_picker: ^0.8.5
image: ^3.1.3