mirror of
https://github.com/RGBCube/serenity
synced 2025-07-27 18:37:34 +00:00
Ladybird/AppKit: Add color picker support
This commit is contained in:
parent
ebee480bcc
commit
0ce9dc4c8e
3 changed files with 44 additions and 0 deletions
|
@ -527,6 +527,20 @@ struct HideCursor {
|
|||
returnCode:NSModalResponseCancel];
|
||||
};
|
||||
|
||||
m_web_view_bridge->on_request_color_picker = [self](Color current_color) {
|
||||
auto* panel = [NSColorPanel sharedColorPanel];
|
||||
[panel setColor:Ladybird::gfx_color_to_ns_color(current_color)];
|
||||
[panel setShowsAlpha:NO];
|
||||
|
||||
NSNotificationCenter* notification_center = [NSNotificationCenter defaultCenter];
|
||||
[notification_center addObserver:self
|
||||
selector:@selector(colorPickerClosed:)
|
||||
name:NSWindowWillCloseNotification
|
||||
object:panel];
|
||||
|
||||
[panel makeKeyAndOrderFront:nil];
|
||||
};
|
||||
|
||||
m_web_view_bridge->on_get_all_cookies = [](auto const& url) {
|
||||
auto* delegate = (ApplicationDelegate*)[NSApp delegate];
|
||||
return [delegate cookieJar].get_all_cookies(url);
|
||||
|
@ -603,6 +617,11 @@ struct HideCursor {
|
|||
};
|
||||
}
|
||||
|
||||
- (void)colorPickerClosed:(NSNotification*)notification
|
||||
{
|
||||
m_web_view_bridge->color_picker_closed(Ladybird::ns_color_to_gfx_color([[NSColorPanel sharedColorPanel] color]));
|
||||
}
|
||||
|
||||
- (NSScrollView*)scrollView
|
||||
{
|
||||
return (NSScrollView*)[self superview];
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue