mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-10-18 06:00:27 +00:00
We currently duplicate a lot of code to handle application/context menus and actions. The goal here is to hold the data for the menus and actions in LibWebView. Each UI will then be able to generate menus from the data on-the-fly. The structures added here are meant to support generic and checkable actions, action groups, submenus, etc.
50 lines
801 B
C++
50 lines
801 B
C++
/*
|
|
* Copyright (c) 2022, The SerenityOS developers
|
|
*
|
|
* SPDX-License-Identifier: BSD-2-Clause
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
#include <AK/Platform.h>
|
|
#include <AK/Traits.h>
|
|
#include <LibWebView/Export.h>
|
|
|
|
namespace WebView {
|
|
|
|
class Action;
|
|
class Application;
|
|
class Autocomplete;
|
|
class CookieJar;
|
|
class Database;
|
|
class Menu;
|
|
class OutOfProcessWebView;
|
|
class ProcessManager;
|
|
class Settings;
|
|
class ViewImplementation;
|
|
class WebContentClient;
|
|
class WebUI;
|
|
|
|
#if defined(AK_OS_MACOS)
|
|
class MachPortServer;
|
|
#endif
|
|
|
|
struct Attribute;
|
|
struct AutocompleteEngine;
|
|
struct BrowserOptions;
|
|
struct ConsoleOutput;
|
|
struct CookieStorageKey;
|
|
struct DOMNodeProperties;
|
|
struct Mutation;
|
|
struct ProcessHandle;
|
|
struct SearchEngine;
|
|
struct WebContentOptions;
|
|
|
|
}
|
|
|
|
namespace AK {
|
|
|
|
template<>
|
|
struct Traits<WebView::CookieStorageKey>;
|
|
|
|
}
|