Commit Graph

418 Commits

Author SHA1 Message Date
Marshall Greenblatt 5c28259c31 cefclient: Organize source files into directories by target process (browser, renderer, common) (issue #1500).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@2014 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2015-01-31 00:55:56 +00:00
Marshall Greenblatt 52b02eb838 cefclient: Mac: Move the mac/ folder to resources/mac/ (issue #1500)
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@2013 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2015-01-30 20:55:28 +00:00
Marshall Greenblatt 8fe95d54d9 cefclient: Windows: Move icon files to a new resources/win folder (issue #1500).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@2012 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2015-01-30 20:26:16 +00:00
Marshall Greenblatt 0255e4c741 cefclient: Rename the res/ folder to resources/ (issue #1500).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@2011 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2015-01-30 20:22:46 +00:00
Marshall Greenblatt 16b3817b82 cefclient: Mac: Reduce helper process file dependencies (issue #1500)
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@2010 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2015-01-30 19:34:58 +00:00
Marshall Greenblatt c6f8c63a45 cefclient: Simplify TempWindow usage (issue #1500).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@2009 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2015-01-30 19:08:53 +00:00
Marshall Greenblatt 50380c7be4 cefclient: Remove ClientHandler abstraction that is no longer necessary now that all platforms use RootWindow (issue #1500).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@2008 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2015-01-30 18:55:55 +00:00
Marshall Greenblatt bd9b578f05 cefclient: Mac: Clean up ClientAppDelegate initialization (issue #1500)
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@2007 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2015-01-30 18:13:39 +00:00
Marshall Greenblatt c44f6f7efb cefclient: Mac: Introduce RootWindow concept and associated window/client object hierarchy (issue #1500).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@2006 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2015-01-30 18:07:13 +00:00
Marshall Greenblatt 0031e7c603 cefclient: Add missing include (issue #1500)
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@2005 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2015-01-29 21:44:17 +00:00
Marshall Greenblatt 89de4a5bb6 - cefclient: Linux: Introduce RootWindow concept and associated window/client object hierarchy (issue #1500).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@2004 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2015-01-29 20:53:53 +00:00
Marshall Greenblatt 37464c2a4c cefclient: Windows: Fix type conversion error (issue #1511).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@2003 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2015-01-28 17:14:52 +00:00
Marshall Greenblatt fd5ededb27 - cefclient: Windows: Introduce RootWindow concept and associated window/client object hierarchy (issue #1500).
- cefclient: Remove locking from ClientHandlerShared that was only required for the Windows implementation (issue #1500).
- Add CefDeleteOnThread helper for deleting ref-counted types on a named CEF thread.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@2001 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2015-01-27 00:03:25 +00:00
Marshall Greenblatt bcab7e0ebd cefclient: Mac: Fix compile error (issue #1500).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@2000 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2015-01-26 22:49:36 +00:00
Marshall Greenblatt a66c401687 - cefclient: Split ClientHandler into an abstract base class and a concrete implementation for shared usage (issue #1500).
- cefclient: Show an alert box when selecting Tests > Popup Window while running in off-screen rendering mode.
- cefclient: Mac: Enable/disable UX buttons to match loading state.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@1999 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2015-01-26 19:34:26 +00:00
Marshall Greenblatt 3f4c5acbe7 Add missing include statement (issue #1502).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@1997 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2015-01-26 00:59:40 +00:00
Marshall Greenblatt f38c620e28 cefclient: Linux: Move GTK dialog handlers from ClientHandler into a separate class (issue #1500).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@1991 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2015-01-23 20:03:47 +00:00
Marshall Greenblatt dfc2dfb0f5 cefclient: Move all remaining files to the `client` namespace (issue #1500).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@1990 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2015-01-23 19:23:54 +00:00
Marshall Greenblatt 68cb4b6213 cefclient: Move all remaining files to the `client` namespace (issue #1500).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@1989 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2015-01-23 19:09:34 +00:00
Marshall Greenblatt 87c41bf99f cefclient: Standardize osr-related file names and move to the `client` namespace (issue #1500).
cefclient: Windows: Move OSRWindow static methods to util_win (issue #1500).

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@1988 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2015-01-23 17:37:23 +00:00
Marshall Greenblatt 986e6fb939 cefclient: Don't specify `virtual` in combination with `OVERRIDE` since it's redundant (issue #1500).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@1987 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2015-01-23 16:20:52 +00:00
Marshall Greenblatt 7a0b40e8c9 cefclient: Don't specify `virtual` in combination with `OVERRIDE` since it's redundant (issue #1500).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@1986 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2015-01-22 23:34:29 +00:00
Marshall Greenblatt b9dd027411 cefclient: Replace global App* functions with singleton MainContext instance (issue #1500).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@1985 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2015-01-22 23:11:30 +00:00
Marshall Greenblatt af0635bb34 cefclient: Use test_runner::Alert instead of platform-specific notifications (issue #1500).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@1984 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2015-01-22 21:39:36 +00:00
Marshall Greenblatt 1428f022af - cefclient: Add test_runner as the single entry point for running test-related code and move test implementations to the client namespace (issue #1500).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@1983 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2015-01-22 20:21:21 +00:00
Marshall Greenblatt 249ad7f6e4 cefclient: Use an abstraction for message loop functionality (Run/Quit/PostTask) instead of implementing the same logic multiple times in platform-specific files (issue #1500).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@1982 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2015-01-22 17:55:55 +00:00
Marshall Greenblatt 4bf08b70d6 Rename .cpp file extensions to .cc for consistency (issue #1500).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@1981 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2015-01-22 01:55:39 +00:00
Marshall Greenblatt f0bba98523 Add NavigationTest.PopupNavigateAfterCreation to verify that navigation of popup windows does not assert (issue #1392).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@1980 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2015-01-21 17:26:42 +00:00
Marshall Greenblatt e50ea8c29f - Add open folder dialog support (FILE_DIALOG_OPEN_FOLDER mode) for CefBrowserHost::RunFileDialog (issue #1030).
- Standardize file dialog behavior across all platforms (issue #1492).
-- Show a file type filter list on OS X.
-- Show the file extensions as part of the filter list description on all platforms (e.g. "Image Types (*.png;*.gif;*.jpg)").
-- Rename the CefBrowserHost::RunFileDialog |accept_types| argument to |accept_filters| and expand support for filters that will be displayed as-is in addition to the currently supported mime-type and extension-based filters. For example, a filter value of "Supported Image Types|.png;.gif;.jpg" will display "Supported Image Types (*.png;*.gif;*.jpg)" in the filter drop-down list and accept *.png, *.gif and *.jpg files.
-- Persist the selected filter item index by passing a new |selected_accept_filter| argument to CefBrowserHost::RunFileDialog and returning the newly selected index via the CefRunFileDialogCallback and CefFileDialogCallback callbacks.
-- Rename the CefBrowserHost::RunFileDialog |default_file_name| argument to |default_file_path| and use the directory component, if any, to set the default directory location. If |default_file_path| ends in a trailing path separator it will be treated as a directory without a file name component.
-- Add FILE_DIALOG_OVERWRITEPROMPT_FLAG and FILE_DIALOG_HIDEREADONLY_FLAG values to cef_file_dialog_mode_t for controlling those behaviors where possible.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@1973 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2015-01-20 18:24:54 +00:00
Marshall Greenblatt a2d690a9bd Use int64 instead of uint64 for CefURLRequestClient progress notifications (issue #1202).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@1968 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2015-01-12 20:46:31 +00:00
Marshall Greenblatt 054300874d Improvements to unit test behavior.
- Standardize the test timeout implementation using a new TestHandler::SetTestTimeout method and enable timeouts for almost all tests. The test timeout can be disabled globally using a new `--disable-test-timeout` command-line flag.
- Wait for TestHandler object destruction at the end of each test using a new ReleaseAndWaitForDestructor function. This avoids test state leakage and verifies that no object references are leaked.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@1964 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2015-01-09 23:40:26 +00:00
Marshall Greenblatt ba198e9ef1 Update to Chromium revision d3cf92ca (#310534).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@1963 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2015-01-09 17:22:10 +00:00
Marshall Greenblatt b5e8914bde - Change ALLOW_UNUSED to ALLOW_UNUSED_TYPE and ALLOW_UNUSED_LOCAL to match Chromium.
- Windows: d3dcompiler_46.dll changed to d3dcompiler_47.dll due to 8.1 SDK update (issue #1484).
- Windows: Fix `local variable is initialized but not referenced` warning with Release build (issue #1484).

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@1962 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2015-01-08 02:42:59 +00:00
Marshall Greenblatt d0a45cfbbb Add support for begin frame scheduling and direct rendering when GPU compositing is disabled (issue #1368).
- Always set the browser process VSync rate (frame rate) to CefSettings.windowless_frame_rate.
- When the `enable-begin-frame-scheduling` command-line flag is specified the VSync rate for all processes will be synchronized to CefSettings.windowless_frame_rate. This flag cannot be used in combination with windowed rendering.
- When the `disable-gpu` and `disable-gpu-compositing` command-line flags are specified the CefRenderHandler::OnPaint method will be called directly from the compositor instead of requiring an additional copy for each frame.
- CefRenderHandler::OnPopupSize now passes view coordinates instead of (potentially scaled) pixel coordinates.
- Add OSR unit tests for 2x (HiDPI) pixel scaling.
- Improve CefRenderHandler documentation.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@1960 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2015-01-01 16:51:56 +00:00
Marshall Greenblatt 5a5d2caff2 Update to Chromium revision 8cb76f56 (#307671)
- Linux/Mac: Load V8 initial snapshot from external bin files (see http://crbug.com/421063).
- Windows: 8.1 SDK is now required (issue #1470).
- Remove CefDOMDocument::GetSelectionStartNode and GetSelectionEndNode methods(see https://codereview.chromium.org/763043004).
- Rename internal namespace used in base headers to avoid linker conflicts with cef_sandbox.lib.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@1956 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2014-12-13 20:18:31 +00:00
Marshall Greenblatt b12e172af0 Improve off-screen rendering behavior (issue #1257).
- The |dirtyRects| argument to CefRenderHandler::OnPaint is now a single rectangle representing the union of all dirty rectangles since the last frame was generated. In most cases this rectangle will be smaller than the view (frame) size.
- cefclient: Use a ScopedGLContext class on all platforms to manage the current GL context and avoid GL state leaks.
- cefclient: Add debug checks in ClientOSRenderer for GL errors and fix some errors that were discovered.
- cefclient: Add a new `--show-update-rect` command-line flag that provides visualization of the update rectangle by drawing a red border around it for each frame.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@1945 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2014-12-02 11:23:57 +00:00
Marshall Greenblatt 93c1a7fcd7 Pass cursor type and custom cursor information to CefRenderHandler::OnCursorChange (issue #1443).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@1928 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2014-11-24 21:56:12 +00:00
Marshall Greenblatt 8eb14dd71f Add CefBrowserHost::GetNavigationEntries for retrieving a snapshot of navigation history (issue #1442).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@1924 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2014-11-24 19:23:26 +00:00
Marshall Greenblatt 8038ff9579 Update xmlhttprequest.html to use an async request since sync requests are now deprecated.
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@1922 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2014-11-21 21:49:52 +00:00
Marshall Greenblatt eef89ccdd3 Update to Chromium revision 40af916d (#303546).
- Standardize usage of virtual/override specifiers in CEF internals (see http://crbug.com/417463).

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@1903 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2014-11-12 19:25:15 +00:00
Marshall Greenblatt 470518a52e Windows/Linux: Fix positioning of select popups and dismissal on window move/resize by calling new CefBrowserHost::NotifyMoveOrResizeStarted() method from client applications (issue #1208).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@1901 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2014-10-29 18:14:47 +00:00
Marshall Greenblatt 2109d76763 Windows: Fix reporting of WM_MOUSELEAVE coordinates by the cefclient OSR example (issue #1133).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@1890 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2014-10-27 21:58:37 +00:00
Marshall Greenblatt a0f5f9c6c8 Use CMake configuration to detect ATL support (issue #1328).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@1888 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2014-10-27 21:34:48 +00:00
Marshall Greenblatt a91de6d6db Generate CMake configuration for the binary distribution (issue #1404).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@1881 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2014-10-22 21:48:11 +00:00
Marshall Greenblatt 7ddcaaf14e Fix type conversion compile error (issue #1397).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@1874 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2014-10-14 17:57:24 +00:00
Marshall Greenblatt d15f6abc3a Add support for DevTools inspect element via a new |inspect_element_at| parameter added to CefBrowserHost::ShowDevTools (issue #586).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@1870 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2014-10-11 00:12:01 +00:00
Marshall Greenblatt 57d47f64b5 Update to Chromium revision 267aeeb8 (#297060).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@1863 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2014-10-10 17:54:35 +00:00
Marshall Greenblatt 02c3655ddb Fix type conversion compile error (issue #1397).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@1860 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2014-10-09 16:09:07 +00:00
Marshall Greenblatt b26468be3f Mac: Add NSSupportsAutomaticGraphicsSwitching to Info.plist (issue #1396).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@1855 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2014-10-03 17:00:56 +00:00
Marshall Greenblatt 58de0da301 Windows: Fix cancellation of drag&drop when using off-screen rendering and multi-threaded message loop and returning false from CefRenderHandler::StartDragging (issue #1364).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@1853 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2014-09-30 18:52:26 +00:00