Skip to content

Commit 7dae96e

Browse files
committed
Publishing Updations
1 parent 2b55045 commit 7dae96e

File tree

15 files changed

+93
-56
lines changed

15 files changed

+93
-56
lines changed

lib/application/home/home_state.dart

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,6 @@ class HomeState with _$HomeState {
77
}) = _HomeState;
88

99
factory HomeState.initial() {
10-
return HomeState(isVisible: false);
10+
return const HomeState(isVisible: false);
1111
}
1212
}

lib/application/playlist_info/playlist_info_state.dart

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,6 @@ class PlaylistInfoState with _$PlaylistInfoState {
88
}) = _PlaylistInfoState;
99

1010
factory PlaylistInfoState.initial() {
11-
return PlaylistInfoState(playlistSongs: [], finalPlaylistSongs: []);
11+
return const PlaylistInfoState(playlistSongs: [], finalPlaylistSongs: []);
1212
}
1313
}

lib/application/recent/recent_state.dart

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,6 @@ class RecentState with _$RecentState {
88
}) = _RecentState;
99

1010
factory RecentState.initial() {
11-
return RecentState(finalRecentSongs: [], recentSongs: []);
11+
return const RecentState(finalRecentSongs: [], recentSongs: []);
1212
}
1313
}

lib/domain/play_song.dart

+2-2
Original file line numberDiff line numberDiff line change
@@ -31,11 +31,11 @@ class playSong {
3131
artist: element.artist,
3232
id: element.id.toString())));
3333
}
34-
if (_finalRecentSongs.length < 15 &&
34+
if (_finalRecentSongs.length < 10 &&
3535
!checkAdded(songsinlist[index].metas.title.toString(), _recentSongs)) {
3636
_finalRecentSongs.add(songsinlist[index]);
3737
addRecDb(_recentSongs, _finalRecentSongs);
38-
} else if (_finalRecentSongs.length < 15 &&
38+
} else if (_finalRecentSongs.length < 10 &&
3939
checkAdded(songsinlist[index].metas.title.toString(), _recentSongs)) {
4040
_finalRecentSongs.insert(_finalRecentSongs.length, songsinlist[index]);
4141
_finalRecentSongs.removeAt(_finalRecentSongs.indexOf(songsinlist[index]));

lib/presentation/home/home_page.dart

+1-7
Original file line numberDiff line numberDiff line change
@@ -6,20 +6,14 @@ import 'package:music_player/core/constants.dart';
66
import 'package:music_player/presentation/home/widgets/current_playing.dart';
77
import 'package:music_player/presentation/home/widgets/search.dart';
88
import 'package:music_player/presentation/home/widgets/songs_list.dart';
9-
import 'package:music_player/presentation/now_playing/now_playing.dart';
109
import 'package:music_player/presentation/settings/settings.dart';
1110
import 'package:music_player/domain/play_song.dart';
1211
import 'package:music_player/presentation/home/widgets/top_cards.dart';
1312
import 'package:music_player/splash.dart';
1413

15-
class HomePage extends StatefulWidget {
14+
class HomePage extends StatelessWidget {
1615
const HomePage({Key? key}) : super(key: key);
1716

18-
@override
19-
State<HomePage> createState() => _HomePageState();
20-
}
21-
22-
class _HomePageState extends State<HomePage> {
2317
@override
2418
Widget build(BuildContext context) {
2519
final double screenheight = MediaQuery.of(context).size.height;

lib/presentation/home/widgets/current_playing.dart

+28-9
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
//Current Playing Song at Home screen Bottom
21
import 'package:assets_audio_player/assets_audio_player.dart';
32
import 'package:flutter/material.dart';
3+
import 'package:marquee/marquee.dart';
44
import 'package:music_player/core/constants.dart';
55
import 'package:music_player/presentation/now_playing/now_playing.dart';
66
import 'package:on_audio_query/on_audio_query.dart';
@@ -50,27 +50,46 @@ class crntplayinghom extends StatelessWidget {
5050
onTap: () {
5151
Navigator.of(context)
5252
.push(MaterialPageRoute(builder: (context) {
53-
return NowPlaying();
53+
return const NowPlaying();
5454
}));
5555
},
5656
child: Row(
5757
children: [
58+
// Song Image
5859
audioImage(realtimePlayingInfos),
60+
5961
const SizedBox(
6062
width: 15,
6163
),
64+
6265
Column(
6366
mainAxisAlignment: MainAxisAlignment.center,
6467
crossAxisAlignment: CrossAxisAlignment.start,
6568
children: [
69+
// Song Name
6670
SizedBox(
67-
width: 120,
68-
child: Text(
69-
audioPlayer.getCurrentAudioTitle,
70-
style: whitetxt15,
71-
overflow: TextOverflow.ellipsis,
72-
),
73-
),
71+
width: 120,
72+
height: 25,
73+
child: Marquee(
74+
text:
75+
audioPlayer.getCurrentAudioTitle,
76+
style: whitetxt15,
77+
scrollAxis: Axis.horizontal,
78+
blankSpace: 50,
79+
velocity: 30,
80+
pauseAfterRound:
81+
const Duration(seconds: 1),
82+
showFadingOnlyWhenScrolling: true,
83+
fadingEdgeStartFraction: 0.1,
84+
fadingEdgeEndFraction: 0.1,
85+
startPadding: 10,
86+
accelerationDuration:
87+
const Duration(seconds: 1),
88+
accelerationCurve: Curves.linear,
89+
decelerationDuration:
90+
const Duration(milliseconds: 500),
91+
decelerationCurve: Curves.easeOut,
92+
)),
7493
SizedBox(
7594
width: 120,
7695
child: Text(

lib/presentation/home/widgets/songs_list.dart

-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@ import 'package:flutter/material.dart';
55
import 'package:flutter_bloc/flutter_bloc.dart';
66
import 'package:music_player/application/favorite/favorite_bloc.dart';
77
import 'package:music_player/core/constants.dart';
8-
import 'package:music_player/presentation/favorite/favourites.dart';
98
import 'package:music_player/presentation/playlist/widgets/add_playlist.dart';
109
import 'package:music_player/splash.dart';
1110
import 'package:on_audio_query/on_audio_query.dart';

lib/presentation/home/widgets/top_cards.dart

+1-1
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ class TopHomeCards extends StatelessWidget {
4747
InkWell(
4848
onTap: () {
4949
Navigator.of(context).push(MaterialPageRoute(builder: (context) {
50-
return Favourites();
50+
return const Favourites();
5151
}));
5252
},
5353
child: Container(

lib/presentation/now_playing/now_playing.dart

+45-8
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ import 'dart:ui';
22

33
import 'package:assets_audio_player/assets_audio_player.dart';
44
import 'package:flutter/material.dart';
5+
import 'package:marquee/marquee.dart';
56
import 'package:music_player/core/constants.dart';
67
import 'package:music_player/presentation/now_playing/widgets/add_fav_button.dart';
78
import 'package:music_player/presentation/now_playing/widgets/add_playlist_button.dart';
@@ -75,13 +76,25 @@ class NowPlaying extends StatelessWidget {
7576

7677
//Songs Name
7778
SizedBox(
78-
width: 200,
79-
child: Text(
80-
audioPlayer.getCurrentAudioTitle,
81-
style: whitetxt22,
82-
overflow: TextOverflow.ellipsis,
83-
),
84-
),
79+
width: 280,
80+
height: 50,
81+
child: Marquee(
82+
text: audioPlayer.getCurrentAudioTitle,
83+
style: whitetxt22,
84+
scrollAxis: Axis.horizontal,
85+
blankSpace: 50,
86+
velocity: 30,
87+
pauseAfterRound: const Duration(seconds: 1),
88+
showFadingOnlyWhenScrolling: true,
89+
fadingEdgeStartFraction: 0.1,
90+
fadingEdgeEndFraction: 0.1,
91+
startPadding: 10,
92+
accelerationDuration: const Duration(seconds: 1),
93+
accelerationCurve: Curves.linear,
94+
decelerationDuration:
95+
const Duration(milliseconds: 500),
96+
decelerationCurve: Curves.easeOut,
97+
)),
8598
SizedBox(height: screenSize.height * 0.035),
8699

87100
//Bottom controls Container
@@ -105,12 +118,36 @@ class NowPlaying extends StatelessWidget {
105118
// Add Favorites Button
106119
AddFavButtonWidget(),
107120

121+
IconButton(
122+
onPressed: () {
123+
audioPlayer.toggleShuffle();
124+
ScaffoldMessenger.of(context)
125+
.showSnackBar(SnackBar(
126+
content: const Text('Shuffled songs'),
127+
backgroundColor: Colors.purple[600],
128+
margin: EdgeInsets.only(
129+
bottom: screenSize.height * 0.12,
130+
left: screenSize.height * 0.15,
131+
right: screenSize.height * 0.15),
132+
behavior: SnackBarBehavior.floating,
133+
duration: const Duration(seconds: 1),
134+
shape: RoundedRectangleBorder(
135+
borderRadius:
136+
BorderRadius.circular(20)),
137+
));
138+
},
139+
icon: const Icon(
140+
Icons.shuffle_rounded,
141+
color: white,
142+
size: 30,
143+
)),
144+
108145
// Add Playlist Button
109146
const AddPlaylistButtonWidget()
110147
],
111148
),
112149
SizedBox(
113-
height: screenSize.height * 0.045,
150+
height: screenSize.height * 0.04,
114151
),
115152

116153
//Slider bar

lib/presentation/playlist/widgets/add_playlist.dart

-2
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,7 @@ import 'package:music_player/application/playlist_info/playlist_info_bloc.dart';
55
import 'package:music_player/core/constants.dart';
66
import 'package:music_player/domain/model/data_model.dart';
77
import 'package:music_player/presentation/home/widgets/songs_list.dart';
8-
import 'package:music_player/presentation/playlist/playlist.dart';
98
import 'package:music_player/presentation/playlist/widgets/create_playlist.dart';
10-
import 'package:music_player/presentation/playlist_info/playlist_info.dart';
119
import 'package:music_player/splash.dart';
1210

1311
addToPlaylist(BuildContext context, audioModel element) {

lib/presentation/playlist/widgets/create_playlist.dart

+1-2
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ import 'package:music_player/core/constants.dart';
77
import 'package:music_player/domain/model/data_model.dart';
88
import 'package:music_player/presentation/playlist/playlist.dart';
99
import 'package:music_player/presentation/playlist/widgets/add_playlist.dart';
10-
import 'package:music_player/presentation/playlist_info/playlist_info.dart';
1110
import 'package:music_player/splash.dart';
1211

1312
createPlaylist(
@@ -36,7 +35,7 @@ createPlaylist(
3635
children: [
3736
const Text(
3837
'Create Playlist',
39-
style: const TextStyle(
38+
style: TextStyle(
4039
color: white,
4140
fontSize: 22,
4241
fontWeight: FontWeight.bold,

lib/presentation/recent/recent.dart

+3-1
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,7 @@ class Recent extends StatelessWidget {
5050
),
5151
)
5252
: ListView.builder(
53+
physics: const BouncingScrollPhysics(),
5354
itemCount: state.finalRecentSongs.length,
5455
itemBuilder: (context, index) {
5556
return InkWell(
@@ -60,7 +61,8 @@ class Recent extends StatelessWidget {
6061
.add(const HomeEvent.songPlayed());
6162
},
6263
child: Songs(
63-
songData: state.finalRecentSongs[index],
64+
songData: state.finalRecentSongs[
65+
(state.finalRecentSongs.length - index) - 1],
6466
index: index),
6567
);
6668
}),

lib/presentation/settings/settings.dart

+2-3
Original file line numberDiff line numberDiff line change
@@ -94,8 +94,7 @@ class Settings extends StatelessWidget {
9494
showModalBottomSheet(
9595
backgroundColor: bggradient1,
9696
shape: const RoundedRectangleBorder(
97-
borderRadius:
98-
const BorderRadius.vertical(top: Radius.circular(25))),
97+
borderRadius: BorderRadius.vertical(top: Radius.circular(25))),
9998
context: ctx,
10099
builder: (context) {
101100
return Padding(
@@ -111,7 +110,7 @@ class Settings extends StatelessWidget {
111110
height: 20,
112111
),
113112
const Text(
114-
'Version 1.0.0',
113+
'Version 1.0.1',
115114
style: whitetxt15,
116115
),
117116
const SizedBox(

lib/splash.dart

+6-16
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ import 'package:hive/hive.dart';
66
import 'package:music_player/core/constants.dart';
77
import 'package:music_player/domain/model/data_model.dart';
88
import 'package:music_player/presentation/home/home_page.dart';
9-
import 'package:music_player/presentation/settings/settings.dart';
109
import 'package:on_audio_query/on_audio_query.dart';
1110
import 'package:shared_preferences/shared_preferences.dart';
1211

@@ -19,26 +18,14 @@ List<audioModel> dbsongs = [];
1918
List<Audio> finalsonglist = [];
2019
late bool prefbool;
2120

22-
class SplashScreen extends StatefulWidget {
21+
class SplashScreen extends StatelessWidget {
2322
const SplashScreen({Key? key}) : super(key: key);
2423

25-
@override
26-
State<SplashScreen> createState() => _SplashScreenState();
27-
}
28-
29-
class _SplashScreenState extends State<SplashScreen> {
30-
@override
31-
void initState() {
32-
super.initState();
33-
gotoHome();
34-
}
35-
36-
Future gotoHome() async {
37-
await Future.delayed(Duration(seconds: 2));
24+
Future gotoHome(BuildContext context) async {
3825
await requestPermission();
3926
await checkNoti();
4027
Navigator.of(context).pushReplacement(MaterialPageRoute(builder: (context) {
41-
return HomePage();
28+
return const HomePage();
4229
}));
4330
}
4431

@@ -106,6 +93,9 @@ class _SplashScreenState extends State<SplashScreen> {
10693

10794
@override
10895
Widget build(BuildContext context) {
96+
WidgetsBinding.instance!.addPostFrameCallback((_) {
97+
gotoHome(context);
98+
});
10999
return Scaffold(
110100
backgroundColor: Colors.white,
111101
body: Center(

pubspec.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ publish_to: 'none' # Remove this line if you wish to publish to pub.dev
1515
# In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion.
1616
# Read more about iOS versioning at
1717
# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html
18-
version: 1.0.0+1
18+
version: 1.0.1+2
1919

2020
environment:
2121
sdk: ">=2.16.2 <3.0.0"

0 commit comments

Comments
 (0)