mirror of
https://github.com/fergalmoran/ladybird.git
synced 2026-01-06 16:45:03 +00:00
This has been implemented in Qt for quite some time. This patch adds the same feature to AppKit. This is needed to run many WPT subtests with the AppKit chrome. This is also needed to handle window.open, target=_blank link clicks, etc.
56 lines
1.4 KiB
Objective-C
56 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/Forward.h>
|
|
#include <LibURL/URL.h>
|
|
|
|
#import <Cocoa/Cocoa.h>
|
|
|
|
@class Tab;
|
|
|
|
struct TabSettings {
|
|
BOOL should_show_line_box_borders { NO };
|
|
BOOL scripting_enabled { YES };
|
|
BOOL block_popups { YES };
|
|
BOOL same_origin_policy_enabled { NO };
|
|
ByteString user_agent_name { "Disabled"sv };
|
|
ByteString navigator_compatibility_mode { "chrome"sv };
|
|
};
|
|
|
|
@interface TabController : NSWindowController <NSWindowDelegate>
|
|
|
|
- (instancetype)init;
|
|
- (instancetype)initAsChild:(Tab*)parent
|
|
pageIndex:(u64)page_index;
|
|
|
|
- (void)loadURL:(URL::URL const&)url;
|
|
- (void)loadHTML:(StringView)html url:(URL::URL const&)url;
|
|
|
|
- (void)onLoadStart:(URL::URL const&)url isRedirect:(BOOL)isRedirect;
|
|
|
|
- (void)onURLChange:(URL::URL const&)url;
|
|
- (void)onBackNavigationEnabled:(BOOL)back_enabled
|
|
forwardNavigationEnabled:(BOOL)forward_enabled;
|
|
|
|
- (void)onTitleChange:(ByteString const&)title;
|
|
|
|
- (void)onCreateNewTab;
|
|
|
|
- (void)navigateBack:(id)sender;
|
|
- (void)navigateForward:(id)sender;
|
|
- (void)reload:(id)sender;
|
|
- (void)clearHistory;
|
|
|
|
- (void)setPopupBlocking:(BOOL)block_popups;
|
|
- (void)setScripting:(BOOL)enabled;
|
|
- (void)debugRequest:(ByteString const&)request argument:(ByteString const&)argument;
|
|
|
|
- (void)focusLocationToolbarItem;
|
|
|
|
@end
|