iop와 nomadcode가 같은 workspace에서 제품별 Flutter 콘솔을 위젯으로 삽입할 수 있어야 하므로 OTO client를 얇은 host 앱으로 정리하고 agent-shell 기반 embeddable console 패키지를 분리한다.
25 lines
691 B
Dart
25 lines
691 B
Dart
import 'package:flutter/material.dart';
|
|
import 'package:flutter/services.dart';
|
|
|
|
import 'oto_client_app.dart';
|
|
|
|
Future<void> applyFullscreenMode() async {
|
|
await SystemChrome.setEnabledSystemUIMode(SystemUiMode.immersiveSticky);
|
|
SystemChrome.setSystemUIOverlayStyle(
|
|
const SystemUiOverlayStyle(
|
|
statusBarColor: Colors.transparent,
|
|
systemNavigationBarColor: Colors.transparent,
|
|
systemNavigationBarDividerColor: Colors.transparent,
|
|
),
|
|
);
|
|
}
|
|
|
|
Future<void> bootstrapOtoClient() async {
|
|
await applyFullscreenMode();
|
|
}
|
|
|
|
Future<void> runOtoClient() async {
|
|
WidgetsFlutterBinding.ensureInitialized();
|
|
await bootstrapOtoClient();
|
|
runApp(const OtoClientApp());
|
|
}
|