diff options
Diffstat (limited to 'Tools/MiniBrowser')
26 files changed, 110 insertions, 834 deletions
diff --git a/Tools/MiniBrowser/Configurations/MiniBrowserCFLite.vsprops b/Tools/MiniBrowser/Configurations/MiniBrowserCFLite.vsprops deleted file mode 100644 index 0882216a5..000000000 --- a/Tools/MiniBrowser/Configurations/MiniBrowserCFLite.vsprops +++ /dev/null @@ -1,11 +0,0 @@ -<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioPropertySheet
- ProjectType="Visual C++"
- Version="8.00"
- Name="MiniBrowserCFLite"
- >
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="shlwapi.lib WebKit$(WebKitDLLConfigSuffix).lib CFLite$(LibraryConfigSuffix).lib"
- />
-</VisualStudioPropertySheet>
diff --git a/Tools/MiniBrowser/Configurations/MiniBrowserCommon.vsprops b/Tools/MiniBrowser/Configurations/MiniBrowserCommon.vsprops deleted file mode 100644 index 51275c7a9..000000000 --- a/Tools/MiniBrowser/Configurations/MiniBrowserCommon.vsprops +++ /dev/null @@ -1,16 +0,0 @@ -<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioPropertySheet
- ProjectType="Visual C++"
- Version="8.00"
- Name="MiniBrowserCommon"
- >
- <Tool
- Name="VCCLCompilerTool"
- AdditionalIncludeDirectories=""$(ConfigurationBuildDir)\Include";"$(WebKitLibrariesDir)\Include""
- UsePrecompiledHeader="2"
- />
- <Tool
- Name="VCLinkerTool"
- OutputFile="$(OutDir)\$(ProjectName)$(WebKitConfigSuffix).dll"
- />
-</VisualStudioPropertySheet>
diff --git a/Tools/MiniBrowser/Configurations/MiniBrowserCoreFoundation.vsprops b/Tools/MiniBrowser/Configurations/MiniBrowserCoreFoundation.vsprops deleted file mode 100644 index deaa89bc9..000000000 --- a/Tools/MiniBrowser/Configurations/MiniBrowserCoreFoundation.vsprops +++ /dev/null @@ -1,11 +0,0 @@ -<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioPropertySheet
- ProjectType="Visual C++"
- Version="8.00"
- Name="MiniBrowserCoreFoundation"
- >
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="shlwapi.lib WebKit$(WebKitDLLConfigSuffix).lib CoreFoundation$(LibraryConfigSuffix).lib CFNetwork$(LibraryConfigSuffix).lib"
- />
-</VisualStudioPropertySheet>
diff --git a/Tools/MiniBrowser/Configurations/MiniBrowserDebug.vsprops b/Tools/MiniBrowser/Configurations/MiniBrowserDebug.vsprops deleted file mode 100644 index 33f4e05dd..000000000 --- a/Tools/MiniBrowser/Configurations/MiniBrowserDebug.vsprops +++ /dev/null @@ -1,8 +0,0 @@ -<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioPropertySheet
- ProjectType="Visual C++"
- Version="8.00"
- Name="MiniBrowserDebug"
- InheritedPropertySheets="$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\common.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\debug.vsprops;.\MiniBrowserCoreFoundation.vsprops;.\MiniBrowserCommon.vsprops"
- >
-</VisualStudioPropertySheet>
diff --git a/Tools/MiniBrowser/Configurations/MiniBrowserDebugAll.vsprops b/Tools/MiniBrowser/Configurations/MiniBrowserDebugAll.vsprops deleted file mode 100644 index 981e59aa8..000000000 --- a/Tools/MiniBrowser/Configurations/MiniBrowserDebugAll.vsprops +++ /dev/null @@ -1,8 +0,0 @@ -<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioPropertySheet
- ProjectType="Visual C++"
- Version="8.00"
- Name="MiniBrowserDebugAll"
- InheritedPropertySheets="$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\common.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\debug.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\debug_all.vsprops;.\MiniBrowserCoreFoundation.vsprops;.\MiniBrowserCommon.vsprops"
- >
-</VisualStudioPropertySheet>
diff --git a/Tools/MiniBrowser/Configurations/MiniBrowserDebugCairoCFLite.vsprops b/Tools/MiniBrowser/Configurations/MiniBrowserDebugCairoCFLite.vsprops deleted file mode 100644 index 485031283..000000000 --- a/Tools/MiniBrowser/Configurations/MiniBrowserDebugCairoCFLite.vsprops +++ /dev/null @@ -1,8 +0,0 @@ -<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioPropertySheet
- ProjectType="Visual C++"
- Version="8.00"
- Name="MiniBrowserDebugCairoCFLite"
- InheritedPropertySheets="$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\common.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\debug.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\debug_wincairo.vsprops;.\MiniBrowserCFLite.vsprops;.\MiniBrowserCommon.vsprops"
- >
-</VisualStudioPropertySheet>
diff --git a/Tools/MiniBrowser/Configurations/MiniBrowserLauncherCommon.vsprops b/Tools/MiniBrowser/Configurations/MiniBrowserLauncherCommon.vsprops deleted file mode 100644 index 742780daf..000000000 --- a/Tools/MiniBrowser/Configurations/MiniBrowserLauncherCommon.vsprops +++ /dev/null @@ -1,13 +0,0 @@ -<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioPropertySheet
- ProjectType="Visual C++"
- Version="8.00"
- Name="MiniBrowserLauncherCommon"
- >
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="shlwapi.lib"
- OutputFile="$(OutDir)\MiniBrowser$(WebKitConfigSuffix).exe"
- ProgramDatabaseFile="$(TargetDir)$(TargetName)Launcher.pdb"
- />
-</VisualStudioPropertySheet>
diff --git a/Tools/MiniBrowser/Configurations/MiniBrowserLauncherDebug.vsprops b/Tools/MiniBrowser/Configurations/MiniBrowserLauncherDebug.vsprops deleted file mode 100644 index 1f30791da..000000000 --- a/Tools/MiniBrowser/Configurations/MiniBrowserLauncherDebug.vsprops +++ /dev/null @@ -1,8 +0,0 @@ -<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioPropertySheet
- ProjectType="Visual C++"
- Version="8.00"
- Name="MiniBrowserLauncherDebug"
- InheritedPropertySheets="$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\common.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\debug.vsprops;.\MiniBrowserLauncherCommon.vsprops"
- >
-</VisualStudioPropertySheet>
diff --git a/Tools/MiniBrowser/Configurations/MiniBrowserLauncherDebugAll.vsprops b/Tools/MiniBrowser/Configurations/MiniBrowserLauncherDebugAll.vsprops deleted file mode 100644 index ff91b6f2b..000000000 --- a/Tools/MiniBrowser/Configurations/MiniBrowserLauncherDebugAll.vsprops +++ /dev/null @@ -1,8 +0,0 @@ -<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioPropertySheet
- ProjectType="Visual C++"
- Version="8.00"
- Name="MiniBrowserLauncherDebugAll"
- InheritedPropertySheets="$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\common.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\debug.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\debug_all.vsprops;.\MiniBrowserLauncherCommon.vsprops"
- >
-</VisualStudioPropertySheet>
diff --git a/Tools/MiniBrowser/Configurations/MiniBrowserLauncherDebugCairoCFLite.vsprops b/Tools/MiniBrowser/Configurations/MiniBrowserLauncherDebugCairoCFLite.vsprops deleted file mode 100644 index fb4922093..000000000 --- a/Tools/MiniBrowser/Configurations/MiniBrowserLauncherDebugCairoCFLite.vsprops +++ /dev/null @@ -1,8 +0,0 @@ -<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioPropertySheet
- ProjectType="Visual C++"
- Version="8.00"
- Name="MiniBrowserDebugCairoCFLite"
- InheritedPropertySheets="$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\common.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\debug.vsprops;.\MiniBrowserLauncherCommon.vsprops"
- >
-</VisualStudioPropertySheet>
diff --git a/Tools/MiniBrowser/Configurations/MiniBrowserLauncherProduction.vsprops b/Tools/MiniBrowser/Configurations/MiniBrowserLauncherProduction.vsprops deleted file mode 100644 index 6a725b5cc..000000000 --- a/Tools/MiniBrowser/Configurations/MiniBrowserLauncherProduction.vsprops +++ /dev/null @@ -1,8 +0,0 @@ -<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioPropertySheet
- ProjectType="Visual C++"
- Version="8.00"
- Name="MiniBrowserLauncherProduction"
- InheritedPropertySheets="$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\common.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\releaseproduction.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\production.vsprops;.\MiniBrowserLauncherCommon.vsprops"
- >
-</VisualStudioPropertySheet>
diff --git a/Tools/MiniBrowser/Configurations/MiniBrowserLauncherRelease.vsprops b/Tools/MiniBrowser/Configurations/MiniBrowserLauncherRelease.vsprops deleted file mode 100644 index 023632587..000000000 --- a/Tools/MiniBrowser/Configurations/MiniBrowserLauncherRelease.vsprops +++ /dev/null @@ -1,8 +0,0 @@ -<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioPropertySheet
- ProjectType="Visual C++"
- Version="8.00"
- Name="MiniBrowserLauncherRelease"
- InheritedPropertySheets="$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\common.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\releaseproduction.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\release.vsprops;.\MiniBrowserLauncherCommon.vsprops"
- >
-</VisualStudioPropertySheet>
diff --git a/Tools/MiniBrowser/Configurations/MiniBrowserLauncherReleaseCairoCFLite.vsprops b/Tools/MiniBrowser/Configurations/MiniBrowserLauncherReleaseCairoCFLite.vsprops deleted file mode 100644 index b5919fe1b..000000000 --- a/Tools/MiniBrowser/Configurations/MiniBrowserLauncherReleaseCairoCFLite.vsprops +++ /dev/null @@ -1,8 +0,0 @@ -<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioPropertySheet
- ProjectType="Visual C++"
- Version="8.00"
- Name="MiniBrowserLauncherReleaseCairoCFLite"
- InheritedPropertySheets="$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\common.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\releaseproduction.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\release.vsprops;.\MiniBrowserLauncherCommon.vsprops"
- >
-</VisualStudioPropertySheet>
diff --git a/Tools/MiniBrowser/Configurations/MiniBrowserProduction.vsprops b/Tools/MiniBrowser/Configurations/MiniBrowserProduction.vsprops deleted file mode 100644 index 165a3aab1..000000000 --- a/Tools/MiniBrowser/Configurations/MiniBrowserProduction.vsprops +++ /dev/null @@ -1,8 +0,0 @@ -<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioPropertySheet
- ProjectType="Visual C++"
- Version="8.00"
- Name="MiniBrowserProduction"
- InheritedPropertySheets="$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\common.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\releaseproduction.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\production.vsprops;.\MiniBrowserCoreFoundation.vsprops;.\MiniBrowserCommon.vsprops"
- >
-</VisualStudioPropertySheet>
diff --git a/Tools/MiniBrowser/Configurations/MiniBrowserRelease.vsprops b/Tools/MiniBrowser/Configurations/MiniBrowserRelease.vsprops deleted file mode 100644 index 8bc9a13ca..000000000 --- a/Tools/MiniBrowser/Configurations/MiniBrowserRelease.vsprops +++ /dev/null @@ -1,8 +0,0 @@ -<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioPropertySheet
- ProjectType="Visual C++"
- Version="8.00"
- Name="MiniBrowserRelease"
- InheritedPropertySheets="$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\common.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\releaseproduction.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\release.vsprops;.\MiniBrowserCoreFoundation.vsprops;.\MiniBrowserCommon.vsprops"
- >
-</VisualStudioPropertySheet>
diff --git a/Tools/MiniBrowser/Configurations/MiniBrowserReleaseCairoCFLite.vsprops b/Tools/MiniBrowser/Configurations/MiniBrowserReleaseCairoCFLite.vsprops deleted file mode 100644 index 8253f930d..000000000 --- a/Tools/MiniBrowser/Configurations/MiniBrowserReleaseCairoCFLite.vsprops +++ /dev/null @@ -1,8 +0,0 @@ -<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioPropertySheet
- ProjectType="Visual C++"
- Version="8.00"
- Name="MiniBrowserReleaseCairoCFLite"
- InheritedPropertySheets="$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\common.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\releaseproduction.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\release.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\WinCairo.vsprops;.\MiniBrowserCFLite.vsprops;.\MiniBrowserCommon.vsprops"
- >
-</VisualStudioPropertySheet>
diff --git a/Tools/MiniBrowser/MBToolbarItem.h b/Tools/MiniBrowser/MBToolbarItem.h deleted file mode 100644 index 9971d4c10..000000000 --- a/Tools/MiniBrowser/MBToolbarItem.h +++ /dev/null @@ -1,27 +0,0 @@ -/* - * Copyright (C) 2010 Apple Inc. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' - * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, - * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS - * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF - * THE POSSIBILITY OF SUCH DAMAGE. - */ - -@interface MBToolbarItem : NSToolbarItem -@end diff --git a/Tools/MiniBrowser/MiniBrowser.entitlements b/Tools/MiniBrowser/MiniBrowser.entitlements deleted file mode 100644 index ee95ab7e5..000000000 --- a/Tools/MiniBrowser/MiniBrowser.entitlements +++ /dev/null @@ -1,10 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> -<plist version="1.0"> -<dict> - <key>com.apple.security.app-sandbox</key> - <true/> - <key>com.apple.security.network.client</key> - <true/> -</dict> -</plist> diff --git a/Tools/MiniBrowser/MiniBrowserWebProcessPlugIn.h b/Tools/MiniBrowser/MiniBrowserWebProcessPlugIn.h deleted file mode 100644 index ff16bf5dc..000000000 --- a/Tools/MiniBrowser/MiniBrowserWebProcessPlugIn.h +++ /dev/null @@ -1,34 +0,0 @@ -/* - * Copyright (C) 2013 Apple Inc. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' - * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, - * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS - * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF - * THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import <WebKit/WKWebProcessPlugIn.h> - -#if WK_API_ENABLED - -@interface MiniBrowserWebProcessPlugIn : NSObject <WKWebProcessPlugIn> - -@end - -#endif // WK_API_ENABLED diff --git a/Tools/MiniBrowser/gtk/BrowserDownloadsBar.c b/Tools/MiniBrowser/gtk/BrowserDownloadsBar.c index b0ec3ce14..5f0e620e5 100644 --- a/Tools/MiniBrowser/gtk/BrowserDownloadsBar.c +++ b/Tools/MiniBrowser/gtk/BrowserDownloadsBar.c @@ -23,7 +23,6 @@ * THE POSSIBILITY OF SUCH DAMAGE. */ -#include "cmakeconfig.h" #include "BrowserDownloadsBar.h" #include <glib/gi18n.h> diff --git a/Tools/MiniBrowser/gtk/BrowserSearchBar.c b/Tools/MiniBrowser/gtk/BrowserSearchBar.c index 22930c4c5..7585b564d 100644 --- a/Tools/MiniBrowser/gtk/BrowserSearchBar.c +++ b/Tools/MiniBrowser/gtk/BrowserSearchBar.c @@ -23,9 +23,9 @@ * THE POSSIBILITY OF SUCH DAMAGE. */ -#include "cmakeconfig.h" #include "BrowserSearchBar.h" + static const char *searchEntryFailedStyle = "GtkEntry#searchEntry {background-color: #ff6666;}"; struct _BrowserSearchBar { @@ -63,7 +63,7 @@ static void doSearch(BrowserSearchBar *searchBar) if (!gtk_entry_get_icon_stock(entry, GTK_ENTRY_ICON_SECONDARY)) gtk_entry_set_icon_from_stock(entry, GTK_ENTRY_ICON_SECONDARY, GTK_STOCK_CLEAR); - WebKitFindOptions options = WEBKIT_FIND_OPTIONS_WRAP_AROUND; + WebKitFindOptions options = WEBKIT_FIND_OPTIONS_NONE; if (!gtk_check_menu_item_get_active(GTK_CHECK_MENU_ITEM(searchBar->caseCheckButton))) options |= WEBKIT_FIND_OPTIONS_CASE_INSENSITIVE; if (gtk_check_menu_item_get_active(GTK_CHECK_MENU_ITEM(searchBar->begginigWordCheckButton))) @@ -274,13 +274,9 @@ void browser_search_bar_open(BrowserSearchBar *searchBar) { g_return_if_fail(BROWSER_IS_SEARCH_BAR(searchBar)); - GtkEntry *entry = GTK_ENTRY(searchBar->entry); - gtk_widget_show(GTK_WIDGET(searchBar)); - gtk_widget_grab_focus(GTK_WIDGET(entry)); - gtk_editable_select_region(GTK_EDITABLE(entry), 0, -1); - if (gtk_entry_get_text_length(entry)) - doSearch(searchBar); + gtk_widget_grab_focus(GTK_WIDGET(searchBar->entry)); + gtk_editable_select_region(GTK_EDITABLE(searchBar->entry), 0, -1); } void browser_search_bar_close(BrowserSearchBar *searchBar) diff --git a/Tools/MiniBrowser/gtk/BrowserWindow.c b/Tools/MiniBrowser/gtk/BrowserWindow.c index 45db680f6..b8a0d056c 100644 --- a/Tools/MiniBrowser/gtk/BrowserWindow.c +++ b/Tools/MiniBrowser/gtk/BrowserWindow.c @@ -25,9 +25,6 @@ * THE POSSIBILITY OF SUCH DAMAGE. */ -#if defined(HAVE_CONFIG_H) && HAVE_CONFIG_H && defined(BUILDING_WITH_CMAKE) -#include "cmakeconfig.h" -#endif #include "BrowserWindow.h" #include "BrowserDownloadsBar.h" @@ -53,18 +50,12 @@ struct _BrowserWindow { GtkWidget *forwardItem; GtkWidget *zoomInItem; GtkWidget *zoomOutItem; - GtkWidget *boldItem; - GtkWidget *italicItem; - GtkWidget *underlineItem; - GtkWidget *strikethroughItem; GtkWidget *statusLabel; GtkWidget *settingsDialog; WebKitWebView *webView; GtkWidget *downloadsBar; BrowserSearchBar *searchBar; gboolean searchBarVisible; - gboolean inspectorWindowIsVisible; - gboolean fullScreenIsEnabled; GdkPixbuf *favicon; GtkWidget *reloadOrStopButton; GtkWidget *fullScreenMessageLabel; @@ -81,7 +72,6 @@ static const char *defaultWindowTitle = "WebKitGTK+ MiniBrowser"; static const char *miniBrowserAboutScheme = "minibrowser-about"; static const gdouble minimumZoomLevel = 0.5; static const gdouble maximumZoomLevel = 3; -static const gdouble defaultZoomLevel = 1; static const gdouble zoomStep = 1.2; static gint windowCount = 0; @@ -259,7 +249,7 @@ static void backForwadlistChanged(WebKitBackForwardList *backForwadlist, WebKitB browserWindowUpdateNavigationActions(window, backForwadlist); } -static void permissionRequestDialogCallback(GtkDialog *dialog, gint response, WebKitPermissionRequest *request) +static void geolocationRequestDialogCallback(GtkDialog *dialog, gint response, WebKitPermissionRequest *request) { switch (response) { case GTK_RESPONSE_YES: @@ -354,7 +344,7 @@ static gboolean webViewLeaveFullScreen(WebKitWebView *webView, BrowserWindow *wi return FALSE; } -static GtkWidget *webViewCreate(WebKitWebView *webView, WebKitNavigationAction *navigation, BrowserWindow *window) +static GtkWidget *webViewCreate(WebKitWebView *webView, BrowserWindow *window) { WebKitWebView *newWebView = WEBKIT_WEB_VIEW(webkit_web_view_new_with_related_view(webView)); webkit_web_view_set_settings(newWebView, webkit_web_view_get_settings(webView)); @@ -372,37 +362,19 @@ static gboolean webViewLoadFailed(WebKitWebView *webView, WebKitLoadEvent loadEv return FALSE; } -static gboolean webViewLoadFailedWithTLSerrors(WebKitWebView *webView, const char *failingURI, GTlsCertificate *certificate, GTlsCertificateFlags errors, BrowserWindow *window) -{ - GtkWidget *dialog = gtk_message_dialog_new(GTK_WINDOW(window), GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT, - GTK_MESSAGE_QUESTION, GTK_BUTTONS_YES_NO, "%s", "Invalid TLS Certificate"); - gtk_message_dialog_format_secondary_text(GTK_MESSAGE_DIALOG(dialog), "Failed to load %s: Do you want to continue ignoring the TLS errors?", failingURI); - int response = gtk_dialog_run(GTK_DIALOG(dialog)); - gtk_widget_destroy(dialog); - - if (response == GTK_RESPONSE_YES) { - SoupURI *uri = soup_uri_new(failingURI); - webkit_web_context_allow_tls_certificate_for_host(webkit_web_view_get_context(webView), certificate, uri->host); - soup_uri_free(uri); - webkit_web_view_load_uri(webView, failingURI); - } - - return TRUE; -} - static gboolean webViewDecidePolicy(WebKitWebView *webView, WebKitPolicyDecision *decision, WebKitPolicyDecisionType decisionType, BrowserWindow *window) { switch (decisionType) { case WEBKIT_POLICY_DECISION_TYPE_NAVIGATION_ACTION: { - WebKitNavigationAction *navigationAction = webkit_navigation_policy_decision_get_navigation_action(WEBKIT_NAVIGATION_POLICY_DECISION(decision)); - if (webkit_navigation_action_get_navigation_type(navigationAction) != WEBKIT_NAVIGATION_TYPE_LINK_CLICKED - || webkit_navigation_action_get_mouse_button(navigationAction) != GDK_BUTTON_MIDDLE) + WebKitNavigationPolicyDecision *navigationDecision = WEBKIT_NAVIGATION_POLICY_DECISION(decision); + if (webkit_navigation_policy_decision_get_navigation_type(navigationDecision) != WEBKIT_NAVIGATION_TYPE_LINK_CLICKED + || webkit_navigation_policy_decision_get_mouse_button(navigationDecision) != GDK_BUTTON_MIDDLE) return FALSE; // Opening a new window if link clicked with the middle button. WebKitWebView *newWebView = WEBKIT_WEB_VIEW(webkit_web_view_new_with_context(webkit_web_view_get_context(webView))); GtkWidget *newWindow = browser_window_new(newWebView, GTK_WINDOW(window)); - webkit_web_view_load_request(newWebView, webkit_navigation_action_get_request(navigationAction)); + webkit_web_view_load_request(newWebView, webkit_navigation_policy_decision_get_request(navigationDecision)); gtk_widget_show(newWindow); webkit_policy_decision_ignore(decision); @@ -430,46 +402,19 @@ static gboolean webViewDecidePolicy(WebKitWebView *webView, WebKitPolicyDecision static gboolean webViewDecidePermissionRequest(WebKitWebView *webView, WebKitPermissionRequest *request, BrowserWindow *window) { - const gchar *dialog_title = NULL; - const gchar *dialog_message = NULL; - const gchar *dialog_message_format = NULL; - - if (WEBKIT_IS_GEOLOCATION_PERMISSION_REQUEST(request)) { - dialog_title = "Geolocation request"; - dialog_message_format = "%s"; - dialog_message = "Allow geolocation request?"; - } else if (WEBKIT_IS_NOTIFICATION_PERMISSION_REQUEST(request)) { - dialog_title = "Notification request"; - dialog_message_format = "%s"; - dialog_message = "Allow notifications request?"; - } else if (WEBKIT_IS_USER_MEDIA_PERMISSION_REQUEST(request)) { - dialog_message_format = "Allow access to %s device?"; - gboolean is_for_audio_device = webkit_user_media_permission_is_for_audio_device(WEBKIT_USER_MEDIA_PERMISSION_REQUEST(request)); - gboolean is_for_video_device = webkit_user_media_permission_is_for_video_device(WEBKIT_USER_MEDIA_PERMISSION_REQUEST(request)); - dialog_title = "UserMedia request"; - if (is_for_audio_device) { - if (is_for_video_device) - dialog_message = "audio/video"; - else - dialog_message = "audio"; - } else if (is_for_video_device) - dialog_message = "video"; - } else if (WEBKIT_IS_INSTALL_MISSING_MEDIA_PLUGINS_PERMISSION_REQUEST(request)) { - dialog_title = "Media plugin missing request"; - dialog_message_format = "The media backend was unable to find a plugin to play the requested media:\n%s.\nAllow to search and install the missing plugin?"; - dialog_message = webkit_install_missing_media_plugins_permission_request_get_description(WEBKIT_INSTALL_MISSING_MEDIA_PLUGINS_PERMISSION_REQUEST(request)); - } else + if (!WEBKIT_IS_GEOLOCATION_PERMISSION_REQUEST(request)) return FALSE; GtkWidget *dialog = gtk_message_dialog_new(GTK_WINDOW(window), - GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT, - GTK_MESSAGE_QUESTION, - GTK_BUTTONS_YES_NO, - "%s", dialog_title); + GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT, + GTK_MESSAGE_QUESTION, + GTK_BUTTONS_YES_NO, + "Geolocation request"); - gtk_message_dialog_format_secondary_text(GTK_MESSAGE_DIALOG(dialog), dialog_message_format, dialog_message); - g_signal_connect(dialog, "response", G_CALLBACK(permissionRequestDialogCallback), g_object_ref(request)); + gtk_message_dialog_format_secondary_text(GTK_MESSAGE_DIALOG(dialog), "Allow geolocation request?"); + g_signal_connect(dialog, "response", G_CALLBACK(geolocationRequestDialogCallback), g_object_ref(request)); gtk_widget_show(dialog); + return TRUE; } @@ -494,84 +439,6 @@ static gboolean browserWindowCanZoomOut(BrowserWindow *window) return zoomLevel > minimumZoomLevel; } -static gboolean browserWindowZoomIn(BrowserWindow *window) -{ - if (browserWindowCanZoomIn(window)) { - gdouble zoomLevel = webkit_web_view_get_zoom_level(window->webView) * zoomStep; - webkit_web_view_set_zoom_level(window->webView, zoomLevel); - return TRUE; - } - return FALSE; -} - -static gboolean browserWindowZoomOut(BrowserWindow *window) -{ - if (browserWindowCanZoomOut(window)) { - gdouble zoomLevel = webkit_web_view_get_zoom_level(window->webView) / zoomStep; - webkit_web_view_set_zoom_level(window->webView, zoomLevel); - return TRUE; - } - return FALSE; -} - -static gboolean scrollEventCallback(WebKitWebView *webView, const GdkEventScroll *event, BrowserWindow *window) -{ - GdkModifierType mod = gtk_accelerator_get_default_mod_mask(); - - if ((event->state & mod) != GDK_CONTROL_MASK) - return FALSE; - - if (event->delta_y < 0) - return browserWindowZoomIn(window); - - return browserWindowZoomOut(window); -} - -#if GTK_CHECK_VERSION(3, 12, 0) -static void colorChooserRGBAChanged(GtkColorChooser *colorChooser, GParamSpec *paramSpec, WebKitColorChooserRequest *request) -{ - GdkRGBA rgba; - gtk_color_chooser_get_rgba(colorChooser, &rgba); - webkit_color_chooser_request_set_rgba(request, &rgba); -} - -static void popoverColorClosed(GtkWidget *popover, WebKitColorChooserRequest *request) -{ - webkit_color_chooser_request_finish(request); -} - -static void colorChooserRequestFinished(WebKitColorChooserRequest *request, GtkWidget *popover) -{ - g_object_unref(request); - gtk_widget_destroy(popover); -} - -static gboolean runColorChooserCallback(WebKitWebView *webView, WebKitColorChooserRequest *request, BrowserWindow *window) -{ - GtkWidget *popover = gtk_popover_new(GTK_WIDGET(webView)); - - GdkRectangle rectangle; - webkit_color_chooser_request_get_element_rectangle(request, &rectangle); - gtk_popover_set_pointing_to(GTK_POPOVER(popover), &rectangle); - - GtkWidget *colorChooser = gtk_color_chooser_widget_new(); - GdkRGBA rgba; - webkit_color_chooser_request_get_rgba(request, &rgba); - gtk_color_chooser_set_rgba(GTK_COLOR_CHOOSER(colorChooser), &rgba); - g_signal_connect(colorChooser, "notify::rgba", G_CALLBACK(colorChooserRGBAChanged), request); - gtk_container_add(GTK_CONTAINER(popover), colorChooser); - gtk_widget_show(colorChooser); - - g_object_ref(request); - g_signal_connect_object(popover, "hide", G_CALLBACK(popoverColorClosed), request, 0); - g_signal_connect_object(request, "finished", G_CALLBACK(colorChooserRequestFinished), popover, 0); - - gtk_widget_show(popover); - - return TRUE; -} -#endif /* GTK_CHECK_VERSION(3, 12, 0) */ - static void browserWindowUpdateZoomActions(BrowserWindow *window) { gtk_widget_set_sensitive(window->zoomInItem, browserWindowCanZoomIn(window)); @@ -616,31 +483,16 @@ static void webViewIsLoadingChanged(GObject *object, GParamSpec *paramSpec, Brow gtk_tool_button_set_stock_id(GTK_TOOL_BUTTON(window->reloadOrStopButton), isLoading ? GTK_STOCK_STOP : GTK_STOCK_REFRESH); } -static gboolean inspectorWasOpenedInAnotherWindow(WebKitWebInspector *inspectorWindow, BrowserWindow *window) -{ - window->inspectorWindowIsVisible = TRUE; - return FALSE; -} - -static gboolean inspectorWasClosed(WebKitWebInspector *inspectorWindow, BrowserWindow *window) -{ - window->inspectorWindowIsVisible = FALSE; - return FALSE; -} - static void zoomInCallback(BrowserWindow *window) { - browserWindowZoomIn(window); + gdouble zoomLevel = webkit_web_view_get_zoom_level(window->webView) * zoomStep; + webkit_web_view_set_zoom_level(window->webView, zoomLevel); } static void zoomOutCallback(BrowserWindow *window) { - browserWindowZoomOut(window); -} - -static void defaultZoomCallback(BrowserWindow *window) -{ - webkit_web_view_set_zoom_level(window->webView, defaultZoomLevel); + gdouble zoomLevel = webkit_web_view_get_zoom_level(window->webView) / zoomStep; + webkit_web_view_set_zoom_level(window->webView, zoomLevel); } static void searchCallback(BrowserWindow *window) @@ -648,118 +500,6 @@ static void searchCallback(BrowserWindow *window) browser_search_bar_open(window->searchBar); } -static gboolean toggleWebInspector(BrowserWindow *window, gpointer user_data) -{ - WebKitWebInspector *inspectorWindow; - - inspectorWindow = webkit_web_view_get_inspector(WEBKIT_WEB_VIEW(window->webView)); - if (!window->inspectorWindowIsVisible) { - webkit_web_inspector_show(inspectorWindow); - window->inspectorWindowIsVisible = TRUE; - } else - webkit_web_inspector_close(inspectorWindow); - - return TRUE; -} - -static void reloadPage(BrowserWindow *window, gpointer user_data) -{ - webkit_web_view_reload(window->webView); -} - -static void reloadPageIgnoringCache(BrowserWindow *window, gpointer user_data) -{ - webkit_web_view_reload_bypass_cache(window->webView); -} - -static void stopPageLoad(BrowserWindow *window, gpointer user_data) -{ - if (gtk_widget_get_visible(GTK_WIDGET(window->searchBar))) - browser_search_bar_close(window->searchBar); - else if (webkit_web_view_is_loading(window->webView)) - webkit_web_view_stop_loading(window->webView); -} - -static void loadHomePage(BrowserWindow *window, gpointer user_data) -{ - webkit_web_view_load_uri(window->webView, BROWSER_DEFAULT_URL); -} - -static gboolean toggleFullScreen(BrowserWindow *window, gpointer user_data) -{ - if (!window->fullScreenIsEnabled) { - gtk_window_fullscreen(GTK_WINDOW(window)); - gtk_widget_hide(window->toolbar); - window->fullScreenIsEnabled = TRUE; - } else { - gtk_window_unfullscreen(GTK_WINDOW(window)); - gtk_widget_show(window->toolbar); - window->fullScreenIsEnabled = FALSE; - } - return TRUE; -} - -static void editingCommandCallback(GtkWidget*widget, BrowserWindow *window) -{ - webkit_web_view_execute_editing_command(window->webView, gtk_widget_get_name(widget)); -} - -static void insertImageCommandCallback(GtkWidget*widget, BrowserWindow *window) -{ - GtkWidget *fileChooser = gtk_file_chooser_dialog_new("Insert Image", GTK_WINDOW(window), GTK_FILE_CHOOSER_ACTION_OPEN, - "Cancel", GTK_RESPONSE_CANCEL, "Open", GTK_RESPONSE_ACCEPT, NULL); - - GtkFileFilter *filter = gtk_file_filter_new(); - gtk_file_filter_set_name(filter, "Images"); - gtk_file_filter_add_pixbuf_formats(filter); - gtk_file_chooser_set_filter(GTK_FILE_CHOOSER(fileChooser), filter); - - if (gtk_dialog_run(GTK_DIALOG(fileChooser)) == GTK_RESPONSE_ACCEPT) { - char *uri = gtk_file_chooser_get_uri(GTK_FILE_CHOOSER(fileChooser)); - if (uri) { - webkit_web_view_execute_editing_command_with_argument(window->webView, WEBKIT_EDITING_COMMAND_INSERT_IMAGE, uri); - g_free(uri); - } - } - - gtk_widget_destroy(fileChooser); -} - -static void insertLinkCommandCallback(GtkWidget*widget, BrowserWindow *window) -{ - GtkWidget *dialog = gtk_dialog_new_with_buttons("Insert Link", GTK_WINDOW(window), GTK_DIALOG_MODAL, "Insert", GTK_RESPONSE_ACCEPT, NULL); - gtk_dialog_set_default_response(GTK_DIALOG(dialog), GTK_RESPONSE_ACCEPT); - GtkWidget *entry = gtk_entry_new(); - gtk_entry_set_placeholder_text(GTK_ENTRY(entry), "URL"); - gtk_entry_set_activates_default(GTK_ENTRY(entry), TRUE); - gtk_container_add(GTK_CONTAINER(gtk_dialog_get_content_area(GTK_DIALOG(dialog))), entry); - gtk_widget_show(entry); - - if (gtk_dialog_run(GTK_DIALOG(dialog)) == GTK_RESPONSE_ACCEPT) { - const char *url = gtk_entry_get_text(GTK_ENTRY(entry)); - if (url && *url) - webkit_web_view_execute_editing_command_with_argument(window->webView, WEBKIT_EDITING_COMMAND_CREATE_LINK, url); - } - - gtk_widget_destroy(dialog); -} - -static void browserWindowEditingCommandToggleButtonSetActive(BrowserWindow *window, GtkWidget *button, gboolean active) -{ - g_signal_handlers_block_by_func(button, G_CALLBACK(editingCommandCallback), window); - gtk_toggle_tool_button_set_active(GTK_TOGGLE_TOOL_BUTTON(button), active); - g_signal_handlers_unblock_by_func(button, G_CALLBACK(editingCommandCallback), window); -} - -static void typingAttributesChanged(WebKitEditorState *editorState, GParamSpec *spec, BrowserWindow *window) -{ - unsigned typingAttributes = webkit_editor_state_get_typing_attributes(editorState); - browserWindowEditingCommandToggleButtonSetActive(window, window->boldItem, typingAttributes & WEBKIT_EDITOR_TYPING_ATTRIBUTE_BOLD); - browserWindowEditingCommandToggleButtonSetActive(window, window->italicItem, typingAttributes & WEBKIT_EDITOR_TYPING_ATTRIBUTE_ITALIC); - browserWindowEditingCommandToggleButtonSetActive(window, window->underlineItem, typingAttributes & WEBKIT_EDITOR_TYPING_ATTRIBUTE_UNDERLINE); - browserWindowEditingCommandToggleButtonSetActive(window, window->strikethroughItem, typingAttributes & WEBKIT_EDITOR_TYPING_ATTRIBUTE_STRIKETHROUGH); -} - static void browserWindowFinalize(GObject *gObject) { BrowserWindow *window = BROWSER_WINDOW(gObject); @@ -811,138 +551,6 @@ static void browserWindowSetProperty(GObject *object, guint propId, const GValue } } -static void browserWindowSetupEditorToolbar(BrowserWindow *window) -{ - GtkWidget *toolbar = gtk_toolbar_new(); - gtk_orientable_set_orientation(GTK_ORIENTABLE(toolbar), GTK_ORIENTATION_HORIZONTAL); - gtk_toolbar_set_style(GTK_TOOLBAR(toolbar), GTK_TOOLBAR_BOTH_HORIZ); - - GtkToolItem *item = gtk_toggle_tool_button_new_from_stock(GTK_STOCK_BOLD); - window->boldItem = GTK_WIDGET(item); - gtk_widget_set_name(GTK_WIDGET(item), "Bold"); - g_signal_connect(G_OBJECT(item), "toggled", G_CALLBACK(editingCommandCallback), window); - gtk_toolbar_insert(GTK_TOOLBAR(toolbar), item, -1); - gtk_widget_show(GTK_WIDGET(item)); - - item = gtk_toggle_tool_button_new_from_stock(GTK_STOCK_ITALIC); - window->italicItem = GTK_WIDGET(item); - gtk_widget_set_name(GTK_WIDGET(item), "Italic"); - g_signal_connect(G_OBJECT(item), "toggled", G_CALLBACK(editingCommandCallback), window); - gtk_toolbar_insert(GTK_TOOLBAR(toolbar), item, -1); - gtk_widget_show(GTK_WIDGET(item)); - - item = gtk_toggle_tool_button_new_from_stock(GTK_STOCK_UNDERLINE); - window->underlineItem = GTK_WIDGET(item); - gtk_widget_set_name(GTK_WIDGET(item), "Underline"); - g_signal_connect(G_OBJECT(item), "toggled", G_CALLBACK(editingCommandCallback), window); - gtk_toolbar_insert(GTK_TOOLBAR(toolbar), item, -1); - gtk_widget_show(GTK_WIDGET(item)); - - item = gtk_toggle_tool_button_new_from_stock(GTK_STOCK_STRIKETHROUGH); - gtk_widget_set_name(GTK_WIDGET(item), "Strikethrough"); - window->strikethroughItem = GTK_WIDGET(item); - g_signal_connect(G_OBJECT(item), "toggled", G_CALLBACK(editingCommandCallback), window); - gtk_toolbar_insert(GTK_TOOLBAR(toolbar), item, -1); - gtk_widget_show(GTK_WIDGET(item)); - - item = gtk_separator_tool_item_new(); - gtk_toolbar_insert(GTK_TOOLBAR(toolbar), item, -1); - gtk_widget_show(GTK_WIDGET(item)); - - item = gtk_tool_button_new_from_stock(GTK_STOCK_CUT); - gtk_widget_set_name(GTK_WIDGET(item), WEBKIT_EDITING_COMMAND_CUT); - g_signal_connect(G_OBJECT(item), "clicked", G_CALLBACK(editingCommandCallback), window); - gtk_toolbar_insert(GTK_TOOLBAR(toolbar), item, -1); - gtk_widget_show(GTK_WIDGET(item)); - - item = gtk_tool_button_new_from_stock(GTK_STOCK_COPY); - gtk_widget_set_name(GTK_WIDGET(item), WEBKIT_EDITING_COMMAND_COPY); - g_signal_connect(G_OBJECT(item), "clicked", G_CALLBACK(editingCommandCallback), window); - gtk_toolbar_insert(GTK_TOOLBAR(toolbar), item, -1); - gtk_widget_show(GTK_WIDGET(item)); - - item = gtk_tool_button_new_from_stock(GTK_STOCK_PASTE); - gtk_widget_set_name(GTK_WIDGET(item), WEBKIT_EDITING_COMMAND_PASTE); - g_signal_connect(G_OBJECT(item), "clicked", G_CALLBACK(editingCommandCallback), window); - gtk_toolbar_insert(GTK_TOOLBAR(toolbar), item, -1); - gtk_widget_show(GTK_WIDGET(item)); - - item = gtk_separator_tool_item_new(); - gtk_toolbar_insert(GTK_TOOLBAR(toolbar), item, -1); - gtk_widget_show(GTK_WIDGET(item)); - - item = gtk_tool_button_new_from_stock(GTK_STOCK_UNDO); - gtk_widget_set_name(GTK_WIDGET(item), WEBKIT_EDITING_COMMAND_UNDO); - g_signal_connect(G_OBJECT(item), "clicked", G_CALLBACK(editingCommandCallback), window); - gtk_toolbar_insert(GTK_TOOLBAR(toolbar), item, -1); - gtk_widget_show(GTK_WIDGET(item)); - - item = gtk_tool_button_new_from_stock(GTK_STOCK_REDO); - gtk_widget_set_name(GTK_WIDGET(item), WEBKIT_EDITING_COMMAND_REDO); - g_signal_connect(G_OBJECT(item), "clicked", G_CALLBACK(editingCommandCallback), window); - gtk_toolbar_insert(GTK_TOOLBAR(toolbar), item, -1); - gtk_widget_show(GTK_WIDGET(item)); - - item = gtk_separator_tool_item_new(); - gtk_toolbar_insert(GTK_TOOLBAR(toolbar), item, -1); - gtk_widget_show(GTK_WIDGET(item)); - - item = gtk_radio_tool_button_new_from_stock(NULL, GTK_STOCK_JUSTIFY_LEFT); - GSList *justifyRadioGroup = gtk_radio_tool_button_get_group(GTK_RADIO_TOOL_BUTTON(item)); - gtk_widget_set_name(GTK_WIDGET(item), "JustifyLeft"); - g_signal_connect(G_OBJECT(item), "toggled", G_CALLBACK(editingCommandCallback), window); - gtk_toolbar_insert(GTK_TOOLBAR(toolbar), item, -1); - gtk_widget_show(GTK_WIDGET(item)); - - item = gtk_radio_tool_button_new_from_stock(justifyRadioGroup, GTK_STOCK_JUSTIFY_CENTER); - justifyRadioGroup = gtk_radio_tool_button_get_group(GTK_RADIO_TOOL_BUTTON(item)); - gtk_widget_set_name(GTK_WIDGET(item), "JustifyCenter"); - g_signal_connect(G_OBJECT(item), "toggled", G_CALLBACK(editingCommandCallback), window); - gtk_toolbar_insert(GTK_TOOLBAR(toolbar), item, -1); - gtk_widget_show(GTK_WIDGET(item)); - - item = gtk_radio_tool_button_new_from_stock(justifyRadioGroup, GTK_STOCK_JUSTIFY_RIGHT); - gtk_widget_set_name(GTK_WIDGET(item), "JustifyRight"); - g_signal_connect(G_OBJECT(item), "toggled", G_CALLBACK(editingCommandCallback), window); - gtk_toolbar_insert(GTK_TOOLBAR(toolbar), item, -1); - gtk_widget_show(GTK_WIDGET(item)); - - item = gtk_separator_tool_item_new(); - gtk_toolbar_insert(GTK_TOOLBAR(toolbar), item, -1); - gtk_widget_show(GTK_WIDGET(item)); - - item = gtk_tool_button_new_from_stock(GTK_STOCK_INDENT); - gtk_widget_set_name(GTK_WIDGET(item), "Indent"); - g_signal_connect(G_OBJECT(item), "clicked", G_CALLBACK(editingCommandCallback), window); - gtk_toolbar_insert(GTK_TOOLBAR(toolbar), item, -1); - gtk_widget_show(GTK_WIDGET(item)); - - item = gtk_tool_button_new_from_stock(GTK_STOCK_UNINDENT); - gtk_widget_set_name(GTK_WIDGET(item), "Outdent"); - g_signal_connect(G_OBJECT(item), "clicked", G_CALLBACK(editingCommandCallback), window); - gtk_toolbar_insert(GTK_TOOLBAR(toolbar), item, -1); - gtk_widget_show(GTK_WIDGET(item)); - - item = gtk_separator_tool_item_new(); - gtk_toolbar_insert(GTK_TOOLBAR(toolbar), item, -1); - gtk_widget_show(GTK_WIDGET(item)); - - item = gtk_tool_button_new(NULL, NULL); - gtk_tool_button_set_icon_name(GTK_TOOL_BUTTON(item), "insert-image"); - g_signal_connect(G_OBJECT(item), "clicked", G_CALLBACK(insertImageCommandCallback), window); - gtk_toolbar_insert(GTK_TOOLBAR(toolbar), item, -1); - gtk_widget_show(GTK_WIDGET(item)); - - item = gtk_tool_button_new(NULL, NULL); - gtk_tool_button_set_icon_name(GTK_TOOL_BUTTON(item), "insert-link"); - g_signal_connect(G_OBJECT(item), "clicked", G_CALLBACK(insertLinkCommandCallback), window); - gtk_toolbar_insert(GTK_TOOLBAR(toolbar), item, -1); - gtk_widget_show(GTK_WIDGET(item)); - - gtk_box_pack_start(GTK_BOX(window->mainBox), toolbar, FALSE, FALSE, 0); - gtk_widget_show(toolbar); -} - static void browser_window_init(BrowserWindow *window) { g_atomic_int_inc(&windowCount); @@ -959,58 +567,6 @@ static void browser_window_init(BrowserWindow *window) window->accelGroup = gtk_accel_group_new(); gtk_window_add_accel_group(GTK_WINDOW(window), window->accelGroup); - /* Global accelerators */ - gtk_accel_group_connect(window->accelGroup, GDK_KEY_I, GDK_CONTROL_MASK | GDK_SHIFT_MASK, GTK_ACCEL_VISIBLE, - g_cclosure_new_swap(G_CALLBACK(toggleWebInspector), window, NULL)); - gtk_accel_group_connect(window->accelGroup, GDK_KEY_F12, 0, GTK_ACCEL_VISIBLE, - g_cclosure_new_swap(G_CALLBACK(toggleWebInspector), window, NULL)); - - /* Reload page */ - gtk_accel_group_connect(window->accelGroup, GDK_KEY_F5, 0, GTK_ACCEL_VISIBLE, - g_cclosure_new_swap(G_CALLBACK(reloadPage), window, NULL)); - gtk_accel_group_connect(window->accelGroup, GDK_KEY_R, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE, - g_cclosure_new_swap(G_CALLBACK(reloadPage), window, NULL)); - - /* Reload page ignoring cache */ - gtk_accel_group_connect(window->accelGroup, GDK_KEY_F5, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE, - g_cclosure_new_swap(G_CALLBACK(reloadPageIgnoringCache), window, NULL)); - gtk_accel_group_connect(window->accelGroup, GDK_KEY_R, GDK_CONTROL_MASK | GDK_SHIFT_MASK, GTK_ACCEL_VISIBLE, - g_cclosure_new_swap(G_CALLBACK(reloadPageIgnoringCache), window, NULL)); - - /* Stop page load */ - gtk_accel_group_connect(window->accelGroup, GDK_KEY_F6, 0, GTK_ACCEL_VISIBLE, - g_cclosure_new_swap(G_CALLBACK(stopPageLoad), window, NULL)); - gtk_accel_group_connect(window->accelGroup, GDK_KEY_Escape, 0, GTK_ACCEL_VISIBLE, - g_cclosure_new_swap(G_CALLBACK(stopPageLoad), window, NULL)); - - /* Load home page */ - gtk_accel_group_connect(window->accelGroup, GDK_KEY_Home, GDK_MOD1_MASK, GTK_ACCEL_VISIBLE, - g_cclosure_new_swap(G_CALLBACK(loadHomePage), window, NULL)); - - /* Zoom in, zoom out and default zoom*/ - gtk_accel_group_connect(window->accelGroup, GDK_KEY_equal, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE, - g_cclosure_new_swap(G_CALLBACK(zoomInCallback), window, NULL)); - gtk_accel_group_connect(window->accelGroup, GDK_KEY_KP_Add, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE, - g_cclosure_new_swap(G_CALLBACK(zoomInCallback), window, NULL)); - gtk_accel_group_connect(window->accelGroup, GDK_KEY_minus, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE, - g_cclosure_new_swap(G_CALLBACK(zoomOutCallback), window, NULL)); - gtk_accel_group_connect(window->accelGroup, GDK_KEY_KP_Subtract, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE, - g_cclosure_new_swap(G_CALLBACK(zoomOutCallback), window, NULL)); - gtk_accel_group_connect(window->accelGroup, GDK_KEY_0, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE, - g_cclosure_new_swap(G_CALLBACK(defaultZoomCallback), window, NULL)); - gtk_accel_group_connect(window->accelGroup, GDK_KEY_KP_0, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE, - g_cclosure_new_swap(G_CALLBACK(defaultZoomCallback), window, NULL)); - - /* Toggle fullscreen */ - gtk_accel_group_connect(window->accelGroup, GDK_KEY_F11, 0, GTK_ACCEL_VISIBLE, - g_cclosure_new_swap(G_CALLBACK(toggleFullScreen), window, NULL)); - - /* Quit */ - gtk_accel_group_connect(window->accelGroup, GDK_KEY_Q, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE, - g_cclosure_new_swap(G_CALLBACK(gtk_widget_destroy), window, NULL)); - gtk_accel_group_connect(window->accelGroup, GDK_KEY_W, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE, - g_cclosure_new_swap(G_CALLBACK(gtk_widget_destroy), window, NULL)); - GtkWidget *toolbar = gtk_toolbar_new(); window->toolbar = toolbar; gtk_orientable_set_orientation(GTK_ORIENTABLE(toolbar), GTK_ORIENTATION_HORIZONTAL); @@ -1053,12 +609,6 @@ static void browser_window_init(BrowserWindow *window) gtk_widget_add_accelerator(GTK_WIDGET(item), "clicked", window->accelGroup, GDK_KEY_F, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE); gtk_widget_show(GTK_WIDGET(item)); - item = gtk_tool_button_new_from_stock(GTK_STOCK_HOME); - g_signal_connect_swapped(item, "clicked", G_CALLBACK(loadHomePage), window); - gtk_toolbar_insert(GTK_TOOLBAR(toolbar), item, -1); - gtk_widget_add_accelerator(GTK_WIDGET(item), "clicked", window->accelGroup, GDK_KEY_Home, GDK_MOD1_MASK, GTK_ACCEL_VISIBLE); - gtk_widget_show(GTK_WIDGET(item)); - item = gtk_tool_item_new(); gtk_tool_item_set_expand(item, TRUE); gtk_container_add(GTK_CONTAINER(item), window->uriEntry); @@ -1087,17 +637,12 @@ static void browserWindowConstructed(GObject *gObject) BrowserWindow *window = BROWSER_WINDOW(gObject); browserWindowUpdateZoomActions(window); - if (webkit_web_view_is_editable(window->webView)) { - browserWindowSetupEditorToolbar(window); - g_signal_connect(webkit_web_view_get_editor_state(window->webView), "notify::typing-attributes", G_CALLBACK(typingAttributesChanged), window); - } g_signal_connect(window->webView, "notify::uri", G_CALLBACK(webViewURIChanged), window); g_signal_connect(window->webView, "notify::estimated-load-progress", G_CALLBACK(webViewLoadProgressChanged), window); g_signal_connect(window->webView, "notify::title", G_CALLBACK(webViewTitleChanged), window); g_signal_connect(window->webView, "create", G_CALLBACK(webViewCreate), window); g_signal_connect(window->webView, "load-failed", G_CALLBACK(webViewLoadFailed), window); - g_signal_connect(window->webView, "load-failed-with-tls-errors", G_CALLBACK(webViewLoadFailedWithTLSerrors), window); g_signal_connect(window->webView, "decide-policy", G_CALLBACK(webViewDecidePolicy), window); g_signal_connect(window->webView, "permission-request", G_CALLBACK(webViewDecidePermissionRequest), window); g_signal_connect(window->webView, "mouse-target-changed", G_CALLBACK(webViewMouseTargetChanged), window); @@ -1106,10 +651,6 @@ static void browserWindowConstructed(GObject *gObject) g_signal_connect(window->webView, "enter-fullscreen", G_CALLBACK(webViewEnterFullScreen), window); g_signal_connect(window->webView, "leave-fullscreen", G_CALLBACK(webViewLeaveFullScreen), window); g_signal_connect(window->webView, "notify::is-loading", G_CALLBACK(webViewIsLoadingChanged), window); - g_signal_connect(window->webView, "scroll-event", G_CALLBACK(scrollEventCallback), window); -#if GTK_CHECK_VERSION(3, 12, 0) - g_signal_connect(window->webView, "run-color-chooser", G_CALLBACK(runColorChooserCallback), window); -#endif g_signal_connect(webkit_web_view_get_context(window->webView), "download-started", G_CALLBACK(downloadStarted), window); @@ -1120,10 +661,6 @@ static void browserWindowConstructed(GObject *gObject) WebKitBackForwardList *backForwadlist = webkit_web_view_get_back_forward_list(window->webView); g_signal_connect(backForwadlist, "changed", G_CALLBACK(backForwadlistChanged), window); - WebKitWebInspector *inspectorWindow = webkit_web_view_get_inspector(WEBKIT_WEB_VIEW(window->webView)); - g_signal_connect(inspectorWindow, "open-window", G_CALLBACK(inspectorWasOpenedInAnotherWindow), window); - g_signal_connect(inspectorWindow, "closed", G_CALLBACK(inspectorWasClosed), window); - GtkWidget *overlay = gtk_overlay_new(); gtk_box_pack_start(GTK_BOX(window->mainBox), overlay, TRUE, TRUE, 0); gtk_widget_show(overlay); @@ -1145,9 +682,6 @@ static void browserWindowConstructed(GObject *gObject) gtk_widget_set_no_show_all(window->fullScreenMessageLabel, TRUE); gtk_overlay_add_overlay(GTK_OVERLAY(overlay), window->fullScreenMessageLabel); gtk_widget_show(GTK_WIDGET(window->webView)); - - if (webkit_web_view_is_editable(window->webView)) - webkit_web_view_load_html(window->webView, "<html></html>", "file:///"); } static void browser_window_class_init(BrowserWindowClass *klass) @@ -1205,25 +739,3 @@ void browser_window_load_uri(BrowserWindow *window, const char *uri) webkit_web_view_run_javascript(window->webView, strstr(uri, "javascript:"), NULL, NULL, NULL); } - -void browser_window_set_background_color(BrowserWindow *window, GdkRGBA *rgba) -{ - g_return_if_fail(BROWSER_IS_WINDOW(window)); - g_return_if_fail(rgba); - - GdkRGBA viewRGBA; - webkit_web_view_get_background_color(window->webView, &viewRGBA); - if (gdk_rgba_equal(rgba, &viewRGBA)) - return; - - if (rgba->alpha < 1) { - GdkVisual *rgbaVisual = gdk_screen_get_rgba_visual(gtk_window_get_screen(GTK_WINDOW(window))); - if (!rgbaVisual) - return; - - gtk_widget_set_visual(GTK_WIDGET(window), rgbaVisual); - gtk_widget_set_app_paintable(GTK_WIDGET(window), TRUE); - } - - webkit_web_view_set_background_color(window->webView, rgba); -} diff --git a/Tools/MiniBrowser/gtk/BrowserWindow.h b/Tools/MiniBrowser/gtk/BrowserWindow.h index d061e40f4..66675462f 100644 --- a/Tools/MiniBrowser/gtk/BrowserWindow.h +++ b/Tools/MiniBrowser/gtk/BrowserWindow.h @@ -37,7 +37,6 @@ G_BEGIN_DECLS #define BROWSER_IS_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), BROWSER_TYPE_WINDOW)) #define BROWSER_IS_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), BROWSER_TYPE_WINDOW)) #define BROWSER_WINDOW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), BROWSER_TYPE_WINDOW, BrowserWindowClass)) -#define BROWSER_DEFAULT_URL "http://www.webkitgtk.org/" typedef struct _BrowserWindow BrowserWindow; typedef struct _BrowserWindowClass BrowserWindowClass; @@ -47,7 +46,6 @@ GType browser_window_get_type(void); GtkWidget* browser_window_new(WebKitWebView*, GtkWindow*); WebKitWebView* browser_window_get_view(BrowserWindow*); void browser_window_load_uri(BrowserWindow *, const char *uri); -void browser_window_set_background_color(BrowserWindow*, GdkRGBA*); G_END_DECLS diff --git a/Tools/MiniBrowser/gtk/CMakeLists.txt b/Tools/MiniBrowser/gtk/CMakeLists.txt deleted file mode 100644 index 94eecfa13..000000000 --- a/Tools/MiniBrowser/gtk/CMakeLists.txt +++ /dev/null @@ -1,63 +0,0 @@ -set(MINIBROWSER_DIR "${TOOLS_DIR}/MiniBrowser/gtk") -set(DERIVED_SOURCES_MINIBROWSER_DIR "${CMAKE_BINARY_DIR}/DerivedSources/MiniBrowser") - -file(MAKE_DIRECTORY ${DERIVED_SOURCES_MINIBROWSER_DIR}) - -set(MiniBrowser_SOURCES - ${DERIVED_SOURCES_MINIBROWSER_DIR}/BrowserMarshal.c - ${MINIBROWSER_DIR}/BrowserCellRendererVariant.c - ${MINIBROWSER_DIR}/BrowserCellRendererVariant.h - ${MINIBROWSER_DIR}/BrowserDownloadsBar.c - ${MINIBROWSER_DIR}/BrowserDownloadsBar.h - ${MINIBROWSER_DIR}/BrowserSearchBar.c - ${MINIBROWSER_DIR}/BrowserSearchBar.h - ${MINIBROWSER_DIR}/BrowserSettingsDialog.c - ${MINIBROWSER_DIR}/BrowserSettingsDialog.h - ${MINIBROWSER_DIR}/BrowserWindow.c - ${MINIBROWSER_DIR}/BrowserWindow.h - ${MINIBROWSER_DIR}/main.c -) - -set(MiniBrowser_INCLUDE_DIRECTORIES - ${CMAKE_BINARY_DIR} - ${DERIVED_SOURCES_MINIBROWSER_DIR} - ${DERIVED_SOURCES_WEBKIT2GTK_DIR} - ${FORWARDING_HEADERS_WEBKIT2GTK_DIR} - ${FORWARDING_HEADERS_DIR} - ${CMAKE_SOURCE_DIR}/Source -) - -set(MiniBrowser_SYSTEM_INCLUDE_DIRECTORIES - ${GTK3_INCLUDE_DIRS} - ${GLIB_INCLUDE_DIRS} - ${LIBSOUP_INCLUDE_DIRS} -) - -set(MiniBrowser_LIBRARIES - ${JavaScriptCore_LIBRARY_NAME} - WebKit2 - ${GTK3_LIBRARIES} - ${GLIB_LIBRARIES} -) - -add_custom_command( - OUTPUT ${DERIVED_SOURCES_MINIBROWSER_DIR}/BrowserMarshal.c - ${DERIVED_SOURCES_MINIBROWSER_DIR}/BrowserMarshal.h - MAIN_DEPENDENCY ${MINIBROWSER_DIR}/browser-marshal.list - COMMAND glib-genmarshal --prefix=browser_marshal ${MINIBROWSER_DIR}/browser-marshal.list --body > ${DERIVED_SOURCES_MINIBROWSER_DIR}/BrowserMarshal.c - COMMAND glib-genmarshal --prefix=browser_marshal ${MINIBROWSER_DIR}/browser-marshal.list --header > ${DERIVED_SOURCES_MINIBROWSER_DIR}/BrowserMarshal.h - VERBATIM) - -if (DEVELOPER_MODE) - add_definitions(-DWEBKIT_INJECTED_BUNDLE_PATH="${CMAKE_LIBRARY_OUTPUT_DIRECTORY}") -endif () - -add_definitions(-DGDK_VERSION_MIN_REQUIRED=GDK_VERSION_3_6) - -include_directories(${MiniBrowser_INCLUDE_DIRECTORIES}) -include_directories(SYSTEM ${MiniBrowser_SYSTEM_INCLUDE_DIRECTORIES}) -add_executable(MiniBrowser ${MiniBrowser_SOURCES}) -target_link_libraries(MiniBrowser ${MiniBrowser_LIBRARIES}) -set_target_properties(MiniBrowser PROPERTIES FOLDER "Tools") - -install(TARGETS MiniBrowser DESTINATION "${EXEC_INSTALL_DIR}") diff --git a/Tools/MiniBrowser/gtk/GNUmakefile.am b/Tools/MiniBrowser/gtk/GNUmakefile.am new file mode 100644 index 000000000..8bdbdd33e --- /dev/null +++ b/Tools/MiniBrowser/gtk/GNUmakefile.am @@ -0,0 +1,75 @@ +if ENABLE_WEBKIT2 +noinst_PROGRAMS += \ + Programs/MiniBrowser +endif + +Programs_MiniBrowser_CPPFLAGS = \ + -I$(srcdir)/Source \ + -I$(top_builddir)/DerivedSources/WebKit2 \ + -I$(top_builddir)/DerivedSources/WebKit2/webkit2gtk \ + -I$(top_builddir)/DerivedSources/WebKit2/webkit2gtk/include \ + -DWEBKIT_EXEC_PATH=\"${shell pwd}/$(top_builddir)/Programs/\" \ + -DWEBKIT_INJECTED_BUNDLE_PATH=\"${shell pwd}/$(top_builddir)/.libs\" \ + -DGDK_VERSION_MIN_REQUIRED=GDK_VERSION_3_6 \ + $(global_cppflags) \ + $(javascriptcore_cppflags) \ + $(FREETYPE_CFLAGS) \ + $(GLIB_CFLAGS) \ + $(GTK_CFLAGS) \ + $(LIBSOUP_CFLAGS) + +Programs_MiniBrowser_SOURCES = \ + Tools/MiniBrowser/gtk/BrowserCellRendererVariant.h \ + Tools/MiniBrowser/gtk/BrowserCellRendererVariant.c \ + Tools/MiniBrowser/gtk/BrowserDownloadsBar.h \ + Tools/MiniBrowser/gtk/BrowserDownloadsBar.c \ + Tools/MiniBrowser/gtk/BrowserSearchBar.h \ + Tools/MiniBrowser/gtk/BrowserSearchBar.c \ + Tools/MiniBrowser/gtk/BrowserSettingsDialog.h \ + Tools/MiniBrowser/gtk/BrowserSettingsDialog.c \ + Tools/MiniBrowser/gtk/BrowserWindow.h \ + Tools/MiniBrowser/gtk/BrowserWindow.c \ + Tools/MiniBrowser/gtk/main.c + +minibrowser_built_sources += \ + DerivedSources/WebKit2/BrowserMarshal.h \ + DerivedSources/WebKit2/BrowserMarshal.c +nodist_Programs_MiniBrowser_SOURCES = \ + $(minibrowser_built_sources) + +Programs_MiniBrowser_LDADD = \ + libwebkit2gtk-@WEBKITGTK_API_MAJOR_VERSION@.@WEBKITGTK_API_MINOR_VERSION@.la \ + $(FREETYPE_LIBS) \ + $(GLIB_LIBS) \ + $(GTK_LIBS) \ + $(LIBSOUP_LIBS) + +Programs_MiniBrowser_LDFLAGS = \ + -no-install + +CLEANFILES += \ + $(top_builddir)/Programs/MiniBrowser \ + $(minibrowser_built_sources) \ + $(top_builddir)/stamp-mini-browser-marshal.h \ + $(top_builddir)/stamp-mini-browser-marshal.c + +BUILT_SOURCES += $(minibrowser_built_sources) + +minibrowser_marshal_list = $(srcdir)/Tools/MiniBrowser/gtk/browser-marshal.list + +$(GENSOURCES_WEBKIT2)/BrowserMarshal.h: stamp-mini-browser-marshal.h + @true +$(GENSOURCES_WEBKIT2)/BrowserMarshal.c: stamp-mini-browser-marshal.c + @true + +stamp-mini-browser-marshal.c: $(minibrowser_marshal_list) + $(AM_V_GEN)$(GLIB_GENMARSHAL) --prefix=browser_marshal $(minibrowser_marshal_list) --body > $(GENSOURCES_WEBKIT2)/BrowserMarshal.c && \ + echo timestamp > $(@F) + +stamp-mini-browser-marshal.h: $(minibrowser_marshal_list) + $(AM_V_GEN)$(GLIB_GENMARSHAL) --prefix=browser_marshal $(minibrowser_marshal_list) --header > $(GENSOURCES_WEBKIT2)/BrowserMarshal.h && \ + echo timestamp > $(@F) + +EXTRA_DIST += \ + $(srcdir)/Tools/MiniBrowser/gtk/browser-marshal.list + diff --git a/Tools/MiniBrowser/gtk/main.c b/Tools/MiniBrowser/gtk/main.c index f5f6e176a..e383fda83 100644 --- a/Tools/MiniBrowser/gtk/main.c +++ b/Tools/MiniBrowser/gtk/main.c @@ -12,10 +12,10 @@ * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * - * THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY + * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE COMPUTER, INC. OR * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR @@ -25,8 +25,6 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#include "cmakeconfig.h" - #include "BrowserWindow.h" #include <errno.h> #include <gtk/gtk.h> @@ -37,8 +35,6 @@ static const gchar **uriArguments = NULL; static const char *miniBrowserAboutScheme = "minibrowser-about"; -static GdkRGBA *backgroundColor; -static gboolean editorMode; typedef enum { MINI_BROWSER_ERROR_INVALID_ABOUT_PATH @@ -61,41 +57,21 @@ static gchar *argumentToURL(const char *filename) static void createBrowserWindow(const gchar *uri, WebKitSettings *webkitSettings) { GtkWidget *webView = webkit_web_view_new(); - if (editorMode) - webkit_web_view_set_editable(WEBKIT_WEB_VIEW(webView), TRUE); GtkWidget *mainWindow = browser_window_new(WEBKIT_WEB_VIEW(webView), NULL); - if (backgroundColor) - browser_window_set_background_color(BROWSER_WINDOW(mainWindow), backgroundColor); + gchar *url = argumentToURL(uri); if (webkitSettings) webkit_web_view_set_settings(WEBKIT_WEB_VIEW(webView), webkitSettings); - if (!editorMode) { - gchar *url = argumentToURL(uri); - browser_window_load_uri(BROWSER_WINDOW(mainWindow), url); - g_free(url); - } + browser_window_load_uri(BROWSER_WINDOW(mainWindow), url); + g_free(url); gtk_widget_grab_focus(webView); gtk_widget_show(mainWindow); } -static gboolean parseBackgroundColor(const char *optionName, const char *value, gpointer data, GError **error) -{ - GdkRGBA rgba; - if (gdk_rgba_parse(&rgba, value)) { - backgroundColor = gdk_rgba_copy(&rgba); - return TRUE; - } - - g_set_error(error, G_OPTION_ERROR, G_OPTION_ERROR_FAILED, "Failed to parse '%s' as RGBA color", value); - return FALSE; -} - static const GOptionEntry commandLineOptions[] = { - { "bg-color", 0, 0, G_OPTION_ARG_CALLBACK, parseBackgroundColor, "Background color", NULL }, - { "editor-mode", 'e', 0, G_OPTION_ARG_NONE, &editorMode, "Run in editor mode", NULL }, { G_OPTION_REMAINING, 0, 0, G_OPTION_ARG_FILENAME_ARRAY, &uriArguments, 0, "[URL…]" }, { 0, 0, 0, 0, 0, 0, 0 } }; @@ -262,13 +238,12 @@ aboutURISchemeRequestCallback(WebKitURISchemeRequest *request, gpointer userData int main(int argc, char *argv[]) { gtk_init(&argc, &argv); -#if ENABLE_DEVELOPER_MODE - g_setenv("WEBKIT_INJECTED_BUNDLE_PATH", WEBKIT_INJECTED_BUNDLE_PATH, FALSE); -#endif - const gchar *singleprocess = g_getenv("MINIBROWSER_SINGLEPROCESS"); - webkit_web_context_set_process_model(webkit_web_context_get_default(), (singleprocess && *singleprocess) ? - WEBKIT_PROCESS_MODEL_SHARED_SECONDARY_PROCESS : WEBKIT_PROCESS_MODEL_MULTIPLE_SECONDARY_PROCESSES); + const gchar *multiprocess = g_getenv("MINIBROWSER_MULTIPROCESS"); + if (multiprocess && *multiprocess) { + webkit_web_context_set_process_model(webkit_web_context_get_default(), + WEBKIT_PROCESS_MODEL_MULTIPLE_SECONDARY_PROCESSES); + } GOptionContext *context = g_option_context_new(NULL); g_option_context_add_main_entries(context, commandLineOptions, 0); @@ -290,6 +265,8 @@ int main(int argc, char *argv[]) } g_option_context_free (context); + g_setenv("WEBKIT_INJECTED_BUNDLE_PATH", WEBKIT_INJECTED_BUNDLE_PATH, FALSE); + // Enable the favicon database, by specifying the default directory. webkit_web_context_set_favicon_database_directory(webkit_web_context_get_default(), NULL); @@ -301,7 +278,7 @@ int main(int argc, char *argv[]) for (i = 0; uriArguments[i]; i++) createBrowserWindow(uriArguments[i], webkitSettings); } else - createBrowserWindow(BROWSER_DEFAULT_URL, webkitSettings); + createBrowserWindow("http://www.webkitgtk.org/", webkitSettings); g_clear_object(&webkitSettings); |