Files
notas/lib/app.dart
T
Marcos 96f8f95924 Add Windows runner files for high DPI support and console output
- Created runner.exe.manifest to enable DPI awareness and dark mode support.
- Implemented utility functions in utils.cpp and utils.h for console creation and command line argument handling.
- Developed Win32Window class in win32_window.cpp and win32_window.h to manage high DPI-aware windows, including theme updates and message handling.
2026-05-13 12:03:40 +02:00

63 lines
1.4 KiB
Dart

import 'package:flutter/material.dart';
import 'package:notas/platform/app_platform.dart';
import 'package:notas/screens/home_screen.dart';
import 'package:notas/theme/app_theme.dart';
import 'package:notas/platform/window_state.dart';
import 'package:window_manager/window_manager.dart';
class NotesApp extends StatefulWidget {
const NotesApp({super.key});
@override
State<NotesApp> createState() => _NotesAppState();
}
class _NotesAppState extends State<NotesApp> with WindowListener {
@override
void initState() {
super.initState();
if (isDesktop) {
windowManager.addListener(this);
}
}
@override
void dispose() {
if (isDesktop) {
windowManager.removeListener(this);
}
super.dispose();
}
Future<void> _saveWindowSize() async {
if (await windowManager.isFullScreen()) {
return;
}
if (await windowManager.isMaximized()) {
return;
}
final Size currentSize = await windowManager.getSize();
await WindowStateStore.instance.saveWindowSize(currentSize);
}
@override
void onWindowResize() {
_saveWindowSize();
}
@override
void onWindowResized() {
_saveWindowSize();
}
Widget build(BuildContext context) {
return MaterialApp(
title: 'Mis Notas',
debugShowCheckedModeBanner: false,
theme: AppTheme.theme,
home: const HomeScreen(),
);
}
}