Commit Graph

397 Commits

Author SHA1 Message Date
Marshall Greenblatt 9cc61f448b Add #ifndef guards in cef_build.h to avoid conflicts with other projects using Chromium code.
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@461 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2012-01-05 20:16:27 +00:00
Marshall Greenblatt b8ba27a671 Add the ability to restrict V8 extension loading by frame using a new CefPermissionHandler::OnBeforeScriptExtensionLoad() callback (issue #471).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@457 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2012-01-05 19:34:20 +00:00
Marshall Greenblatt 8d6c760bbd - Add support for running unit tests without multi-threaded message loop mode (issue #338).
- Mac: Fix unit test expectations.
- Mac: cef_time_t.day_of_week is not supported.


git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@448 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-12-30 20:55:16 +00:00
Marshall Greenblatt 62aedf6b30 Mac: Fix compile errors due to revision 442 changes.
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@443 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-12-23 18:04:12 +00:00
Marshall Greenblatt ff976bc07f Break cef.h into multiple headers (issue #142).
- Move wrapper classes from cef_wrapper.h to wrapper/ directory.
- Move C API functions/classes from cef_capi.h to capi/ directory.
- Move global function implementations from cef_context.cc to *_impl.cc files.
- Output auto-generated file paths in cef_paths.gypi.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@442 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-12-23 17:36:30 +00:00
Marshall Greenblatt cc3a3a68d8 Remove CefV8Value::CreateObject variant that accepts only one argument (issue #449).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@440 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-12-22 17:08:35 +00:00
Marshall Greenblatt bdb588b77a Update to Chromium revision 115322.
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@435 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-12-21 18:35:55 +00:00
Marshall Greenblatt ec797bafe5 Make the |url| parameter to OnBeforePopup() optional.
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@434 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-12-20 22:07:45 +00:00
Marshall Greenblatt 9fadd1724f Make the realm parameter to GetAuthCredentials() optional (issue #355).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@425 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-12-16 13:50:15 +00:00
Marshall Greenblatt ef19285349 Add CefBrowserSettings.fullscreen_enabled flag for enabling fullscreen mode. (issue #457).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@424 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-12-16 12:33:16 +00:00
Marshall Greenblatt bfcc2dbb8c Add the ability to observe and modify resource redirects (issue #346).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@416 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-12-12 17:34:24 +00:00
Marshall Greenblatt fe80635c69 Add CefQuitMessageLoop function (issue #443).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@412 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-12-08 13:25:26 +00:00
Marshall Greenblatt 64f91d5d9b Expose unique identifiers for frames and the ability to retrieve a frame's parent frame (issue #450).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@410 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-12-08 11:44:30 +00:00
Marshall Greenblatt ef64033467 - Revert: Change index parameter types from int to size_t to make 0-based range implicit.
- Add checks that index values are >= 0.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@409 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-12-08 10:22:15 +00:00
Marshall Greenblatt 64e08c2918 - Auto-generate all C/C++ translation code (issue #33).
- Change index parameter types from int to size_t to make 0-based range implicit.
- Make CefPrintOptions and CefMenuInfo proper wrapper classes.
- Normalize the naming of menu-related types.
- Remove unused command_line variable from test_suite.cc.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@408 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-12-08 01:38:30 +00:00
Marshall Greenblatt 7361732f92 - Add a new CefApp interface that provides global handlers and gets passed to CefInitialize() (issue #399).
- Add a new CefProxyHandler interface to allow applications to resolve proxy information (issue #389).

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@394 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-11-23 22:47:09 +00:00
Marshall Greenblatt 8c5b56cbf5 Add CefBrowserSettings.history_disabled option to disable history back/forward navigation (issue #419).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@393 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-11-23 17:55:33 +00:00
Marshall Greenblatt 605753c3b8 Replace JSBindingHandler with a new V8ContextHandler interface that contains callbacks for V8 context creation and release (issue #359).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@392 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-11-21 21:21:55 +00:00
Marshall Greenblatt ead9b4508c - Allow registration of V8 extensions with no native function handler (issue #433).
- Add a CefV8Context::InContext() method to test if V8 is currently in a context (issue #427).
- Verify that a current context exists when creating V8 arrays, functions and objects (issue #427).
- Add a v8::HandleScope in GetCurrentContext() and GetEnteredContext() to avoid "Cannot create a handle without a HandleScope" V8 errors (issue #427).

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@391 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-11-21 19:01:22 +00:00
Marshall Greenblatt 3f2735909a Verify that libcef build revision and API/header revision match when initializing CEF (issue #431).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@386 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-11-18 17:30:55 +00:00
Marshall Greenblatt c18ea9200d Clarify the behavior of local schemes and XMLHttpRequest in cef.h documentation.
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@385 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-11-18 00:15:22 +00:00
Marshall Greenblatt cc175e4fbe - Expose command line parsing support with a new CefCommandLine class (issue #422).
- cefclient: Add the ability to specify CefSettings and CefBrowserSettings values on the command line.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@378 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-11-14 23:43:52 +00:00
Marshall Greenblatt 28f171b26f Introduce CefV8Exception for returning detailed exception information from CefV8Value::ExecuteFunction*() and add the ability to re-throw exceptions. (issue #317).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@371 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-11-10 22:57:23 +00:00
Marshall Greenblatt 587eb7871d - Win: Improve redraw and scrolling performance (issue #360).
- Win: Fix CefBrowser::GetImage() and add "Get Image" example to cefclient (issue #377).
- Pass the list of dirty rectangles to CefRenderHandler::Paint(). (issue #415).

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@368 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-11-09 20:09:24 +00:00
Marshall Greenblatt 8257177763 Add support for specifying custom V8 flags via a new CefSettings.javascript_flags configuration option (issue #413).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@363 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-11-07 22:46:34 +00:00
Marshall Greenblatt 8e45560a02 Pass the |redirectUrl| parameter to GetResponseHeaders() instead of ProcessRequest() (issue #414).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@362 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-11-07 22:23:51 +00:00
Marshall Greenblatt ae5371dd09 Move CEF V8 internal attributes to hidden values and add a test to verify safety (issue #316).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@361 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-11-07 21:39:57 +00:00
Marshall Greenblatt c451702e0c - Hide CEF internal V8 attributes from JavaScript (issue #316).
- Add a PropertyAttribute parameter to CefV8Value::SetValue() (issue #412).

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@358 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-11-04 19:34:14 +00:00
Marshall Greenblatt 058e9ef2f2 - Add new call to OnKeyEvent() to allow handling of keyboard events before they're passed to the renderer (issue #406).
- Windows: only scroll with middle mouse button when the cursor is over the view (issue #410).

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@356 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-11-04 18:19:14 +00:00
Marshall Greenblatt 28adf8908a Add CefSetCookiePath() and CefSetStoragePath() functions for changing cookie and localStorage locations while CEF is running (issue #347).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@353 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-11-02 19:50:00 +00:00
Marshall Greenblatt 7a4cb9dd20 Add the ability to specify full plugin matching parameters including multiple mime types and file extensions via CefPluginInfo (issue #401).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@352 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-11-01 16:04:57 +00:00
Marshall Greenblatt ef80d4ae6b Use multimap type for storing header values (issue #386).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@346 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-10-28 21:31:26 +00:00
Marshall Greenblatt 0ec9541b78 Add CefFrame::GetV8Context() method for retrieving the V8 context of a frame (issue #344).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@345 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-10-28 20:30:19 +00:00
Marshall Greenblatt 7a91ff899f Add initial Linux support (issue #40).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@338 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-10-24 20:20:52 +00:00
Marshall Greenblatt becadcfd16 Add CefSettings.auto_detect_proxy_settings_enabled option for enabling automatic proxy detection on Windows (issue #332).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@337 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-10-21 21:14:50 +00:00
Marshall Greenblatt 561bb6956b Add support for transparency on Windows (issue #99).
- Enable the use of Skia instead of GDI for text rendering.
- Add a new CefWindowInfo::m_bTransparentPainting member.
- Add transparent popup window and off-screen rendering examples to cefclient.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@334 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-10-21 19:35:19 +00:00
Marshall Greenblatt 2085cc9ce2 Add CefDisplayHandler::OnContentsSizeChange() notificiation (issue #341).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@330 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-10-21 14:09:04 +00:00
Marshall Greenblatt 026dacda76 Add CefBrowserSettings.load_drops_disabled option for disabling default navigation resulting from drag & drop of URLs (issue #363).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@327 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-10-19 16:37:31 +00:00
Marshall Greenblatt 7130cc4f26 Add a new NAVTYPE_LINKDROPPED value to the cef_handler_navtype_t enum passed to OnBeforeResourceLoad() that will be passed when navigation is resulting from a drop (issue #363).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@320 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-10-18 00:23:32 +00:00
Marshall Greenblatt 9c6dcab73a - Add CefFocusHandler::OnFocusedNodeChanged() notification (issue #379).
- Add CefDOMNode::IsFormControlElement() and CefDOMNode::GetFormControlElementType() methods (issue #379).
- Add space bar handling example to cefclient.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@318 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-10-14 12:40:40 +00:00
Marshall Greenblatt 69331e2064 - Update to Chromium revision 105051.
- Enable use of clang compiler on Mac.
- Add CefSettings.threaded_compositing_enabled option.
- Begin converting NewRunnable usage to base::Bind.
- Avoid assertion when an empty message is passed to OnConsoleMessage().
- Add an "--allow-partial" option to the make_distrib tool.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@316 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-10-12 19:09:15 +00:00
Marshall Greenblatt 20c129038f Add #ifndef guards to cef_export.h (issue #375).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@311 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-10-12 08:47:24 +00:00
Marshall Greenblatt 1c2f102bb0 Add a FocusSource parameter to OnSetFocus() that indicates where the focus request is originating from (issue #369).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@306 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-10-07 10:30:10 +00:00
Marshall Greenblatt 7a3154c9ba Pass the originating browser to CefSchemeHandlerFactory::Create() (issue #362).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@305 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-10-07 10:13:04 +00:00
Marshall Greenblatt 6b134b4def - Add CefSettings.local_storage_quota and session_storage_quota options for setting localStorage and sessionStorage quota limits respectively (issue #348).
- Add Cef*Storage() functions and CefStorageVisitor interface for accessing localStorage and sessionStorage data via the native API (issue #361).
- Add a "cache_path" command-line flag option to cef_unittests for running the unit tests with a cache path value (issue #368).

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@302 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-10-06 13:34:47 +00:00
Marshall Greenblatt 50b909a417 - Add a CefBrowser::ClearHistory() method for clearing back/forward browsing history (issue #352).
- Move RegisterDevToolsSchemeHandler() call to CefContext::Initialize() to fix assertion when using multi-threaded message loop on Windows.
- Add new NavigationTest.History test.
- Remove unused RequestTest.HistoryNav test.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@301 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-10-04 11:49:36 +00:00
Marshall Greenblatt 0fc3af0dbb Update to Chromium revision 102269.
- Disable use of clang on Mac for the time being.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@292 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-09-23 00:16:03 +00:00
Marshall Greenblatt 32402b2287 - Fix memory leaks in V8 usage (issue #323).
- Improve performance of V8 string conversions (issue #323).
- Add V8 performance test to cefclient (issue #323).
- Add the ability to return exceptions from V8 accessors (issue #327).
- Return undefined instead of null from a V8 handler if no return value is specified (issue #329).


git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@291 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-09-20 20:41:54 +00:00
Marshall Greenblatt d27343bac5 Rename char16_t to char16 to fix VS2010 compiler errors due to char16_t becoming a built-in type (issue #243).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@289 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-09-18 01:07:28 +00:00
Marshall Greenblatt a412f079d7 Mac: Fix 10.6 SDK compile errors due to delegate protocol requirement.
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@287 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-09-16 16:17:19 +00:00
Marshall Greenblatt d260f78cb2 Update to Chromium revision 100584.
- Add a new CefSettings.graphics_implementation option for using different GL implementations.
- Disable accelerated compositing by default due to multiple issues (issue #334, issue #335, issue #337).
- Eliminate the "patcher" project and perform all patching during GYP project generation.
- Fix references to non-existent files in cef.gyp.
- Move BrowserWebKitInit method implementations to a separate .cc file.
- Add support for Flash on Mac (issue #305).

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@284 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-09-10 19:40:03 +00:00
Marshall Greenblatt f4dc2dffa8 Add a virtual destructor to CefBase (issue #321).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@283 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-08-31 17:54:20 +00:00
Marshall Greenblatt f636510101 Issue #307:
- Add a CefBrowser::HasDocument() method that tests if a document has been loaded in the browser window.
- Modify ClientHandler::GetDownloadHandler() to demonstrate how to close a download popup window.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@282 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-08-30 16:20:27 +00:00
Marshall Greenblatt 1b1255c92d - Add CefDragHandler to support examination of drag data and cancellation of drag requests (issue #297).
- Mac: Fix dragging of URLs by providing a default image if no drag image is supplied.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@279 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-08-22 01:31:55 +00:00
Marshall Greenblatt 88a46e0b44 Support asynchronous continuation of custom scheme handler responses (issue #269).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@278 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-08-17 01:55:07 +00:00
Marshall Greenblatt f25b353b1f Improve documentation for CefBrowserSettings.user_style_sheet_location (issue #261).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@275 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-08-09 13:22:10 +00:00
Marshall Greenblatt 512b864639 - Clean up implementation of modal window callbacks (issue #281).
- Fix CefBrowser::GoForward documentation typo (issue #291).

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@271 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-08-03 15:35:51 +00:00
Marshall Greenblatt 7d006a8dd6 Mac:
- Add HTML5 drag&drop support (issue #140).
- Client application must now provide NSApplication implementing CefAppProtocol and call CefRunMessageLoop() (issue #248).

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@269 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-08-02 16:50:06 +00:00
Marshall Greenblatt 0aef7fc07d Remove comment about being able to modify |request| in OnBeforeBrowse (issue #279).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@266 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-07-07 14:57:58 +00:00
Marshall Greenblatt 64d64738b9 Add support for WebPreferences accelerated_video_enabled, accelerated_drawing_enabled and accelerated_plugins_enabled (entry #278).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@261 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-07-02 18:21:13 +00:00
Marshall Greenblatt 572f9f13d6 Fix OnResourceResponse spelling error (issue #270).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@260 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-07-02 17:57:00 +00:00
Marshall Greenblatt 02d6f3e384 Add support for modal dialogs (issue #250).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@255 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-06-14 15:09:55 +00:00
Marshall Greenblatt 1678a7e673 Change comment format to support automatic document generation using the CppDoc application.
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@251 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-05-31 18:17:12 +00:00
Marshall Greenblatt f80e8b297e Change comment format to support automatic document generation using the CppDoc application.
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@250 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-05-31 17:47:44 +00:00
Marshall Greenblatt 2779179489 Change comment format to support automatic document generation using the CppDoc application.
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@249 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-05-31 17:12:37 +00:00
Marshall Greenblatt 3a6ddf782a Fix documentation on CefSettings.extra_plugin_paths.
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@248 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-05-31 13:32:21 +00:00
Marshall Greenblatt 63aa102a6a Improvements to scheme handling (issue #246).
- Break CefRegisterScheme into separate CefRegisterCustomScheme and CefRegisterSchemeHandlerFactory functions.
- Allow registration of handlers for built-in schemes.
- Supply scheme and request information to CefSchemeHandlerFactory::Create.
- Add CrossOriginWhitelist functions for bypassing the same-origin policy with both built-in and custom standard schemes.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@247 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-05-27 16:20:32 +00:00
Marshall Greenblatt 73f4d5a5e6 Add OnResourceReponse and CefContentFilter for viewing and filtering response content (issue #241).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@243 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-05-23 23:39:07 +00:00
Marshall Greenblatt 338b9c0cc9 Add Date type support to CefV8Value (issue #190).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@242 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-05-23 17:43:53 +00:00
Marshall Greenblatt f5f2189c63 Move cef_* header files that should not be directly included by the client to the "include/internal" folder.
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@237 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-05-20 20:52:47 +00:00
Marshall Greenblatt a42e73848d Change to using OS_* defines in cef_*.h platform files.
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@236 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-05-20 20:15:57 +00:00
Marshall Greenblatt dbe8de277f Significant API changes for issue #218:
- Replace CefHandler with a new CefClient interface and separate handler interfaces.
- Add support for virtual inheritance to allow multiple CefBase parented interfaces to be implemented in the same class.
- Replace CefThreadSafeBase with IMPLEMENT_* macros to support virtual inheritance and to only provide locking implementations when needed.
- Move the CefBrowserSettings parameter from CefInitialize to CreateBrowser.
- Add a new cef_build.h header that provides platform-specific and OS_* defines.
- Introduce the use of OVERRIDE to generate compiler errors on Windows if a child virtual method declaration doesn't match the parent declaration.
- Use NDEBUG instead of _DEBUG because _DEBUG is not defined on Mac. (issue #240).

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@235 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-05-20 14:42:25 +00:00
Marshall Greenblatt 4bc8e47fad Add CefDOMNode::IsSame() method.
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@228 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-05-10 14:17:32 +00:00
Marshall Greenblatt 2669a3b6c3 - Don't load URLs twice for popup windows (issue #215).
- Make the |url| parameter to HandleBeforeCreated constant (issue #215).

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@227 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-05-10 13:55:06 +00:00
Marshall Greenblatt 06718b4049 Allow custom schemes to cause redirects (issue #98).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@223 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-04-21 18:17:46 +00:00
Marshall Greenblatt f18083e5df - Add support for returning an HTTP status code from HandleBeforeResourceLoad and custom scheme handlers via the CefResponse class (issue #202).
- Add unit tests for custom scheme handlers (issue #221).
- Fix reversed enable/disable of stop and reload buttons in cefclient.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@222 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-04-21 16:46:16 +00:00
Marshall Greenblatt a66c733ab6 - Add cookie get/set support (issue #88).
- Move classes that extend structures to cef_types_wrappers.h and implement using the new CefStructBase template class.
- Change the HandleProtocolExecution |allow_os_execution| argument to pass by reference to maintain consistency with other API functions.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@217 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-04-09 01:05:30 +00:00
Marshall Greenblatt 7ec29b5d87 - Add support for entering a V8 context asynchronously (issue #203).
- Add support for V8 accessors (issue #203).

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@215 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-04-07 01:58:49 +00:00
Marshall Greenblatt ff983a6e72 - Add off-screen rendering support on Windows. This involves a number of new CefBrowser and CefHandler methods. See the "Off-Screen Rendering Example" in cefclient for example usage.
- Add CefRunMessageLoop() for efficient message loop usage and modify cefclient to use it.
- Add CefHandler::HandleNavStateChange() for back/forward state notifications and modify cefclient to use it.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@208 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-03-24 20:36:47 +00:00
Marshall Greenblatt 327ad9d9de - HandleAddressChange and HandleTitleChange will always be called for the main frame and only the main frame (issue #200).
- The |frame| parameter to HandleLoadStart and HandleLoadEnd will always be non-empty. The CefFrame::IsMain() method can be used to check if the notification is for the main frame. The |isMainContent| parameter has been removed.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@202 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-03-08 19:33:18 +00:00
Marshall Greenblatt 11b831119a Mac:
- Fix compile errors.
- Add support for creating hidden windows and TEST_REDIRECT_POPUP_URLS.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@201 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-03-08 03:54:50 +00:00
Marshall Greenblatt 7b1166b18a - Respect the WS_VISIBLE flag when creating browser windows (issue #201).
- Add a CefBrowser::CloseBrowser() method.
- Add a TEST_REDIRECT_POPUP_URLS test to cefclient.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@200 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-03-08 01:07:47 +00:00
Marshall Greenblatt 1f01d6b2a8 Allow registration of non-standard schemes (issue #195).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@199 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-03-04 17:56:01 +00:00
Marshall Greenblatt 60736ac4e0 Add support for accessing and modifying the DOM (issue #60).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@191 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-02-23 03:45:13 +00:00
Marshall Greenblatt 06a6f0ce7c Issue #188:
- Add a CefV8Context object and CefV8Value::ExecuteFunctionWithContext method to support asynchronous V8 ExecuteFunction callbacks.
- Add a CefFrame::GetBrowser() method.
- Ensure that V8 types are only referenced on the UI thread.
- Accept a empty |object| parameter to CefV8Value::ExecuteFunction.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@188 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-02-21 22:44:06 +00:00
Marshall Greenblatt 163f8d6db9 Update to Chromium revision 74933.
- CefRegisterPlugin now only supports a single mime type per registration.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@186 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-02-15 18:07:24 +00:00
Marshall Greenblatt a125c0d964 - Add CefWebURLRequest implementation (issue #51).
- Default new CefRequest objects to the "GET" method.
- Send URL and title change notifications for CefFrame::LoadString().
- Disable the RequestTest.HistoryNav test which requires WebKit patches.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@184 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-02-09 22:04:35 +00:00
Marshall Greenblatt af12107c33 Mac: Use NSView* instead of void* for cef_window_handle_t.
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@183 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-02-02 16:30:24 +00:00
Marshall Greenblatt 64d9d8294c Add support for creating and parsing URLs (issue #181).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@177 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-01-31 20:47:04 +00:00
Marshall Greenblatt 83dd15925f Introduce cef_runnable.h and cef_tuple.h and perform further thread-related cleanup (issue #175).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@176 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-01-29 22:52:34 +00:00
Marshall Greenblatt 7f1694fb68 Improve thread safety and documentation and add support for thread-specific APIs (issue #175).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@174 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-01-29 01:42:59 +00:00
Marshall Greenblatt c89349cf5a Pass HTTP status code to HandleLoadEnd (issue #177).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@173 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-01-28 18:02:16 +00:00
Marshall Greenblatt e8436018ef Add CefHandler::HandleStatus for status messages, mouse over URLs and keyboard focus URLs (issue #61).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@169 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-01-26 15:12:49 +00:00
Marshall Greenblatt ca3a392c33 - Add developer tools support (issue #127).
- Send title change notifications generated after page content is done loading.
- Restore windows and bring to the front in BrowserWebViewDelegate::show().

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@168 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-01-25 18:37:27 +00:00
Marshall Greenblatt c9b8e88dd9 Add zoom support (issue #116).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@167 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-01-25 15:34:50 +00:00
Marshall Greenblatt 442cc1b89f Add the ability to specify log file location and severity level (issue #172).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@164 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-01-24 20:41:07 +00:00
Marshall Greenblatt 013c008775 Add HandleProtocolExecution event for unregistered protocols (issue #155).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@163 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-01-12 01:33:03 +00:00
Marshall Greenblatt bf02152631 - Update to Chromium revision 71081.
- Add a new |isMainContent| boolean argument to HandleLoadStart and HandleLoadEnd (issue #166).
- Only call HandleAddressChange and HandleTitleChange for the main content load (issue #166).
- Pass the URL for new popup windows to HandleBeforeCreated (issue #5).
- cefclient: Add a test for XMLHttpRequest.
- cefclient: Size popup windows in ClientHandler::HandleBeforeCreated.


git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@162 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-01-11 23:46:14 +00:00
Marshall Greenblatt b8385a7649 - Add initial Linux implementation files.
- Fix copyright years.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@161 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-01-10 01:31:12 +00:00
Marshall Greenblatt 874c73b1e1 Add CefHandler::HandleAuthenticationRequest for handling authentication requests (issue #150).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@158 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2011-01-07 01:24:17 +00:00
Marshall Greenblatt 3cd3a35f10 - Update to Chromium revision 69409.
- Add cefclient tests for GPU acceleration.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@152 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2010-12-16 21:54:42 +00:00
Marshall Greenblatt 871a8a7770 Fix Linux compile errors.
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@150 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2010-12-07 01:30:26 +00:00
Marshall Greenblatt e826c9b1a0 - Fix Mac compile errors due to string type changes (issue #146).
- Fix Windows crash due to string type changes (issue #147).
- Add missing svn:eol-style properties.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@149 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2010-11-23 14:46:01 +00:00
Marshall Greenblatt 81b7d378f7 Make comment language more consistent.
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@148 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2010-11-22 18:38:27 +00:00
Marshall Greenblatt fdec22ac8f Introduce CefString and cef_string_t implementations that support string type conversions and customization of the API string type (issue #146).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@146 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2010-11-22 17:58:27 +00:00
Marshall Greenblatt 7d60642638 Introduce CefString and cef_string_t implementations that support string type conversions and customization of the API string type (issue #146).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@145 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2010-11-22 17:49:46 +00:00
Marshall Greenblatt 1e1c2ad8d7 Add global and per-browser settings (issue #145).
This exposes the following new capabilities:
- Ability to disable drag & drop from other windows.
- Ability to specify additional plugin search paths.
- Ability to customize WebPreferences values, including enabling cross-site scripting.
- Ability to set User-Agent or product version.
- Ability to set default locale.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@144 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2010-11-18 21:05:25 +00:00
Marshall Greenblatt 6ad535823a Expose popup window feature information with CefPopupFeatures argument to CefHandler::HandleBeforeCreated (issue #135).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@139 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2010-11-16 16:45:49 +00:00
Marshall Greenblatt c629ac966f Mac:
- Complete basic functionality in libcef.
- Port cefclient and unittests.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@135 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2010-11-15 15:39:56 +00:00
Marshall Greenblatt 5a4c8f5a13 Expose zip archive reading support (issue #30).
Move ClientReadHandler to CefByteReadHandler in cef_wrapper.h.
Add support for the time_t data type to cef_parser.py.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@125 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2010-10-24 16:41:21 +00:00
Marshall Greenblatt c6be988e89 Add initial Mac implementation files.
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@123 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2010-10-23 17:00:47 +00:00
Marshall Greenblatt 92eb49f44f Rename CefXmlReader::MoveToNextElement to CefXmlReader::MoveToNextNode to better represent its purpose.
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@120 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2010-10-21 15:19:43 +00:00
Marshall Greenblatt 18bc093786 Expose XML parsing support (issue #28).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@119 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2010-10-20 15:12:46 +00:00
Marshall Greenblatt 9aa285ac8d - Add the CefHandler::HandleDownloadResponse() method and CefDownloadHandler class to support file download in response to 'Content-Disposition' headers (issue #6).
- Fix parsing error in cef_parser.py due to space between angle brackets in template type definitions, and add support for int64 type.
- Update copyright messages in Python and generated files.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@117 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2010-10-16 19:10:11 +00:00
Marshall Greenblatt 4474199dba Fix various Mac and Linux compile errors.
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@114 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2010-10-09 19:21:09 +00:00
Marshall Greenblatt 7898b6bf4f Initial header for Mac and Linux support.
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@113 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2010-10-09 18:23:06 +00:00
Marshall Greenblatt 46b831304c Set eol-style property on all files. Future commits will use the subversion auto-props configuration at http://src.chromium.org/viewvc/chrome/trunk/tools/buildbot/slave/config
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@109 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2010-10-03 21:04:50 +00:00
Marshall Greenblatt 4fd793f802 Add CefBrowser::ReloadIgnoreCache() method and MENU_ID_NAV_RELOAD_NOCACHE menu support. (issue #118).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@107 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2010-09-23 16:05:10 +00:00
Marshall Greenblatt e8cc5669f0 - Fix bug in CefV8Value handling of weak references. (issue #72)
- Reintroduce support for CefHandler::HandleJSBinding(). (issue #72)

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@100 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2010-08-31 17:52:34 +00:00
Marshall Greenblatt e70fd64a52 Update cef_handler_menucapabilitybits_t arguments from WebContextMenuData::EditFlags (issue #114).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@99 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2010-08-31 15:33:48 +00:00
Marshall Greenblatt d51d871a52 Allow customization of print options via CefHandler::HandlePrintOptions() (issue #112).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@98 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2010-08-31 15:19:33 +00:00
Marshall Greenblatt c439ed160f - Add CefHandler::HandleTooltip and default tooltip implementation (issue #61).
- Add Common Controls to cefclient manifest because it's required for the default tooltip implementation.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@96 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2010-08-30 20:54:13 +00:00
Marshall Greenblatt a4776a9dda Carry over modifications to request object in CefHandler::HandleBeforeResourceLoad() (issue #41).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@95 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2010-08-30 20:26:13 +00:00
Marshall Greenblatt 7ffa037988 - Move to a unified thread model for CEF based on the CEF2 implementation.
- Add the ability to post user-defined tasks for execution on CEF threads (issue #25).
- Update the CEF swap image.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@90 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2010-07-24 01:13:55 +00:00
Marshall Greenblatt 0e29c2e840 - Add find in page support.
- Fix loading of resources from libcef.dll (Issue 76).
- Fix leak of CefMessageLoopForUI object when not in multi threaded message loop mode.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@88 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2010-07-19 22:19:30 +00:00
Marshall Greenblatt de4cee4415 - Add CefHandler::HandleConsoleMessage callback for handling console messages (issue #90).
- Normalize newlines in browser_webkit_init.h.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@84 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2010-06-22 14:49:03 +00:00
Marshall Greenblatt 6a0f9a6d40 Eliminate the CefBrowser::HandleJSBinding() method to avoid memory leaks (issue #72).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@73 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2010-04-07 14:45:40 +00:00
Marshall Greenblatt 669244ca18 libcef: Update due to underlying chromium changes.
- Calling AddStandardScheme() is now required for custom scheme handlers due to GURL changes.
- Add '--no-circular-check' flag in cef_create_projects.bat to avoid unnecessary GYP failures.
- nphostapi.h moved to third_party/npapi/bindings directory.
- UTF functions moved to base/utf_string_conversions.h
- app/gfx directory moved to gfx
- Add simple cookie jar implementation.
- Enable WebGL support.


git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@72 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2010-03-29 17:53:26 +00:00
Marshall Greenblatt 606b342147 Add support for intercepting key events (Issue #63, patch by cpinfold.joinerysoft)
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@70 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2010-02-03 19:25:11 +00:00
Marshall Greenblatt faabcb28c5 - Remove the generated CEF project files from source control. Run cef_create_projects.bat in your working copy to generate them locally.
libcef:
- Use LPCWSTR instead of LPCTSTR in cef_win.h (issue #58).
- Fix return of document text in CefBrowserImpl::GetText() (issue #59).


git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@59 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2009-10-19 14:03:23 +00:00
Marshall Greenblatt 144e15c966 libcef:
- Fix incorrect result in CefBytesReader::Seek() when SEEK_END argument is specified.
- Return 0 from CefBytesReader::Seek() on success to be consistent with fseek().
- Set URLRequestStatus error code to net::ERR_ABORTED in browser_resource_loader_bridge.cc when HandleBeforeResourceLoad returns RV_HANDLED to avoid a WebKit assert.

unittests:
- Add unit testing framework.
- Add initial unit tests for request, stream and V8.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@52 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2009-10-08 01:26:56 +00:00
Marshall Greenblatt 2b7e69d200 libcef:
- Add CefReadHandler and CefWriteHandler classes for creating streams handled by the client.

cefclient:
- Add a CefReadHandler test.
- Move tests out of cefclient.cpp and into separate implementation files.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@39 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2009-08-21 17:41:09 +00:00
Marshall Greenblatt 087319efdb libcef:
- Add support for custom scheme handlers (entry #49, initial version by heshiming).

cefclient:
- Add custom scheme handler test.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@37 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2009-08-21 02:14:47 +00:00
Marshall Greenblatt ea3a49abe1 Update all files to use Windows CRLF (\r\n) line endings (issue #45).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@33 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2009-07-24 19:11:01 +00:00
Marshall Greenblatt 6a7b6d5038 libcef: Update due to underlying chromium changes.
- Add the printing project and delete duplicated files from the CEF printing directory.
- Add media-related projects and support for <video> and <image> tags.
- Use WebKit::WebHTTPBody instead of net::UploadData for web requests.
- Numerous changes due to continued cleanup of webkit/glue and webkit/api/public.
- Use a separate BrowserWebViewDelegate instance for popup windows.

libcef:
- Add support for printing to file.
- Use WebFrame::GetFullPageHtml() instead of webkit_glue::GetDocumentString().
- Parse extra header values in RequestProxy for passing to CefHandler::HandleBeforeResourceLoad().
- Add urlmon.lib dependency in libcef.vsprops.

tools:
- Add the patch application tool (patcher.py).

patch:
- New project for applying required patches to the Chromium source tree (issue #47).
- Add webkit_glue.patch for http://codereview.chromium.org/160004

cefclient:
- Add new test for submitting and handling requests.
- Don't change navigation button state for popup windows.
- Fix problem on Vista where the string returned by EM_GETLINE is not NULL-terminated.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@32 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2009-07-24 18:37:00 +00:00
Marshall Greenblatt 0a92d27cc1 libcef:
- change 'void *' arguments to 'void* ' to match style requirements.

translator:
- add support for const virtual methods. (Issue # 36)
- output const vector argument types as 'struct _class_t* const*' (cons array, non-const members) instead of 'const struct _class_t**' (non-const array, const members) (Issue # 36)
- always add the 'enum' qualifier when outputting C API enum attribute types. (Issue # 38)
- update translated files.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@31 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2009-06-25 15:59:48 +00:00
Marshall Greenblatt 8a04c0f0c1 - Add the CEF translator tool for generating the C API header and cpptoc/ctocpp wrapper files.
- Update to files generated by the CEF translator tool.  This introduces minor changes in cef.h and cef_capi.h for naming and translation consistency.
- C API global function names that were previously in the cef_create_classname*() format are now in the cef_classname_create*() format.
- cef_frame_t::get_frame_names() now returns void instead of size_t.
- cef_frame_t::execute_javascript() has been renamed to cef_frame_t::execute_java_script().
- The 'arguments' attribute of CefV8Handler::Execute() and CefV8Value::ExecuteFunction() is now const.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@30 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2009-06-20 22:09:28 +00:00
Marshall Greenblatt d953faf7f8 Add a CefHandler::HandleSetFocus() callback that gets called when the browser control or a child widget requests focus. This callback gives the client an opportunity to cancel the focus change. (Issue #34, initial patch by tux316).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@29 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2009-06-16 13:52:35 +00:00
Marshall Greenblatt c295931b1e - Move frame-related methods from CefBrowser into a new CefFrame class.
- Add CefBrowser::Get*Frame() methods for retrieving the appropriate CefFrame instance.
- Add a CefFrame attribute to CefHandler callback methods where appropriate.
- Add support for V8 JavaScript extensions and values via CefV8Value and CefV8Handler.  Native C++ and user-defined JavaScript object hierarchies may now be created and accessed using the CEF API.
- Remove the CefHandler and CefVariant classes and related CefBrowser methods that have been obsoleted by the addition of CEF V8 support.
- Add the CefRegisterExtension() function for registering system-wide V8 extensions.
- Add the CefHandler::HandleJSBinding() callback method for attaching V8 values to the global frame JavaScript object.  This method replaces the previous technique of calling CefBrowser::AddJSHandler().
- Add new wrapper template methods for simplifying DLL wrapper implementations.
- Move cef_string* files from libcef_dll to libcef so that projects can link libcef statically without errors.
- Fix crashes when CEF exits due to object constructors being executed on non-UI threads if the application is closed while a page is still loading.
- Update the cefclient project to reflect changes and demonstrate the new APIs.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@26 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2009-05-28 00:31:21 +00:00
Marshall Greenblatt 08a19d5384 libcef:
- Add the CefBrowser::CreateBrowserSync() method for synchronously creating a browser instance. (Issue #13, Suggested implementation by: vridosh)
- Add CefBrowser::SetFocus() and CefHandler::HandleTakeFocus() methods to deal with keyboard focus changes. (Issue #13, Suggested implementation by: vridosh)
- Add CefHandler::HandleBeforeWindowClose() to perform actions immediately before the browser window is destroyed. (Issue #13, Suggested implementation by: vridosh)
- Replace windows-specific address resolution code with GURL() in CefBrowserImpl::UIT_LoadURLForRequest(), CefBrowserImpl::UIT_LoadHTML() and CefBrowserImpl::UIT_LoadHTMLForStreamRef(), and move the methods from browser_impl_win.cc to browser_impl.cc. (Issue #13, Suggested implementation by: vridosh)
- Fix reference counting bugs, class definition problems and CefContext::Shutdown() bug resulting in Cef object leaks. (Issue #15)
- Add WebKit dependancy to libcef project.
- Add basic object count debugging for CefCToCpp and CefCppToC classes.

cefclient:
- Initialize the strPtr parameter to avoid URLs suffixed with garbage. (Issue #13, Fix by: vridosh)

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@19 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2009-03-08 02:26:16 +00:00
Marshall Greenblatt 3aa0d4c0fa libcef:
- Add support for specifying the cache location (file path or in-memory) via a new 'cache_path' parameter to CefInitialize().
- Create popup windows with a NULL parent window handle so that they don't stay on top of the original application window.

cefclient:
- Properly handle address change and title change for popup windows.
- Add a test for creating a popup window.
- Define TEST_SINGLE_THREADED_MESSAGE_LOOP by default.


git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@18 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2009-03-06 19:20:44 +00:00
Marshall Greenblatt 35e21da884 Add DLL build support and wrapper that allows clients to transparently switch between static and dynamic CEF builds.
- The libcef project now builds libcef_static.lib instead of libcef.lib.
- The libcef_dll project builds libcef.lib and libcef.dll.  This DLL exports the new CEF C API defined in cef_capi.h, cef_nplugin_capi.h, cef_string.h and cef_string_map.h.
- The libcef_dll_wrapper project builds libcef_dll_wrapper.lib.  This static library wraps the new C API calls with an implementation of the CEF C++ interface as defined in cef.h and cef_nplugin.h.
- The cefclient project now uses the DLL instead of the static library.
- Type definitions have been moved from cef.h to cef_types.h so that they can be shared by both cef.h and cef_capi.h.  This change required some enumeration member name modifications throughout the code base.
- Fixed variable naming inconsistencies.
- Added CefVariant::GetArraySize() method and _NPN_ArrayObjectGetVectorSize() function.
- Remove the ProjectSection(WebsiteProperties) sections from cef.sln to improve VS2005 performance.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@16 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2009-03-05 01:10:06 +00:00
Marshall Greenblatt 15f6c270fa libcef:
- Allow execution of CEF using the current application's message loop.
tests/cefclient:
- Support running of the cefclient application using a single message loop via the TEST_SINGLE_THREADED_MESSAGE_LOOP define.

Issue #1, Suggested implementation by: vridosh

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@13 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2009-01-29 18:53:17 +00:00
Marshall Greenblatt 9d3cd36b4b libcef:
- Add CefBrowser::ExecuteJavaScript() method.
tests/cefclient:
- Add test for ExecuteJavaScript method.

Issue 1, Suggested implementation by: vridosh


git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@12 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2009-01-29 17:48:16 +00:00
Marshall Greenblatt 73027bb5a9 libcef: Update due to underlying chromium changes.
- External plugin loading support is now provided by webkit/glue/plugins so the libcef/plugins directory has been eliminated, with related changes.
- Modify the CefPluginInfo structure to use a more friendly data organization format.
- Remove CefUnregisterPlugin() as it is no longer functional.
- WebViewDelegate::ShowContextMenu() now receives the menu type as a bit-masked flag, so adjust the API accordingly.
- WebViewDelegate::GetContainingView() now returns a gfx::NativeViewId instead of a gfx::NativeView.
- Modify BrowserRequestContext because GetUserAgent() is now a virtual method of URLRequestContext.
- The data buffer in RequestProxy is now a net::IOBuffer.
- Add webkit_glue::GetScreenInfo().

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@10 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2009-01-29 16:36:37 +00:00
Marshall Greenblatt a08ad505ad libcef:
- Add support for embedded netscape-style plugins.
- Add new webkit_glue VisitedLinkHash() and IsLinkVisited() functions required by underlying chromium changes.
cefclient:
- Add sample netscape-style plugin implementation and related Plugin item on the Tests menu.
- Increase the speed of the update timer so that buttons refresh closer to real-time.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@5 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2008-12-14 04:49:18 +00:00
Marshall Greenblatt 9c58b671a8 Initial commit of libcef and cefclient projects.
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@2 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
2008-12-02 15:48:14 +00:00