You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
200 lines
9.4 KiB
Dart
200 lines
9.4 KiB
Dart
// import 'dart:ui';
|
|
//
|
|
// import 'package:diplomaticquarterapp/voipcall/consts.dart';
|
|
// import 'package:diplomaticquarterapp/voipcall/model/call.dart';
|
|
// import 'package:diplomaticquarterapp/voipcall/provider/chat_call_provider.dart';
|
|
// import 'package:flutter/material.dart';
|
|
// import 'package:flutter_svg/flutter_svg.dart';
|
|
// import 'package:flutter_webrtc/flutter_webrtc.dart';
|
|
// import 'package:provider/provider.dart';
|
|
//
|
|
// class OutGoingCall extends StatefulWidget {
|
|
// CallDataModel? outGoingCallData;
|
|
// bool isVideoCall;
|
|
//
|
|
// OutGoingCall({Key? key, this.outGoingCallData, this.isVideoCall = false}) : super(key: key);
|
|
//
|
|
// @override
|
|
// _OutGoingCallState createState() => _OutGoingCallState();
|
|
// }
|
|
//
|
|
// class _OutGoingCallState extends State<OutGoingCall> {
|
|
// ChatCallProvider? callProvider;
|
|
// //late ChatProviderModel chatProvider;
|
|
// bool loader = true;
|
|
//
|
|
// @override
|
|
// void initState() {
|
|
// super.initState();
|
|
// }
|
|
//
|
|
// Future<void> init() async {
|
|
// // widget.isVideoCall ? callProvider!.isVideoCall = true : callProvider!.isVideoCall = false;
|
|
// widget.isVideoCall = true;
|
|
// callProvider!.isOutGoingCall = true;
|
|
// // IosCallPayload payload = IosCallPayload(
|
|
// // incomingCallerId: widget.outGoingCallData.callerId.toString(),
|
|
// // incomingCallerName: widget.outGoingCallData.callerName,
|
|
// // incomingCallReciverId: widget.outGoingCallData.receiverId.toString(),
|
|
// // incomingCallType: widget.outGoingCallData.callType,
|
|
// // uuid: "",
|
|
// // callData: widget.outGoingCallData.toRawJson());
|
|
// // await Utils.saveStringFromPrefs("iosCallPayload", jsonEncode(payload));
|
|
// await callProvider!.initLocalCamera(callData: widget.outGoingCallData);
|
|
// loader = false;
|
|
// }
|
|
//
|
|
// @override
|
|
// void dispose() {
|
|
// super.dispose();
|
|
// }
|
|
//
|
|
// @override
|
|
// Widget build(BuildContext context) {
|
|
// callProvider = Provider.of<ChatCallProvider>(context, listen: false);
|
|
// init();
|
|
// return Scaffold(
|
|
// body: Consumer<ChatCallProvider>(builder: (BuildContext context, ChatCallProvider chatcp, Widget? child) {
|
|
// return loader
|
|
// ? const Center(
|
|
// child: CircularProgressIndicator(),
|
|
// )
|
|
// : Stack(
|
|
// alignment: FractionalOffset.center,
|
|
// children: <Widget>[
|
|
// if (chatcp.isVideoCall)
|
|
// Positioned.fill(
|
|
// child: RTCVideoView(
|
|
// chatcp.localVideoRenderer!,
|
|
// objectFit: RTCVideoViewObjectFit.RTCVideoViewObjectFitCover,
|
|
// ),
|
|
// ),
|
|
// Positioned.fill(
|
|
// child: ClipRect(
|
|
// child: BackdropFilter(
|
|
// filter: ImageFilter.blur(sigmaX: 5.0, sigmaY: 5.0),
|
|
// child: Container(
|
|
// decoration: BoxDecoration(
|
|
// color: MyColors.grey57Color.withOpacity(
|
|
// 0.3,
|
|
// ),
|
|
// ),
|
|
// child: Column(
|
|
// crossAxisAlignment: CrossAxisAlignment.start,
|
|
// mainAxisSize: MainAxisSize.max,
|
|
// children: <Widget>[
|
|
// SizedBox(
|
|
// height: 40,
|
|
// ),
|
|
// Row(
|
|
// crossAxisAlignment: CrossAxisAlignment.center,
|
|
// mainAxisAlignment: MainAxisAlignment.center,
|
|
// children: <Widget>[
|
|
// Container(
|
|
// margin: const EdgeInsets.all(21.0),
|
|
// child: Container(
|
|
// margin: const EdgeInsets.only(
|
|
// left: 10.0,
|
|
// right: 10.0,
|
|
// ),
|
|
// child: Column(
|
|
// crossAxisAlignment: CrossAxisAlignment.center,
|
|
// mainAxisSize: MainAxisSize.min,
|
|
// mainAxisAlignment: MainAxisAlignment.spaceAround,
|
|
// children: <Widget>[
|
|
// SvgPicture.asset(
|
|
// "assets/images/user.svg",
|
|
// height: 70,
|
|
// width: 70,
|
|
// fit: BoxFit.cover,
|
|
// ),
|
|
// SizedBox(
|
|
// height: 10,
|
|
// ),
|
|
// Text(
|
|
// widget.outGoingCallData!.receiverName.toString().replaceAll(".", " "),
|
|
// style: const TextStyle(
|
|
// fontSize: 21,
|
|
// fontWeight: FontWeight.bold,
|
|
// color: MyColors.white,
|
|
// letterSpacing: -1.26,
|
|
// height: 23 / 12,
|
|
// ),
|
|
// ),
|
|
// const Text(
|
|
// "Ringing...",
|
|
// style: TextStyle(
|
|
// fontSize: 16,
|
|
// fontWeight: FontWeight.w600,
|
|
// color: Color(
|
|
// 0xffC6C6C6,
|
|
// ),
|
|
// letterSpacing: -0.48,
|
|
// height: 23 / 24,
|
|
// ),
|
|
// ),
|
|
// const SizedBox(
|
|
// height: 2,
|
|
// ),
|
|
// ],
|
|
// ),
|
|
// ),
|
|
// ),
|
|
// ],
|
|
// ),
|
|
// const Spacer(),
|
|
// Container(
|
|
// margin: const EdgeInsets.only(
|
|
// bottom: 70.0,
|
|
// left: 49,
|
|
// right: 49,
|
|
// ),
|
|
// child: Row(
|
|
// mainAxisSize: MainAxisSize.max,
|
|
// mainAxisAlignment: MainAxisAlignment.center,
|
|
// children: <Widget>[
|
|
// RawMaterialButton(
|
|
// onPressed: () {
|
|
// chatcp.endCall(isUserOnline: chatcp.isUserOnline).then((bool value) {
|
|
// if (value) {
|
|
// Navigator.of(context).pop();
|
|
// }
|
|
// });
|
|
// },
|
|
// elevation: 2.0,
|
|
// fillColor: MyColors.redA3Color,
|
|
// padding: const EdgeInsets.all(
|
|
// 15.0,
|
|
// ),
|
|
// shape: const CircleBorder(),
|
|
// child: const Icon(
|
|
// Icons.call_end,
|
|
// color: MyColors.white,
|
|
// size: 35.0,
|
|
// ),
|
|
// ),
|
|
// ],
|
|
// ),
|
|
// ),
|
|
// ],
|
|
// ),
|
|
// ),
|
|
// ),
|
|
// ),
|
|
// ),
|
|
// ],
|
|
// );
|
|
// }),
|
|
// );
|
|
// }
|
|
//
|
|
// BoxDecoration cardRadius(double radius, {Color? color, double? elevation}) {
|
|
// return BoxDecoration(
|
|
// shape: BoxShape.rectangle,
|
|
// color: color ?? Colors.white,
|
|
// borderRadius: BorderRadius.all(Radius.circular(radius)),
|
|
// boxShadow: <BoxShadow>[BoxShadow(color: const Color(0xff000000).withOpacity(.05), blurRadius: elevation ?? 27, offset: const Offset(-2, 3))],
|
|
// );
|
|
// }
|
|
// }
|