mirror of
https://github.com/KRTirtho/spotube.git
synced 2025-09-13 07:55:18 +00:00
feat: dialog logo for macos, settings more width for country picker
This commit is contained in:
parent
2211505d71
commit
5e96913ba3
@ -32,7 +32,7 @@ class Sidebar extends HookConsumerWidget {
|
||||
Key? key,
|
||||
}) : super(key: key);
|
||||
|
||||
Widget _buildSmallLogo() {
|
||||
static Widget brandLogo() {
|
||||
return Image.asset(
|
||||
"assets/spotube-logo.png",
|
||||
height: 50,
|
||||
@ -135,7 +135,7 @@ class Sidebar extends HookConsumerWidget {
|
||||
(extended.value)
|
||||
? Row(
|
||||
children: [
|
||||
_buildSmallLogo(),
|
||||
brandLogo(),
|
||||
const SizedBox(
|
||||
width: 10,
|
||||
),
|
||||
@ -149,7 +149,7 @@ class Sidebar extends HookConsumerWidget {
|
||||
),
|
||||
],
|
||||
)
|
||||
: _buildSmallLogo(),
|
||||
: brandLogo(),
|
||||
],
|
||||
),
|
||||
windowsFooterItems: [
|
||||
|
@ -16,6 +16,7 @@ class UserLibrary extends ConsumerWidget {
|
||||
length: 5,
|
||||
child: SafeArea(
|
||||
child: PlatformTabView(
|
||||
androidIsScrollable: true,
|
||||
placement: PlatformProperty.all(PlatformTabbarPlacement.top),
|
||||
body: {
|
||||
PlatformTab(
|
||||
|
@ -2,6 +2,7 @@ import 'package:flutter/material.dart';
|
||||
import 'package:flutter_hooks/flutter_hooks.dart';
|
||||
import 'package:hooks_riverpod/hooks_riverpod.dart';
|
||||
import 'package:platform_ui/platform_ui.dart';
|
||||
import 'package:spotube/components/Home/Sidebar.dart';
|
||||
import 'package:spotube/components/Lyrics/SyncedLyrics.dart';
|
||||
|
||||
class LyricDelayAdjustDialog extends HookConsumerWidget {
|
||||
@ -17,6 +18,7 @@ class LyricDelayAdjustDialog extends HookConsumerWidget {
|
||||
double.tryParse(controller.text.replaceAll("ms", "")) ?? 0;
|
||||
|
||||
return PlatformAlertDialog(
|
||||
icon: Sidebar.brandLogo(),
|
||||
title: const Center(child: Text("Adjust Lyrics Delay")),
|
||||
secondaryActions: [
|
||||
PlatformFilledButton(
|
||||
|
@ -98,7 +98,6 @@ class PlayerControls extends HookConsumerWidget {
|
||||
PlatformTooltip(
|
||||
message: "Slide to seek forward or backward",
|
||||
child: PlatformSlider(
|
||||
focusNode: FocusNode(),
|
||||
// cannot divide by zero
|
||||
// there's an edge case for value being bigger
|
||||
// than total duration. Keeping it resolved
|
||||
|
@ -3,6 +3,7 @@ import 'package:flutter/material.dart';
|
||||
import 'package:flutter_hooks/flutter_hooks.dart';
|
||||
import 'package:hooks_riverpod/hooks_riverpod.dart';
|
||||
import 'package:platform_ui/platform_ui.dart';
|
||||
import 'package:spotube/components/Home/Sidebar.dart';
|
||||
import 'package:spotube/provider/SpotifyDI.dart';
|
||||
import 'package:spotube/provider/SpotifyRequests.dart';
|
||||
|
||||
@ -25,6 +26,7 @@ class PlaylistCreateDialog extends HookConsumerWidget {
|
||||
final collaborative = useState(false);
|
||||
|
||||
return PlatformAlertDialog(
|
||||
icon: Sidebar.brandLogo(),
|
||||
title: const Text("Create a Playlist"),
|
||||
primaryActions: [
|
||||
PlatformFilledButton(
|
||||
|
@ -2,6 +2,7 @@ import 'package:flutter/material.dart';
|
||||
import 'package:flutter_hooks/flutter_hooks.dart';
|
||||
import 'package:hooks_riverpod/hooks_riverpod.dart';
|
||||
import 'package:platform_ui/platform_ui.dart';
|
||||
import 'package:spotube/components/Home/Sidebar.dart';
|
||||
import 'package:spotube/provider/UserPreferences.dart';
|
||||
|
||||
final highContrast = MaterialColor(
|
||||
@ -67,6 +68,7 @@ class ColorSchemePickerDialog extends HookConsumerWidget {
|
||||
).key);
|
||||
|
||||
return PlatformAlertDialog(
|
||||
icon: Sidebar.brandLogo(),
|
||||
title: Text("Pick ${schemeType.name} color scheme"),
|
||||
primaryActions: [
|
||||
PlatformFilledButton(
|
||||
|
@ -315,7 +315,7 @@ class Settings extends HookConsumerWidget {
|
||||
"Recommendation Country",
|
||||
),
|
||||
trailing: (context, update) => ConstrainedBox(
|
||||
constraints: const BoxConstraints(maxWidth: 250),
|
||||
constraints: const BoxConstraints(maxWidth: 350),
|
||||
child: PlatformDropDownMenu(
|
||||
value: preferences.recommendationMarket,
|
||||
items: spotifyMarkets
|
||||
|
@ -1,6 +1,7 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_hooks/flutter_hooks.dart';
|
||||
import 'package:platform_ui/platform_ui.dart';
|
||||
import 'package:spotube/components/Home/Sidebar.dart';
|
||||
import 'package:spotube/hooks/useBreakpoints.dart';
|
||||
|
||||
class AdaptiveListTile extends HookWidget {
|
||||
@ -39,6 +40,7 @@ class AdaptiveListTile extends HookWidget {
|
||||
builder: (context) {
|
||||
return StatefulBuilder(builder: (context, update) {
|
||||
return PlatformAlertDialog(
|
||||
icon: Sidebar.brandLogo(),
|
||||
title: title != null
|
||||
? Row(
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
|
@ -1,5 +1,6 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:platform_ui/platform_ui.dart';
|
||||
import 'package:spotube/components/Home/Sidebar.dart';
|
||||
import 'package:spotube/components/Shared/UniversalImage.dart';
|
||||
|
||||
class DownloadConfirmationDialog extends StatelessWidget {
|
||||
@ -8,6 +9,7 @@ class DownloadConfirmationDialog extends StatelessWidget {
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return PlatformAlertDialog(
|
||||
icon: Sidebar.brandLogo(),
|
||||
title: Padding(
|
||||
padding: const EdgeInsets.all(15),
|
||||
child: Row(
|
||||
|
@ -1,4 +1,5 @@
|
||||
import 'package:bitsdojo_window/bitsdojo_window.dart';
|
||||
import 'package:fluent_ui/fluent_ui.dart' show FluentTheme;
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:platform_ui/platform_ui.dart';
|
||||
import 'package:spotube/utils/platform.dart';
|
||||
@ -112,7 +113,8 @@ class PageWindowTitleBar extends StatelessWidget
|
||||
}
|
||||
return WindowTitleBarBox(
|
||||
child: Container(
|
||||
color: backgroundColor,
|
||||
color: backgroundColor ??
|
||||
FluentTheme.maybeOf(context)?.micaBackgroundColor,
|
||||
child: Row(
|
||||
children: [
|
||||
if (kIsMacOS)
|
||||
|
@ -2,6 +2,7 @@ import 'package:flutter/material.dart';
|
||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||
import 'package:platform_ui/platform_ui.dart';
|
||||
import 'package:spotify/spotify.dart';
|
||||
import 'package:spotube/components/Home/Sidebar.dart';
|
||||
|
||||
final replaceDownloadedFileState = StateProvider<bool?>((ref) => null);
|
||||
|
||||
@ -15,6 +16,7 @@ class ReplaceDownloadedFileDialog extends ConsumerWidget {
|
||||
final groupValue = ref.watch(replaceDownloadedFileState);
|
||||
|
||||
return PlatformAlertDialog(
|
||||
icon: Sidebar.brandLogo(),
|
||||
title: Text("Track ${track.name} Already Exists"),
|
||||
content: Column(
|
||||
mainAxisSize: MainAxisSize.min,
|
||||
|
@ -4,6 +4,7 @@ import 'package:flutter_hooks/flutter_hooks.dart';
|
||||
import 'package:hooks_riverpod/hooks_riverpod.dart';
|
||||
import 'package:platform_ui/platform_ui.dart';
|
||||
import 'package:spotify/spotify.dart' hide Image;
|
||||
import 'package:spotube/components/Home/Sidebar.dart';
|
||||
import 'package:spotube/components/Shared/AdaptivePopupMenuButton.dart';
|
||||
import 'package:spotube/components/Shared/HeartButton.dart';
|
||||
import 'package:spotube/components/Shared/LinkText.dart';
|
||||
@ -95,6 +96,7 @@ class TrackTile extends HookConsumerWidget {
|
||||
return HookBuilder(builder: (context) {
|
||||
final playlistsCheck = useState(<String, bool>{});
|
||||
return PlatformAlertDialog(
|
||||
icon: Sidebar.brandLogo(),
|
||||
title: PlatformText(
|
||||
"Add `${track.value.name}` to following Playlists",
|
||||
style: const TextStyle(
|
||||
|
@ -6,6 +6,7 @@ import 'package:flutter_hooks/flutter_hooks.dart';
|
||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||
import 'package:http/http.dart' as http;
|
||||
import 'package:platform_ui/platform_ui.dart';
|
||||
import 'package:spotube/components/Home/Sidebar.dart';
|
||||
import 'package:spotube/components/Shared/AnchorButton.dart';
|
||||
import 'package:spotube/hooks/usePackageInfo.dart';
|
||||
import 'package:spotube/provider/UserPreferences.dart';
|
||||
@ -56,6 +57,7 @@ void useUpdateChecker(WidgetRef ref) {
|
||||
const url =
|
||||
"https://spotube.netlify.app/other-downloads/stable-downloads";
|
||||
return PlatformAlertDialog(
|
||||
icon: Sidebar.brandLogo(),
|
||||
title: const PlatformText("Spotube has an update"),
|
||||
primaryActions: [
|
||||
PlatformFilledButton(
|
||||
|
@ -199,7 +199,7 @@ class SpotubeState extends ConsumerState<Spotube> with WidgetsBindingObserver {
|
||||
};
|
||||
}, []);
|
||||
|
||||
platform = TargetPlatform.android;
|
||||
platform = TargetPlatform.macOS;
|
||||
|
||||
return PlatformApp.router(
|
||||
routeInformationParser: router.routeInformationParser,
|
||||
|
@ -72,7 +72,7 @@ ThemeData darkTheme({
|
||||
),
|
||||
dialogTheme: DialogTheme(backgroundColor: backgroundMaterialColor[900]),
|
||||
cardColor: backgroundMaterialColor[800],
|
||||
canvasColor: backgroundMaterialColor[900],
|
||||
canvasColor: backgroundMaterialColor[800],
|
||||
listTileTheme: const ListTileThemeData(horizontalTitleGap: 0),
|
||||
checkboxTheme: CheckboxThemeData(
|
||||
fillColor: MaterialStateProperty.resolveWith((states) {
|
||||
|
Loading…
Reference in New Issue
Block a user