mirror of
https://github.com/fergalmoran/ladybird.git
synced 2026-01-27 02:47:27 +00:00
Currently, if we want to add a new e.g. WebContent command line option, we have to add it to all of Qt, AppKit, and headless-browser. (Or worse, we only add it to one of these, and we have feature disparity). To prevent this, this moves command line flags to WebView::Application. The flags are assigned to ChromeOptions and WebContentOptions structs. Each chrome can still add its platform-specific options; for example, the Qt chrome has a flag to enable Qt networking. There should be no behavior change here, other than that AppKit will now support command line flags that were previously only supported by Qt.
48 lines
1.4 KiB
Objective-C
48 lines
1.4 KiB
Objective-C
/*
|
|
* Copyright (c) 2023-2024, Tim Flynn <trflynn89@serenityos.org>
|
|
*
|
|
* SPDX-License-Identifier: BSD-2-Clause
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
#include <AK/Optional.h>
|
|
#include <AK/StringView.h>
|
|
#include <LibURL/URL.h>
|
|
#include <LibWeb/CSS/PreferredColorScheme.h>
|
|
#include <LibWeb/CSS/PreferredContrast.h>
|
|
#include <LibWeb/CSS/PreferredMotion.h>
|
|
#include <LibWeb/HTML/ActivateTab.h>
|
|
#include <LibWebView/CookieJar.h>
|
|
|
|
#import <Cocoa/Cocoa.h>
|
|
|
|
@class Tab;
|
|
@class TabController;
|
|
|
|
@interface ApplicationDelegate : NSObject <NSApplicationDelegate>
|
|
|
|
- (nullable instancetype)initWithCookieJar:(NonnullOwnPtr<WebView::CookieJar>)cookie_jar;
|
|
|
|
- (nonnull TabController*)createNewTab:(Optional<URL::URL> const&)url
|
|
fromTab:(nullable Tab*)tab
|
|
activateTab:(Web::HTML::ActivateTab)activate_tab;
|
|
|
|
- (nonnull TabController*)createNewTab:(StringView)html
|
|
url:(URL::URL const&)url
|
|
fromTab:(nullable Tab*)tab
|
|
activateTab:(Web::HTML::ActivateTab)activate_tab;
|
|
|
|
- (void)setActiveTab:(nonnull Tab*)tab;
|
|
- (nullable Tab*)activeTab;
|
|
|
|
- (void)removeTab:(nonnull TabController*)controller;
|
|
|
|
- (WebView::CookieJar&)cookieJar;
|
|
- (Web::CSS::PreferredColorScheme)preferredColorScheme;
|
|
- (Web::CSS::PreferredContrast)preferredContrast;
|
|
- (Web::CSS::PreferredMotion)preferredMotion;
|
|
- (WebView::SearchEngine const&)searchEngine;
|
|
|
|
@end
|