Remove unneeded switches class

This commit is contained in:
Kevin Sawicki
2012-06-07 19:16:04 -07:00
parent 0aeb0b6a56
commit aaca57ff7b
5 changed files with 11 additions and 384 deletions

View File

@@ -61,7 +61,7 @@ LIBS := -lX11 \
-lcef \
-lcef_dll_wrapper
SOURCES=atom.cpp cefclient.cpp native_handler.cpp cefclient_switches.cpp client_handler.cpp client_handler_gtk.cpp
SOURCES=atom.cpp cefclient.cpp native_handler.cpp client_handler.cpp client_handler_gtk.cpp
OBJECTS=$(SOURCES:.cpp=.o)
INSTALLDIR=/usr/local/atom

View File

@@ -68,7 +68,7 @@ int main(int argc, char *argv[]) {
CefSettings settings;
CefRefPtr<CefApp> app;
// Initialize CEF.
AppGetSettings(settings, app);
CefInitialize(settings, app);
window = gtk_window_new(GTK_WINDOW_TOPLEVEL);

View File

@@ -14,7 +14,6 @@
#include "include/cef_runnable.h"
#include "include/cef_web_plugin.h"
#include "include/cef_web_urlrequest.h"
#include "cefclient_switches.h"
#include "client_handler.h"
#include "util.h"
@@ -86,201 +85,14 @@ CefRefPtr<CefCommandLine> AppGetCommandLine() {
// Returns the application settings based on command line arguments.
void AppGetSettings(CefSettings& settings, CefRefPtr<CefApp>& app) {
ASSERT(g_command_line.get());
if (!g_command_line.get())
return;
CefString(&settings.cache_path) = "";
CefString(&settings.user_agent) = "";
CefString(&settings.product_version) = "";
CefString(&settings.locale) = "";
CefString(&settings.log_file) = "";
CefString(&settings.javascript_flags) = "";
CefString str;
CefString(&settings.cache_path) = g_command_line->GetSwitchValue(
cefclient::kCachePath);
CefString(&settings.user_agent) = g_command_line->GetSwitchValue(
cefclient::kUserAgent);
CefString(&settings.product_version) = g_command_line->GetSwitchValue(
cefclient::kProductVersion);
CefString(&settings.locale) = g_command_line->GetSwitchValue(
cefclient::kLocale);
CefString(&settings.log_file) = g_command_line->GetSwitchValue(
cefclient::kLogFile);
{
std::string str = g_command_line->GetSwitchValue(
cefclient::kLogSeverity);
bool invalid = false;
if (!str.empty()) {
if (str == cefclient::kLogSeverity_Verbose)
settings.log_severity = LOGSEVERITY_VERBOSE;
else if (str == cefclient::kLogSeverity_Info)
settings.log_severity = LOGSEVERITY_INFO;
else if (str == cefclient::kLogSeverity_Warning)
settings.log_severity = LOGSEVERITY_WARNING;
else if (str == cefclient::kLogSeverity_Error)
settings.log_severity = LOGSEVERITY_ERROR;
else if (str == cefclient::kLogSeverity_ErrorReport)
settings.log_severity = LOGSEVERITY_ERROR_REPORT;
else if (str == cefclient::kLogSeverity_Disable)
settings.log_severity = LOGSEVERITY_DISABLE;
else
invalid = true;
}
if (str.empty() || invalid) {
#ifdef NDEBUG
// Only log error messages and higher in release build.
settings.log_severity = LOGSEVERITY_ERROR;
#endif
}
}
{
std::string str = g_command_line->GetSwitchValue(
cefclient::kGraphicsImpl);
if (!str.empty()) {
if (str == cefclient::kGraphicsImpl_Desktop)
settings.graphics_implementation = DESKTOP_IN_PROCESS;
else if (str == cefclient::kGraphicsImpl_DesktopCmdBuffer)
settings.graphics_implementation =
DESKTOP_IN_PROCESS_COMMAND_BUFFER;
}
}
settings.local_storage_quota = GetIntValue(
g_command_line->GetSwitchValue(cefclient::kLocalStorageQuota));
settings.session_storage_quota = GetIntValue(
g_command_line->GetSwitchValue(cefclient::kSessionStorageQuota));
CefString(&settings.javascript_flags) = g_command_line->GetSwitchValue(
cefclient::kJavascriptFlags);
CefString(&settings.pack_file_path) = g_command_line->GetSwitchValue(
cefclient::kPackFilePath);
CefString(&settings.locales_dir_path) = g_command_line->GetSwitchValue(
cefclient::kLocalesDirPath);
settings.pack_loading_disabled = g_command_line->HasSwitch(
cefclient::kPackLoadingDisabled);
// Retrieve command-line proxy configuration, if any.
bool has_proxy = false;
cef_proxy_type_t proxy_type = PROXY_TYPE_DIRECT;
CefString proxy_config;
if (g_command_line->HasSwitch(cefclient::kProxyType)) {
std::string str = g_command_line->GetSwitchValue(cefclient::kProxyType);
if (str == cefclient::kProxyType_Direct) {
has_proxy = true;
proxy_type = PROXY_TYPE_DIRECT;
} else if (str == cefclient::kProxyType_Named
|| str == cefclient::kProxyType_Pac) {
proxy_config = g_command_line->GetSwitchValue(
cefclient::kProxyConfig);
if (!proxy_config.empty()) {
has_proxy = true;
proxy_type = (
str == cefclient::kProxyType_Named ?
PROXY_TYPE_NAMED : PROXY_TYPE_PAC_STRING);
}
}
}
if (has_proxy) {
// Provide a ClientApp instance to handle proxy resolution.
app = new ClientApp(proxy_type, proxy_config);
}
}
// Returns the application browser settings based on command line arguments.
void AppGetBrowserSettings(CefBrowserSettings& settings) {
ASSERT(g_command_line.get());
if (!g_command_line.get())
return;
settings.drag_drop_disabled = g_command_line->HasSwitch(
cefclient::kDragDropDisabled);
settings.load_drops_disabled = g_command_line->HasSwitch(
cefclient::kLoadDropsDisabled);
settings.history_disabled = g_command_line->HasSwitch(
cefclient::kHistoryDisabled);
settings.remote_fonts_disabled = g_command_line->HasSwitch(
cefclient::kRemoteFontsDisabled);
CefString(&settings.default_encoding) = g_command_line->GetSwitchValue(
cefclient::kDefaultEncoding);
settings.encoding_detector_enabled = g_command_line->HasSwitch(
cefclient::kEncodingDetectorEnabled);
settings.javascript_disabled = g_command_line->HasSwitch(
cefclient::kJavascriptDisabled);
settings.javascript_open_windows_disallowed = g_command_line->HasSwitch(
cefclient::kJavascriptOpenWindowsDisallowed);
settings.javascript_close_windows_disallowed = g_command_line->HasSwitch(
cefclient::kJavascriptCloseWindowsDisallowed);
settings.javascript_access_clipboard_disallowed = g_command_line->HasSwitch(
cefclient::kJavascriptAccessClipboardDisallowed);
settings.dom_paste_disabled = g_command_line->HasSwitch(
cefclient::kDomPasteDisabled);
settings.caret_browsing_enabled = g_command_line->HasSwitch(
cefclient::kCaretBrowsingDisabled);
settings.java_disabled = g_command_line->HasSwitch(
cefclient::kJavaDisabled);
settings.plugins_disabled = g_command_line->HasSwitch(
cefclient::kPluginsDisabled);
settings.universal_access_from_file_urls_allowed =
g_command_line->HasSwitch(
cefclient::kUniversalAccessFromFileUrlsAllowed);
settings.file_access_from_file_urls_allowed = g_command_line->HasSwitch(
cefclient::kFileAccessFromFileUrlsAllowed);
settings.web_security_disabled = g_command_line->HasSwitch(
cefclient::kWebSecurityDisabled);
settings.xss_auditor_enabled = g_command_line->HasSwitch(
cefclient::kXssAuditorEnabled);
settings.image_load_disabled = g_command_line->HasSwitch(
cefclient::kImageLoadingDisabled);
settings.shrink_standalone_images_to_fit = g_command_line->HasSwitch(
cefclient::kShrinkStandaloneImagesToFit);
settings.site_specific_quirks_disabled = g_command_line->HasSwitch(
cefclient::kSiteSpecificQuirksDisabled);
settings.text_area_resize_disabled = g_command_line->HasSwitch(
cefclient::kTextAreaResizeDisabled);
settings.page_cache_disabled = g_command_line->HasSwitch(
cefclient::kPageCacheDisabled);
settings.tab_to_links_disabled = g_command_line->HasSwitch(
cefclient::kTabToLinksDisabled);
settings.hyperlink_auditing_disabled = g_command_line->HasSwitch(
cefclient::kHyperlinkAuditingDisabled);
settings.user_style_sheet_enabled = g_command_line->HasSwitch(
cefclient::kUserStyleSheetEnabled);
CefString(&settings.user_style_sheet_location) =
g_command_line->GetSwitchValue(cefclient::kUserStyleSheetLocation);
settings.author_and_user_styles_disabled = g_command_line->HasSwitch(
cefclient::kAuthorAndUserStylesDisabled);
settings.local_storage_disabled = g_command_line->HasSwitch(
cefclient::kLocalStorageDisabled);
settings.databases_disabled = g_command_line->HasSwitch(
cefclient::kDatabasesDisabled);
settings.application_cache_disabled = g_command_line->HasSwitch(
cefclient::kApplicationCacheDisabled);
settings.webgl_disabled = g_command_line->HasSwitch(
cefclient::kWebglDisabled);
settings.accelerated_compositing_enabled = g_command_line->HasSwitch(
cefclient::kAcceleratedCompositingEnabled);
settings.threaded_compositing_enabled = g_command_line->HasSwitch(
cefclient::kThreadedCompositingEnabled);
settings.accelerated_layers_disabled = g_command_line->HasSwitch(
cefclient::kAcceleratedLayersDisabled);
settings.accelerated_video_disabled = g_command_line->HasSwitch(
cefclient::kAcceleratedVideoDisabled);
settings.accelerated_2d_canvas_disabled = g_command_line->HasSwitch(
cefclient::kAcceledated2dCanvasDisabled);
settings.accelerated_painting_disabled = g_command_line->HasSwitch(
cefclient::kAcceleratedPaintingDisabled);
settings.accelerated_filters_disabled = g_command_line->HasSwitch(
cefclient::kAcceleratedFiltersDisabled);
settings.accelerated_plugins_disabled = g_command_line->HasSwitch(
cefclient::kAcceleratedPluginsDisabled);
settings.developer_tools_disabled = g_command_line->HasSwitch(
cefclient::kDeveloperToolsDisabled);
settings.fullscreen_enabled = g_command_line->HasSwitch(
cefclient::kFullscreenEnabled);
settings.log_severity = LOGSEVERITY_ERROR;
settings.local_storage_quota = 0;
settings.session_storage_quota = 0;
}

View File

@@ -1,93 +0,0 @@
// Copyright (c) 2011 The Chromium Embedded Framework Authors. All rights
// reserved. Use of this source code is governed by a BSD-style license that
// can be found in the LICENSE file.
// This file is shared by cefclient and cef_unittests so don't include using
// a qualified path.
#include "cefclient_switches.h" // NOLINT(build/include)
namespace cefclient {
// CefSettings attributes.
const char kMultiThreadedMessageLoop[] = "multi-threaded-message-loop";
const char kCachePath[] = "cache-path";
const char kUserAgent[] = "user-agent";
const char kProductVersion[] = "product-version";
const char kLocale[] = "locale";
const char kLogFile[] = "log-file";
const char kLogSeverity[] = "log-severity";
const char kLogSeverity_Verbose[] = "verbose";
const char kLogSeverity_Info[] = "info";
const char kLogSeverity_Warning[] = "warning";
const char kLogSeverity_Error[] = "error";
const char kLogSeverity_ErrorReport[] = "error-report";
const char kLogSeverity_Disable[] = "disable";
const char kGraphicsImpl[] = "graphics-implementation";
const char kGraphicsImpl_Angle[] = "angle";
const char kGraphicsImpl_AngleCmdBuffer[] = "angle-command-buffer";
const char kGraphicsImpl_Desktop[] = "desktop";
const char kGraphicsImpl_DesktopCmdBuffer[] = "desktop-command-buffer";
const char kLocalStorageQuota[] = "local-storage-quota";
const char kSessionStorageQuota[] = "session-storage-quota";
const char kJavascriptFlags[] = "javascript-flags";
const char kPackFilePath[] = "pack-file-path";
const char kLocalesDirPath[] = "locales-dir-path";
const char kPackLoadingDisabled[] = "pack-loading-disabled";
// CefBrowserSettings attributes.
const char kDragDropDisabled[] = "drag-drop-disabled";
const char kLoadDropsDisabled[] = "load-drops-disabled";
const char kHistoryDisabled[] = "history-disabled";
const char kRemoteFontsDisabled[] = "remote-fonts-disabled";
const char kDefaultEncoding[] = "default-encoding";
const char kEncodingDetectorEnabled[] = "encoding-detector-enabled";
const char kJavascriptDisabled[] = "javascript-disabled";
const char kJavascriptOpenWindowsDisallowed[] =
"javascript-open-windows-disallowed";
const char kJavascriptCloseWindowsDisallowed[] =
"javascript-close-windows-disallowed";
const char kJavascriptAccessClipboardDisallowed[] =
"javascript-access-clipboard-disallowed";
const char kDomPasteDisabled[] = "dom-paste-disabled";
const char kCaretBrowsingDisabled[] = "caret-browsing-enabled";
const char kJavaDisabled[] = "java-disabled";
const char kPluginsDisabled[] = "plugins-disabled";
const char kUniversalAccessFromFileUrlsAllowed[] =
"universal-access-from-file-urls-allowed";
const char kFileAccessFromFileUrlsAllowed[] =
"file-access-from-file-urls-allowed";
const char kWebSecurityDisabled[] = "web-security-disabled";
const char kXssAuditorEnabled[] = "xss-auditor-enabled";
const char kImageLoadingDisabled[] = "image-load-disabled";
const char kShrinkStandaloneImagesToFit[] = "shrink-standalone-images-to-fit";
const char kSiteSpecificQuirksDisabled[] = "site-specific-quirks-disabled";
const char kTextAreaResizeDisabled[] = "text-area-resize-disabled";
const char kPageCacheDisabled[] = "page-cache-disabled";
const char kTabToLinksDisabled[] = "tab-to-links-disabled";
const char kHyperlinkAuditingDisabled[] = "hyperlink-auditing-disabled";
const char kUserStyleSheetEnabled[] = "user-style-sheet-enabled";
const char kUserStyleSheetLocation[] = "user-style-sheet-location";
const char kAuthorAndUserStylesDisabled[] = "author-and-user-styles-disabled";
const char kLocalStorageDisabled[] = "local-storage-disabled";
const char kDatabasesDisabled[] = "databases-disabled";
const char kApplicationCacheDisabled[] = "application-cache-disabled";
const char kWebglDisabled[] = "webgl-disabled";
const char kAcceleratedCompositingEnabled[] = "accelerated-compositing-enabled";
const char kThreadedCompositingEnabled[] = "threaded-compositing-enabled";
const char kAcceleratedLayersDisabled[] = "accelerated-layers-disabled";
const char kAcceleratedVideoDisabled[] = "accelerated-video-disabled";
const char kAcceledated2dCanvasDisabled[] = "accelerated-2d-canvas-disabled";
const char kAcceleratedPaintingDisabled[] = "accelerated-painting-disabled";
const char kAcceleratedFiltersDisabled[] = "accelerated-filters-disabled";
const char kAcceleratedPluginsDisabled[] = "accelerated-plugins-disabled";
const char kDeveloperToolsDisabled[] = "developer-tools-disabled";
const char kFullscreenEnabled[] = "fullscreen-enabled";
// Other attributes.
const char kProxyType[] = "proxy-type";
const char kProxyType_Direct[] = "direct";
const char kProxyType_Named[] = "named";
const char kProxyType_Pac[] = "pac";
const char kProxyConfig[] = "proxy-config";
} // namespace cefclient

View File

@@ -1,92 +0,0 @@
// Copyright (c) 2011 The Chromium Embedded Framework Authors. All rights
// reserved. Use of this source code is governed by a BSD-style license that
// can be found in the LICENSE file.
// Defines all of the command line switches used by cefclient.
#ifndef CEF_TESTS_CEFCLIENT_CEFCLIENT_SWITCHES_H_
#define CEF_TESTS_CEFCLIENT_CEFCLIENT_SWITCHES_H_
#pragma once
namespace cefclient {
// CefSettings attributes.
extern const char kMultiThreadedMessageLoop[];
extern const char kCachePath[];
extern const char kUserAgent[];
extern const char kProductVersion[];
extern const char kLocale[];
extern const char kLogFile[];
extern const char kLogSeverity[];
extern const char kLogSeverity_Verbose[];
extern const char kLogSeverity_Info[];
extern const char kLogSeverity_Warning[];
extern const char kLogSeverity_Error[];
extern const char kLogSeverity_ErrorReport[];
extern const char kLogSeverity_Disable[];
extern const char kGraphicsImpl[];
extern const char kGraphicsImpl_Angle[];
extern const char kGraphicsImpl_AngleCmdBuffer[];
extern const char kGraphicsImpl_Desktop[];
extern const char kGraphicsImpl_DesktopCmdBuffer[];
extern const char kLocalStorageQuota[];
extern const char kSessionStorageQuota[];
extern const char kJavascriptFlags[];
extern const char kPackFilePath[];
extern const char kLocalesDirPath[];
extern const char kPackLoadingDisabled[];
// CefBrowserSettings attributes.
extern const char kDragDropDisabled[];
extern const char kLoadDropsDisabled[];
extern const char kHistoryDisabled[];
extern const char kRemoteFontsDisabled[];
extern const char kDefaultEncoding[];
extern const char kEncodingDetectorEnabled[];
extern const char kJavascriptDisabled[];
extern const char kJavascriptOpenWindowsDisallowed[];
extern const char kJavascriptCloseWindowsDisallowed[];
extern const char kJavascriptAccessClipboardDisallowed[];
extern const char kDomPasteDisabled[];
extern const char kCaretBrowsingDisabled[];
extern const char kJavaDisabled[];
extern const char kPluginsDisabled[];
extern const char kUniversalAccessFromFileUrlsAllowed[];
extern const char kFileAccessFromFileUrlsAllowed[];
extern const char kWebSecurityDisabled[];
extern const char kXssAuditorEnabled[];
extern const char kImageLoadingDisabled[];
extern const char kShrinkStandaloneImagesToFit[];
extern const char kSiteSpecificQuirksDisabled[];
extern const char kTextAreaResizeDisabled[];
extern const char kPageCacheDisabled[];
extern const char kTabToLinksDisabled[];
extern const char kHyperlinkAuditingDisabled[];
extern const char kUserStyleSheetEnabled[];
extern const char kUserStyleSheetLocation[];
extern const char kAuthorAndUserStylesDisabled[];
extern const char kLocalStorageDisabled[];
extern const char kDatabasesDisabled[];
extern const char kApplicationCacheDisabled[];
extern const char kWebglDisabled[];
extern const char kAcceleratedCompositingEnabled[];
extern const char kThreadedCompositingEnabled[];
extern const char kAcceleratedLayersDisabled[];
extern const char kAcceleratedVideoDisabled[];
extern const char kAcceledated2dCanvasDisabled[];
extern const char kAcceleratedPaintingDisabled[];
extern const char kAcceleratedFiltersDisabled[];
extern const char kAcceleratedPluginsDisabled[];
extern const char kDeveloperToolsDisabled[];
extern const char kFullscreenEnabled[];
// Other attributes.
extern const char kProxyType[];
extern const char kProxyType_Direct[];
extern const char kProxyType_Named[];
extern const char kProxyType_Pac[];
extern const char kProxyConfig[];
} // namespace cefclient
#endif // CEF_TESTS_CEFCLIENT_CEFCLIENT_SWITCHES_H_