Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 6 additions & 2 deletions lib/main.dart
Original file line number Diff line number Diff line change
Expand Up @@ -62,8 +62,12 @@ Future<void> main(List<String> arguments) async {
defaultTargetPlatform == TargetPlatform.linux)) {
await windowManager.ensureInitialized();
if (defaultTargetPlatform == TargetPlatform.windows) {
await windowManager.waitUntilReadyToShow();
await windowManager.setTitleBarStyle(TitleBarStyle.hidden);
await windowManager.waitUntilReadyToShow(
const WindowOptions(
center: true,
titleBarStyle: TitleBarStyle.hidden,
),
);
}
await windowManager.setMinimumSize(const Size(320, 320));
}
Expand Down
35 changes: 25 additions & 10 deletions lib/pages/developer_settings_page.dart
Original file line number Diff line number Diff line change
Expand Up @@ -229,16 +229,31 @@ class _DeveloperSettingsPageState extends State<DeveloperSettingsPage> {
try {
if (clipboard) {
final snapshot = await _log.snapshot(session.fileName);
if (!_canContinueExport()) return;
if (!snapshot.canCopyToClipboard(android: Platform.isAndroid)) {
throw StateError('日志过大,无法完整复制,请导出到文件');
try {
if (!_canContinueExport()) return;
if (!snapshot.canCopyToClipboard(android: Platform.isAndroid)) {
throw StateError('日志过大,无法完整复制,请导出到文件');
}
final text = await snapshot.readForClipboard(
android: Platform.isAndroid,
);
if (!_canContinueExport()) return;
await Clipboard.setData(ClipboardData(text: text));
if (_canContinueExport()) _message('日志已复制');
} finally {
try {
await snapshot.dispose();
} catch (error, stack) {
_log.write(
AppLogLevel.warning,
'log_export',
'Cleaning clipboard log snapshot failed',
error: error,
stackTrace: stack,
promptUser: false,
);
}
}
final text = await snapshot.readForClipboard(
android: Platform.isAndroid,
);
if (!_canContinueExport()) return;
await Clipboard.setData(ClipboardData(text: text));
if (_canContinueExport()) _message('日志已复制');
} else {
final destination = await exportLogSession(
session,
Expand Down Expand Up @@ -358,7 +373,7 @@ class _DeveloperSettingsPageState extends State<DeveloperSettingsPage> {
style: Theme.of(context).textTheme.titleMedium,
),
const SizedBox(height: 4),
const Text('记录运行情况,方便排查问题。'),
const Text('自动保留最近的运行记录,较早日志会清理。复现问题后请及时导出。'),
const SizedBox(height: 12),
InputDecorator(
decoration: const InputDecoration(
Expand Down
10 changes: 9 additions & 1 deletion lib/pages/listening_page.dart
Original file line number Diff line number Diff line change
Expand Up @@ -1633,12 +1633,20 @@ class _ListeningPageState extends State<ListeningPage>
AppLog.instance.trace(
"lib/pages/listening_page.dart::_ListeningPageState._historyTab.closure#2.closure#1.closure#1",
);
final historyProgress = (
position: row.position,
updatedAt: row.updatedAt,
);
return row.track.albumId.isEmpty
? _runtime.player.playTrack(row.track)
? _runtime.player.playTrack(
row.track,
historyProgress: historyProgress,
)
: _runtime.player.playAlbum(
row.track.albumId,
row.track.id,
track: row.track,
historyProgress: historyProgress,
);
});
},
Expand Down
Loading