diff --git a/lib/views/home/direct/direct_state.dart b/lib/views/home/direct/direct_state.dart index 0e66965..a4a14aa 100644 --- a/lib/views/home/direct/direct_state.dart +++ b/lib/views/home/direct/direct_state.dart @@ -1,4 +1,3 @@ -import 'dart:developer'; import 'dart:io'; import 'package:didvan/models/enums.dart'; diff --git a/lib/views/home/direct/widgets/message_box.dart b/lib/views/home/direct/widgets/message_box.dart index 090f409..897cff5 100644 --- a/lib/views/home/direct/widgets/message_box.dart +++ b/lib/views/home/direct/widgets/message_box.dart @@ -102,7 +102,7 @@ class _TypingState extends State<_Typing> { @override Widget build(BuildContext context) { - final state = context.read(); + final state = context.watch(); return Row( children: [ Expanded( @@ -115,7 +115,6 @@ class _TypingState extends State<_Typing> { ), child: state.text != null && state.text!.isNotEmpty ? DidvanIconButton( - key: const ValueKey(1), icon: DidvanIcons.send_solid, onPressed: () { _formKey.currentState!.reset(); @@ -125,7 +124,6 @@ class _TypingState extends State<_Typing> { color: Theme.of(context).colorScheme.focusedBorder, ) : DidvanIconButton( - key: const ValueKey(2), icon: DidvanIcons.mic_solid, onPressed: state.startRecording, size: 32, diff --git a/lib/views/home/studio/studio.dart b/lib/views/home/studio/studio.dart index 08c8e37..5f5f4ca 100644 --- a/lib/views/home/studio/studio.dart +++ b/lib/views/home/studio/studio.dart @@ -1,130 +1,26 @@ -import 'package:didvan/constants/app_icons.dart'; -import 'package:didvan/models/view/action_sheet_data.dart'; -import 'package:didvan/utils/action_sheet.dart'; -import 'package:didvan/views/home/studio/studio_state.dart'; -import 'package:didvan/views/home/studio/widgets/slider.dart'; -import 'package:didvan/views/home/studio/widgets/tab_bar.dart'; +import 'package:didvan/config/theme_data.dart'; +import 'package:didvan/constants/assets.dart'; import 'package:didvan/views/home/widgets/logo_app_bar.dart'; -import 'package:didvan/views/home/widgets/search_field.dart'; -import 'package:didvan/views/widgets/didvan/divider.dart'; -import 'package:didvan/views/widgets/didvan/icon_button.dart'; -import 'package:didvan/views/widgets/didvan/radial_button.dart'; -import 'package:didvan/views/widgets/item_title.dart'; +import 'package:didvan/views/widgets/state_handlers/empty_state.dart'; import 'package:flutter/material.dart'; -import 'package:provider/provider.dart'; -class Studio extends StatefulWidget { +class Studio extends StatelessWidget { const Studio({Key? key}) : super(key: key); - @override - State createState() => _StudioState(); -} - -class _StudioState extends State { - final FocusNode _focusNode = FocusNode(); - @override Widget build(BuildContext context) { - return CustomScrollView( - slivers: [ - SliverToBoxAdapter( - child: Row( - children: [ - const Expanded(child: LogoAppBar(type: 'studio')), - Padding( - padding: - EdgeInsets.only(top: MediaQuery.of(context).padding.top), - child: DidvanIconButton( - icon: DidvanIcons.bookmark_regular, - onPressed: () {}, - ), - ), - ], - ), - ), - const SliverToBoxAdapter( - child: StudioTabBar(), - ), - SliverToBoxAdapter( - child: Padding( - padding: const EdgeInsets.all(16.0), - child: SearchField( - title: 'جستجو در استودیو', - onChanged: (value) {}, - focusNode: _focusNode, - ), - ), - ), - const SliverToBoxAdapter( - child: StudioSlider(), - ), - const SliverPadding( - padding: EdgeInsets.symmetric(horizontal: 16), - sliver: SliverToBoxAdapter( - child: DidvanDivider( - verticalPadding: 0, - ), - ), - ), - SliverPadding( - padding: const EdgeInsets.symmetric(horizontal: 16), - sliver: SliverToBoxAdapter( - child: Row( - mainAxisAlignment: MainAxisAlignment.spaceBetween, - children: [ - const ItemTitle(title: 'تازه‌ترین‌ها'), - DidvanIconButton( - gestureSize: 36, - icon: DidvanIcons.sort_regular, - onPressed: _showSortDialog, - ), - ], - ), + return Column( + children: [ + const LogoAppBar(), + Expanded( + child: EmptyState( + asset: Assets.emptyStudio, + title: 'استودیو آینده', + subtitle: 'به زودی...', + titleColor: Theme.of(context).colorScheme.title, ), ), ], ); } - - void _showSortDialog() { - final state = context.read(); - ActionSheetUtils.showBottomSheet( - data: ActionSheetData( - content: StatefulBuilder( - builder: (context, setState) => Column( - children: [ - DidvanRadialButton( - title: 'جدیدترین‌ها', - onSelected: () => setState( - () => state.selectedSortTypeIndex = 0, - ), - value: state.selectedSortTypeIndex == 0, - ), - const SizedBox(height: 24), - DidvanRadialButton( - title: 'پربازدیدترین‌ها', - onSelected: () => setState( - () => state.selectedSortTypeIndex = 1, - ), - value: state.selectedSortTypeIndex == 1, - ), - const SizedBox(height: 24), - DidvanRadialButton( - title: 'پربحث‌ترین‌ها', - onSelected: () => setState( - () => state.selectedSortTypeIndex = 2, - ), - value: state.selectedSortTypeIndex == 2, - ), - ], - ), - ), - title: 'مرتب‌‌سازی', - titleIcon: DidvanIcons.sort_regular, - hasDismissButton: false, - confrimTitle: 'مرتب سازی', - onConfirmed: () {}, - ), - ); - } } diff --git a/pubspec.yaml b/pubspec.yaml index f732c01..ee9c773 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -15,7 +15,7 @@ publish_to: 'none' # Remove this line if you wish to publish to pub.dev # In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion. # Read more about iOS versioning at # https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html -version: 1.0.0+1 +version: 1.0.5+5 environment: sdk: ">=2.12.0 <3.0.0"