mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-01-25 18:52:22 -05:00
4483204c9c
This commit includes only fetching the DOM tree from the WebContent process and displaying it in an NSOutlineView. The displayed tree includes some basic styling (e.g. colors).
58 lines
1 KiB
Text
58 lines
1 KiB
Text
/*
|
|
* Copyright (c) 2023, Tim Flynn <trflynn89@serenityos.org>
|
|
*
|
|
* SPDX-License-Identifier: BSD-2-Clause
|
|
*/
|
|
|
|
#import <UI/Inspector.h>
|
|
#import <UI/InspectorController.h>
|
|
#import <UI/LadybirdWebView.h>
|
|
#import <UI/Tab.h>
|
|
|
|
#if !__has_feature(objc_arc)
|
|
# error "This project requires ARC"
|
|
#endif
|
|
|
|
@interface InspectorController () <NSWindowDelegate>
|
|
|
|
@property (nonatomic, strong) Tab* tab;
|
|
|
|
@end
|
|
|
|
@implementation InspectorController
|
|
|
|
- (instancetype)init:(Tab*)tab
|
|
{
|
|
if (self = [super init]) {
|
|
self.tab = tab;
|
|
}
|
|
|
|
return self;
|
|
}
|
|
|
|
#pragma mark - Private methods
|
|
|
|
- (Inspector*)inspector
|
|
{
|
|
return (Inspector*)[self window];
|
|
}
|
|
|
|
#pragma mark - NSWindowController
|
|
|
|
- (IBAction)showWindow:(id)sender
|
|
{
|
|
self.window = [[Inspector alloc] init:self.tab];
|
|
[self.window setDelegate:self];
|
|
[self.window makeKeyAndOrderFront:sender];
|
|
|
|
[[self inspector] inspect];
|
|
}
|
|
|
|
#pragma mark - NSWindowDelegate
|
|
|
|
- (void)windowWillClose:(NSNotification*)notification
|
|
{
|
|
[self.tab onInspectorClosed];
|
|
}
|
|
|
|
@end
|