249 보충: MKV 화면 작업 기록 위에도 "DNS 서버 (…) 에 닿지 않음 · [시스템 DNS 로 바꾸기]"
a4 의 918 기기 확인 (노트 10+): 작업 현황 (MKV 화면 아래 작업 기록) 에는 줄이 없었다 - WorkPanel 은 브라우저의 오른쪽 작업 현황이고, MKV 화면 아래는 작업 기록 (_LogPanel) 이었다. 작업 기록을 열거나 숨겨도 그 위에 보인다. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>fix_mkv
parent
cdfcf360c4
commit
f0fad6c0e4
|
|
@ -21,6 +21,7 @@ import 'package:path/path.dart' as p;
|
||||||
|
|
||||||
import '../app/settings.dart' show MoveTarget;
|
import '../app/settings.dart' show MoveTarget;
|
||||||
import 'folder_picker.dart';
|
import 'folder_picker.dart';
|
||||||
|
import 'network_settings.dart' show DnsFailureLine;
|
||||||
import 'player_page.dart';
|
import 'player_page.dart';
|
||||||
import 'subtitle_editor_page.dart';
|
import 'subtitle_editor_page.dart';
|
||||||
import 'subtitle_search_dialog.dart';
|
import 'subtitle_search_dialog.dart';
|
||||||
|
|
@ -100,6 +101,8 @@ class HomePage extends StatelessWidget {
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
const Divider(height: 1),
|
const Divider(height: 1),
|
||||||
|
// 249: DNS 서버에 닿지 않는 동안 작업 기록 위에 (아래 안내를 놓쳐도 MKV 화면에서 보고 바꿀 수 있게)
|
||||||
|
Padding(padding: const EdgeInsets.symmetric(horizontal: 12), child: DnsFailureLine(c: c)),
|
||||||
if (c.settings.showLog)
|
if (c.settings.showLog)
|
||||||
SizedBox(
|
SizedBox(
|
||||||
// 화면이 낮은 기기 (휴대폰 가로) 에서 목록 · 자세히 보기를 가리지 않도록 화면 높이에 맞춘다
|
// 화면이 낮은 기기 (휴대폰 가로) 에서 목록 · 자세히 보기를 가리지 않도록 화면 높이에 맞춘다
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,7 @@ import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:jj_mkvmaker/app/app_controller.dart';
|
import 'package:jj_mkvmaker/app/app_controller.dart';
|
||||||
import 'package:jj_mkvmaker/app/components.dart';
|
import 'package:jj_mkvmaker/app/components.dart';
|
||||||
|
import 'package:jj_mkvmaker/app/net_guard.dart';
|
||||||
import 'package:jj_mkvmaker/app/settings.dart';
|
import 'package:jj_mkvmaker/app/settings.dart';
|
||||||
import 'package:jj_mkvmaker/platform/windows/desktop_storage_service.dart';
|
import 'package:jj_mkvmaker/platform/windows/desktop_storage_service.dart';
|
||||||
import 'package:jj_mkvmaker/platform/windows/process_media_tool.dart';
|
import 'package:jj_mkvmaker/platform/windows/process_media_tool.dart';
|
||||||
|
|
@ -51,6 +52,29 @@ void main() {
|
||||||
expect(AppComponent.reorder(['future_screen', 'mkv'], ['mkv', 'explorer']), ['future_screen', 'mkv', 'explorer']);
|
expect(AppComponent.reorder(['future_screen', 'mkv'], ['mkv', 'explorer']), ['future_screen', 'mkv', 'explorer']);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
testWidgets('249: DNS 서버에 닿지 않는 동안 MKV 화면의 작업 기록 위에 상태 줄 (기록을 숨겨도)', (tester) async {
|
||||||
|
tester.view.physicalSize = const Size(1500, 900);
|
||||||
|
tester.view.devicePixelRatio = 1;
|
||||||
|
addTearDown(tester.view.reset);
|
||||||
|
final g = NetGuard.instance;
|
||||||
|
addTearDown(() => g.failure.value = null);
|
||||||
|
final c = _plain();
|
||||||
|
await tester.pumpWidget(MaterialApp(
|
||||||
|
builder: (context, child) => AppScope(controller: c, child: child!),
|
||||||
|
home: HomePage(c: c),
|
||||||
|
));
|
||||||
|
expect(find.textContaining('에 닿지 않음'), findsNothing);
|
||||||
|
g.failure.value = DnsFailure('192.0.2.1', 'x', DateTime(2026, 10, 12, 1, 35));
|
||||||
|
await tester.pump();
|
||||||
|
expect(find.text('DNS 서버 (192.0.2.1) 에 닿지 않음 (01:35부터)'), findsOneWidget);
|
||||||
|
await c.updateSettings((s) => s.showLog = !s.showLog);
|
||||||
|
await tester.pump();
|
||||||
|
expect(find.text('DNS 서버 (192.0.2.1) 에 닿지 않음 (01:35부터)'), findsOneWidget);
|
||||||
|
await tester.tap(find.text('시스템 DNS 로 바꾸기'));
|
||||||
|
await tester.pump();
|
||||||
|
expect(c.settings.dnsMode, 'system');
|
||||||
|
});
|
||||||
|
|
||||||
testWidgets('위쪽 이동 버튼: 설치한 화면만 · 설정을 바꾸면 바로 · 하나뿐이면 그것만', (tester) async {
|
testWidgets('위쪽 이동 버튼: 설치한 화면만 · 설정을 바꾸면 바로 · 하나뿐이면 그것만', (tester) async {
|
||||||
tester.view.physicalSize = const Size(1500, 900);
|
tester.view.physicalSize = const Size(1500, 900);
|
||||||
tester.view.devicePixelRatio = 1;
|
tester.view.devicePixelRatio = 1;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue