From b4645aed122220d929b7c604f6d4c180982b7b53 Mon Sep 17 00:00:00 2001 From: Lucas Delanier Date: Sun, 30 Jul 2023 19:08:44 +0200 Subject: [PATCH] button post when music renseigned --- .../justMUSIC/assets/images/rocket_button.png | Bin 0 -> 17515 bytes .../lib/components/city_list_component.dart | 2 +- .../lib/components/post_button_component.dart | 159 +++++++++++++++--- .../justMUSIC/lib/screens/post_screen.dart | 2 +- .../lib/screens/search_song_screen.dart | 1 + 5 files changed, 141 insertions(+), 23 deletions(-) create mode 100644 Sources/justMUSIC/assets/images/rocket_button.png diff --git a/Sources/justMUSIC/assets/images/rocket_button.png b/Sources/justMUSIC/assets/images/rocket_button.png new file mode 100644 index 0000000000000000000000000000000000000000..2b27406d3c976482854158c3053dbfb63b23affb GIT binary patch literal 17515 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 createState() => _PostButtonComponentState(); +} + +class _PostButtonComponentState extends State + with SingleTickerProviderStateMixin { + late AnimationController _controller; + + @override + void initState() { + super.initState(); + _controller = AnimationController( + animationBehavior: AnimationBehavior.normal, + vsync: this, + duration: Duration(milliseconds: 1500), + ); + + _controller.addStatusListener((status) { + if (status == AnimationStatus.completed) { + _controller.reverse(); + } else if (status == AnimationStatus.dismissed) { + _controller.forward(); + } + }); + + _controller.forward(); + } @override Widget build(BuildContext context) { + if (widget.empty) { + return Container( + constraints: BoxConstraints(maxWidth: 400), + decoration: BoxDecoration( + gradient: LinearGradient(colors: [ + Color(0xFF141414), + Color(0xFF272727), + Color(0xFF141414) + ]), + borderRadius: BorderRadius.circular(10000)), + padding: EdgeInsets.symmetric(vertical: 25), + width: double.infinity, + child: Align( + child: Text( + "Publier la capsule", + style: GoogleFonts.plusJakartaSans( + color: Color(0xFF474747), + fontWeight: FontWeight.w800, + fontStyle: FontStyle.italic, + fontSize: 24), + ), + ), + ); + } return Container( - constraints: BoxConstraints(maxWidth: 400), - decoration: BoxDecoration( - gradient: LinearGradient(colors: [ - Color(0xFF141414), - Color(0xFF272727), - Color(0xFF141414) - ]), - borderRadius: BorderRadius.circular(10000)), - padding: EdgeInsets.symmetric(vertical: 25), width: double.infinity, - child: Align( - child: Text( - "Publier la capsule", - style: GoogleFonts.plusJakartaSans( - color: Color(0xFF474747), - fontWeight: FontWeight.w800, - fontStyle: FontStyle.italic, - fontSize: 24), - ), + height: 90, + clipBehavior: Clip.hardEdge, + decoration: BoxDecoration( + color: Colors.transparent, borderRadius: BorderRadius.circular(1000)), + child: Stack( + children: [ + AnimatedBuilder( + animation: _controller, + builder: (context, child) { + return Transform.translate( + offset: Offset( + _controller.value * (MediaQuery.of(context).size.width - 200), + 0, + ), + child: child, + ); + }, + child: Container( + width: 120, + height: 80, + alignment: Alignment.center, + decoration: BoxDecoration( + gradient: LinearGradient(colors: [ + Color(0xFF9E78FF).withOpacity(0.0), + Color(0xFFFDFDFF), + Color(0xFFFFFFFF), + Color(0xFF9E78FF).withOpacity(0.0) + ], stops: const [ + 0, + 0.4, + 0.5, + 1 + ]), + ), + ), + ), + BackdropFilter( + filter: ImageFilter.blur( + sigmaX: 10.0, + sigmaY: 10.0, + ), + child: Opacity( + opacity: 0.9, + child: Container( + constraints: BoxConstraints(maxWidth: 400), + decoration: BoxDecoration( + gradient: LinearGradient(colors: [ + Color(0xFF633AF4), + Color(0xFF9367FF), + Color(0xFF633AF4) + ]), + border: Border.all(width: 5, color: Color(0xFF1C1C1C)), + borderRadius: BorderRadius.circular(10000)), + padding: EdgeInsets.symmetric(vertical: 25), + width: double.infinity, + child: Padding( + padding: EdgeInsets.only(left: 100), + child: Text( + "Publier la capsule", + style: GoogleFonts.plusJakartaSans( + color: Colors.white, + fontWeight: FontWeight.w700, + fontStyle: FontStyle.italic, + fontSize: 22), + ), + ), + ), + )), + ClipOval( + child: Positioned( + left: -15, + child: Padding( + padding: const EdgeInsets.only(left: 5, top: 5), + child: Image( + image: AssetImage("assets/images/rocket_button.png"), + height: 65, + ), + ), + ), + ) + ], ), ); } diff --git a/Sources/justMUSIC/lib/screens/post_screen.dart b/Sources/justMUSIC/lib/screens/post_screen.dart index 1f53d8b..65cc130 100644 --- a/Sources/justMUSIC/lib/screens/post_screen.dart +++ b/Sources/justMUSIC/lib/screens/post_screen.dart @@ -111,7 +111,7 @@ class _PostScreenState extends State SizedBox( height: 40.h, ), - PostButtonComponent(), + PostButtonComponent(empty: selectedMusic == null), SizedBox( height: 40.h, ), diff --git a/Sources/justMUSIC/lib/screens/search_song_screen.dart b/Sources/justMUSIC/lib/screens/search_song_screen.dart index 02dc64a..ae104a6 100644 --- a/Sources/justMUSIC/lib/screens/search_song_screen.dart +++ b/Sources/justMUSIC/lib/screens/search_song_screen.dart @@ -115,6 +115,7 @@ class _SearchSongScreenState extends State { child: SizedBox( height: 40, child: TextField( + autofocus: true, controller: _textEditingController, keyboardAppearance: Brightness.dark, onEditingComplete: resetFullScreen,