[Bugfix] Show playing item title in VideoPlayer_Controls

This commit is contained in:
PartyDonut 2024-10-11 13:36:36 +02:00
parent 663789ecab
commit ae1446ddbb
2 changed files with 48 additions and 38 deletions

View file

@ -1,7 +1,8 @@
// ignore_for_file: public_member_api_docs, sort_constructors_first
import 'package:fladder/util/humanize_duration.dart';
import 'package:flutter/material.dart';
import 'package:dart_mappable/dart_mappable.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:fladder/jellyfin/jellyfin_open_api.swagger.dart' as dto;
@ -13,8 +14,7 @@ import 'package:fladder/models/items/item_stream_model.dart';
import 'package:fladder/models/items/media_streams_model.dart';
import 'package:fladder/models/items/overview_model.dart';
import 'package:fladder/screens/details_screens/movie_detail_screen.dart';
import 'package:dart_mappable/dart_mappable.dart';
import 'package:fladder/util/humanize_duration.dart';
part 'movie_model.mapper.dart';

View file

@ -1,9 +1,19 @@
import 'dart:async';
import 'dart:developer';
import 'package:flutter/foundation.dart';
import 'package:flutter/gestures.dart';
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:async/async.dart';
import 'package:collection/collection.dart';
import 'package:ficonsax/ficonsax.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:intl/intl.dart';
import 'package:screen_brightness/screen_brightness.dart';
import 'package:window_manager/window_manager.dart';
import 'package:fladder/models/items/intro_skip_model.dart';
import 'package:fladder/models/media_playback_model.dart';
import 'package:fladder/models/playback/playback_model.dart';
@ -21,14 +31,6 @@ import 'package:fladder/util/adaptive_layout.dart';
import 'package:fladder/util/duration_extensions.dart';
import 'package:fladder/util/list_padding.dart';
import 'package:fladder/util/string_extensions.dart';
import 'package:flutter/foundation.dart';
import 'package:flutter/gestures.dart';
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:intl/intl.dart';
import 'package:screen_brightness/screen_brightness.dart';
import 'package:window_manager/window_manager.dart';
class DesktopControls extends ConsumerStatefulWidget {
const DesktopControls({super.key});
@ -235,36 +237,44 @@ class _DesktopControlsState extends ConsumerState<DesktopControls> {
child: Container(
alignment: Alignment.topCenter,
height: 80,
child: Padding(
padding: const EdgeInsets.symmetric(horizontal: 12),
child: Row(
crossAxisAlignment: CrossAxisAlignment.center,
children: [
IconButton(
onPressed: () {
clear();
ref
.read(mediaPlaybackProvider.notifier)
.update((state) => state.copyWith(state: VideoPlayerState.minimized));
Navigator.of(context).pop();
},
icon: const Icon(
IconsaxOutline.arrow_down_1,
size: 24,
child: Column(
children: [
if (AdaptiveLayout.of(context).isDesktop)
const Flexible(
child: Align(
alignment: Alignment.topRight,
child: DefaultTitleBar(),
),
),
const SizedBox(width: 16),
if (!AdaptiveLayout.of(context).isDesktop)
Flexible(
child: Text(
currentItem?.title ?? "",
style: Theme.of(context).textTheme.titleLarge,
Padding(
padding: const EdgeInsets.symmetric(horizontal: 12),
child: Row(
crossAxisAlignment: CrossAxisAlignment.center,
children: [
IconButton(
onPressed: () {
clear();
ref
.read(mediaPlaybackProvider.notifier)
.update((state) => state.copyWith(state: VideoPlayerState.minimized));
Navigator.of(context).pop();
},
icon: const Icon(
IconsaxOutline.arrow_down_1,
size: 24,
),
),
)
else
const Flexible(child: Align(alignment: Alignment.topRight, child: DefaultTitleBar()))
],
),
const SizedBox(width: 16),
Flexible(
child: Text(
currentItem?.title ?? "",
style: Theme.of(context).textTheme.titleLarge,
),
),
],
),
),
],
),
),
),