Phase B (T1-5/T1-6/T2-2/T2-8/T2-12): download manager flyout w/ speed+pause/resume/cancel, bookmark bar, tab sleeping, tab search (open+closed), context menu w/ 'download video from this link' (79 tests GREEN)
This commit is contained in:
parent
af19dba8f4
commit
0caa1111e7
9 changed files with 763 additions and 3 deletions
|
|
@ -43,6 +43,9 @@ public sealed class TabViewService
|
|||
/// <summary>탭 뒤로/앞으로 가능 상태 변화(네비 버튼 갱신용).</summary>
|
||||
public event Action? HistoryChanged;
|
||||
|
||||
/// <summary>우클릭 메뉴 요청 — 호스트가 WPF ContextMenu 로 재구성해 표시(Handled=true).</summary>
|
||||
public event Action<CoreWebView2, CoreWebView2ContextMenuRequestedEventArgs>? ContextMenuBuild;
|
||||
|
||||
public TabViewService(CoreWebView2Environment env, AppConfig config, Panel host,
|
||||
SiteZoomStore zoomStore, Dispatcher dispatcher)
|
||||
{
|
||||
|
|
@ -170,6 +173,13 @@ public sealed class TabViewService
|
|||
// 페이지 내 다운로드 → 호스트 훅
|
||||
cv.DownloadStarting += (_, de) => DownloadStarting?.Invoke(cv, de);
|
||||
|
||||
// 우클릭 메뉴 → 호스트가 커스텀 메뉴 구성(기본 메뉴 대체, T2-12/T3-5)
|
||||
cv.ContextMenuRequested += (_, ce) =>
|
||||
{
|
||||
ce.Handled = true;
|
||||
ContextMenuBuild?.Invoke(cv, ce);
|
||||
};
|
||||
|
||||
// 초기 URL (세션 복원)
|
||||
if (!string.IsNullOrEmpty(tab.Url) && string.IsNullOrEmpty(cv.Source))
|
||||
{
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue