mirror of
https://github.com/LadybirdBrowser/ladybird
synced 2026-04-25 17:25:08 +02:00
Add the complete browser UI: - BrowserWindow: AdwHeaderBar with navigation, tab management via AdwTabView/AdwTabBar, find-in-page, fullscreen, zoom, D-Bus single-instance with open/activate handlers - Tab: WebContentView lifecycle, ViewImplementation callbacks for title, URL, favicon, cursor, tooltips, dialogs, window management - LadybirdBrowserWindow: GtkBuilder template widget with toolbar, tab bar, find bar, devtools banner, and hamburger menu - LadybirdLocationEntry: URL entry with autocomplete, domain highlighting, and security icon - Menu: GAction-based context menus and application menu with keyboard accelerators - Dialogs: JS alert/confirm/prompt (AdwAlertDialog), color picker, file picker, select dropdown, download save dialog, toast - GtkBuilder .ui resources for browser window, location entry completions, and list popovers Updates Application and main.cpp to create browser windows and handle D-Bus activation from remote instances.
32 lines
917 B
C++
32 lines
917 B
C++
/*
|
|
* Copyright (c) 2026, Johan Dahlin <jdahlin@gmail.com>
|
|
*
|
|
* SPDX-License-Identifier: BSD-2-Clause
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
#include <AK/String.h>
|
|
#include <LibGfx/Color.h>
|
|
#include <LibWeb/HTML/FileFilter.h>
|
|
#include <LibWeb/HTML/SelectedFile.h>
|
|
|
|
#include <gtk/gtk.h>
|
|
|
|
namespace Ladybird {
|
|
|
|
class WebContentView;
|
|
|
|
namespace Dialogs {
|
|
|
|
void show_error(GtkWindow* parent, StringView message);
|
|
void show_alert(GtkWindow* parent, WebContentView* view, String const& message);
|
|
void show_confirm(GtkWindow* parent, WebContentView* view, String const& message);
|
|
void show_prompt(GtkWindow* parent, WebContentView* view, String const& message, String const& default_value);
|
|
void show_color_picker(GtkWindow* parent, WebContentView* view, Color current_color);
|
|
void show_file_picker(GtkWindow* parent, WebContentView* view, Web::HTML::FileFilter const& accepted_file_types, Web::HTML::AllowMultipleFiles allow_multiple);
|
|
|
|
}
|
|
|
|
}
|