flutter-plugins
flutter-plugins copied to clipboard
When a new window opens on MacOS, it appears after a short black screen
When opening a new window on MacOS, there is a short black screen, I don't know if this is a MacOS problem.
https://github.com/MixinNetwork/flutter-plugins/assets/18432861/d9948e93-867a-4d9e-956c-e4c5eebb88c8
import 'dart:convert';
import 'package:collection/collection.dart';
import 'package:desktop_multi_window/desktop_multi_window.dart';
import 'package:flutter/material.dart';
import 'package:window_manager/window_manager.dart';
void main(List<String> args) async {
WidgetsFlutterBinding.ensureInitialized();
if (args.firstOrNull == 'multi_window') {
runApp(const MySubWindow());
} else {
// WidgetsFlutterBinding.ensureInitialized();
await windowManager.ensureInitialized();
windowManager.waitUntilReadyToShow().then((_) async {
await windowManager.setTitle('flutter desktop_multi_window demo');
await windowManager.setSize(const Size(800, 600));
await windowManager.setMinimumSize(const Size(800, 600));
await windowManager.center();
await windowManager.show();
// await windowManager.setSkipTaskbar(false);
});
runApp(const MaterialApp(home: MultiWindowPage()));
}
}
class MultiWindowPage extends StatefulWidget {
const MultiWindowPage({Key? key}) : super(key: key);
@override
State<MultiWindowPage> createState() => _MultiWindowPageState();
}
class _MultiWindowPageState extends State<MultiWindowPage> {
void _addWindow() async {
final window = await DesktopMultiWindow.createWindow(jsonEncode({}));
window
..setFrame(const Offset(0, 0) & const Size(600, 450))
..center()
..setTitle('标题')
..show();
}
@override
Widget build(BuildContext context) {
return Scaffold(
body: Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
ElevatedButton(
onPressed: _addWindow,
child: const Text('打开子窗口'),
),
],
),
),
);
}
}
class MySubWindow extends StatelessWidget {
const MySubWindow({Key? key}) : super(key: key);
@override
Widget build(BuildContext context) {
return MaterialApp(
debugShowCheckedModeBanner: false,
theme: ThemeData(
primarySwatch: Colors.blue,
fontFamily: 'Microsoft YaHei',
),
home: const Scaffold(
body: Center(
child: Text(
'这里是新的窗口',
style: TextStyle(fontSize: 24),
),
),
),
);
}
}
I encountered the same issue.
try release