mirror of
https://bitbucket.org/chromiumembedded/cef
synced 2024-12-12 17:46:04 +01:00
2ea7459a89
All file dialogs irrespective of source, platform and runtime will now be routed through CefFileDialogManager and trigger CefDialogHandler callbacks (see issue #3293). Adds Chrome runtime support for CefBrowserHost::RunFileDialog and CefDialogHandler callbacks. Adds Alloy runtime support for internal GTK file and print dialogs on Linux subject to the following limitations: 1. Internal GTK implementation: - Cannot be used with multi-threaded-message-loop because Chromium's internal GTK implementation is not thread-safe (does not use GDK threads). - Dialogs will not be modal to application windows when used with off-screen rendering due to lack of access to the client's top-level GtkWindow. 2. Cefclient CefDialogHandler implementation: - Cannot be used with Views because it requires a top-level GtkWindow. Due to the above limitations no dialog implementation is currently provided for Views + multi-threaded-message-loop on Linux. In cases where both implementations are supported the cefclient version is now behind an optional `--use-client-dialogs` command-line flag. Expressly forbids multiple simultaneous file dialogs with the internal platform implementation which uses modal dialogs. CefDialogHandler will still be notified and can optionally handle each request without a modal dialog (see issue #3154). Removes some RunFileDialog parameters that are not supported by the Chrome file dialog implementation (selected_accept_filter parameter, cef_file_dialog_mode_t overwrite/read-only flags).
57 lines
2.6 KiB
C++
57 lines
2.6 KiB
C++
// Copyright (c) 2013 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.
|
|
|
|
#include "tests/shared/common/client_switches.h"
|
|
|
|
namespace client {
|
|
namespace switches {
|
|
|
|
// CEF and Chromium support a wide range of command-line switches. This file
|
|
// only contains command-line switches specific to the cefclient application.
|
|
// View CEF/Chromium documentation or search for *_switches.cc files in the
|
|
// Chromium source code to identify other existing command-line switches.
|
|
// Below is a partial listing of relevant *_switches.cc files:
|
|
// base/base_switches.cc
|
|
// cef/libcef/common/cef_switches.cc
|
|
// chrome/common/chrome_switches.cc (not all apply)
|
|
// content/public/common/content_switches.cc
|
|
|
|
const char kMultiThreadedMessageLoop[] = "multi-threaded-message-loop";
|
|
const char kExternalMessagePump[] = "external-message-pump";
|
|
const char kCachePath[] = "cache-path";
|
|
const char kUrl[] = "url";
|
|
const char kOffScreenRenderingEnabled[] = "off-screen-rendering-enabled";
|
|
const char kOffScreenFrameRate[] = "off-screen-frame-rate";
|
|
const char kTransparentPaintingEnabled[] = "transparent-painting-enabled";
|
|
const char kShowUpdateRect[] = "show-update-rect";
|
|
const char kSharedTextureEnabled[] = "shared-texture-enabled";
|
|
const char kExternalBeginFrameEnabled[] = "external-begin-frame-enabled";
|
|
const char kMouseCursorChangeDisabled[] = "mouse-cursor-change-disabled";
|
|
const char kOffline[] = "offline";
|
|
const char kRequestContextPerBrowser[] = "request-context-per-browser";
|
|
const char kRequestContextSharedCache[] = "request-context-shared-cache";
|
|
const char kBackgroundColor[] = "background-color";
|
|
const char kEnableGPU[] = "enable-gpu";
|
|
const char kFilterURL[] = "filter-url";
|
|
const char kUseViews[] = "use-views";
|
|
const char kUseNative[] = "use-native";
|
|
const char kHideFrame[] = "hide-frame";
|
|
const char kHideControls[] = "hide-controls";
|
|
const char kHideOverlays[] = "hide-overlays";
|
|
const char kAlwaysOnTop[] = "always-on-top";
|
|
const char kHideTopMenu[] = "hide-top-menu";
|
|
const char kSslClientCertificate[] = "ssl-client-certificate";
|
|
const char kCRLSetsPath[] = "crl-sets-path";
|
|
const char kLoadExtension[] = "load-extension";
|
|
const char kNoActivate[] = "no-activate";
|
|
const char kEnableChromeRuntime[] = "enable-chrome-runtime";
|
|
const char kShowChromeToolbar[] = "show-chrome-toolbar";
|
|
const char kInitialShowState[] = "initial-show-state";
|
|
const char kHideChromeStatusBubble[] = "hide-chrome-status-bubble";
|
|
const char kUseDefaultPopup[] = "use-default-popup";
|
|
const char kUseClientDialogs[] = "use-client-dialogs";
|
|
|
|
} // namespace switches
|
|
} // namespace client
|