Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Update to latest libcef

  • Loading branch information...
commit 8be8135bf386b87e18beff9a365227c1816b044c 1 parent 4673953
@paulcbetts authored
Showing with 8,970 additions and 4,154 deletions.
  1. +6 −2 CefSharp.Example/CefSharp.Example.csproj
  2. +5 −3 CefSharp.Example/Properties/Resources.Designer.cs
  3. +6 −2 CefSharp.Tests/CefSharp.Tests.csproj
  4. +10 −2 CefSharp.WpfExample/CefSharp.WpfExample.csproj
  5. +19 −27 CefSharp.WpfExample/Properties/Resources.Designer.cs
  6. +10 −14 CefSharp.WpfExample/Properties/Settings.Designer.cs
  7. +3 −3 CefSharp.sln
  8. +44 −1 CefSharp/Stdafx.h
  9. +8 −3 CefUsageTests/CefUsageTests.csproj
  10. +19 −27 CefUsageTests/Properties/Resources.Designer.cs
  11. +10 −14 CefUsageTests/Properties/Settings.Designer.cs
  12. +2 −2 CefUsageTests/app.config
  13. +0 −3,568 include/cef.h
  14. +108 −0 include/cef_app.h
  15. +120 −0 include/cef_application_mac.h
  16. +154 −0 include/cef_base.h
  17. +335 −0 include/cef_browser.h
  18. +176 −0 include/cef_client.h
  19. +160 −0 include/cef_command_line.h
  20. +69 −0 include/cef_content_filter.h
  21. +113 −0 include/cef_cookie.h
  22. +118 −0 include/cef_display_handler.h
  23. +429 −0 include/cef_dom.h
  24. +65 −0 include/cef_download_handler.h
  25. +126 −0 include/cef_drag_data.h
  26. +78 −0 include/cef_drag_handler.h
  27. +69 −0 include/cef_find_handler.h
  28. +89 −0 include/cef_focus_handler.h
  29. +222 −0 include/cef_frame.h
  30. +88 −0 include/cef_jsdialog_handler.h
  31. +77 −0 include/cef_keyboard_handler.h
  32. +105 −0 include/cef_life_span_handler.h
  33. +95 −0 include/cef_load_handler.h
  34. +81 −0 include/cef_menu_handler.h
  35. +119 −0 include/cef_nplugin.h
  36. +99 −0 include/cef_origin_whitelist.h
  37. +65 −0 include/cef_permission_handler.h
  38. +92 −0 include/cef_print_handler.h
  39. +57 −0 include/cef_proxy_handler.h
  40. +120 −0 include/cef_render_handler.h
  41. +255 −0 include/cef_request.h
  42. +160 −0 include/cef_request_handler.h
  43. +104 −0 include/cef_response.h
  44. +346 −0 include/cef_runnable.h
  45. +221 −0 include/cef_scheme.h
  46. +110 −0 include/cef_storage.h
  47. +210 −0 include/cef_stream.h
  48. +89 −0 include/cef_task.h
  49. +60 −0 include/cef_url.h
  50. +598 −0 include/cef_v8.h
  51. +74 −0 include/cef_v8context_handler.h
  52. +68 −0 include/cef_version.h
  53. +135 −0 include/cef_web_urlrequest.h
  54. +269 −0 include/cef_xml_reader.h
  55. +142 −0 include/cef_zip_reader.h
  56. +42 −0 include/files.txt
  57. +24 −7 include/internal/cef_build.h
  58. +7 −1 include/internal/cef_export.h
  59. +119 −0 include/internal/cef_linux.h
  60. +135 −0 include/internal/cef_mac.h
  61. +90 −0 include/internal/cef_nplugin_types.h
  62. +8 −5 include/internal/cef_ptr.h
  63. +9 −8 include/internal/cef_string.h
  64. +6 −5 include/internal/cef_string_list.h
  65. +97 −0 include/internal/cef_string_map.h
  66. +105 −0 include/internal/cef_string_multimap.h
  67. +10 −9 include/internal/cef_string_types.h
  68. +214 −200 include/internal/cef_string_wrappers.h
  69. +8 −6 include/internal/cef_time.h
  70. +1,082 −0 include/internal/cef_tuple.h
  71. +169 −105 include/internal/cef_types.h
  72. +81 −0 include/internal/cef_types_linux.h
  73. +96 −0 include/internal/cef_types_mac.h
  74. +15 −12 include/internal/cef_types_win.h
  75. +210 −93 include/internal/cef_types_wrappers.h
  76. +31 −35 include/internal/cef_win.h
  77. BIN  libs/Release/libcef.lib
  78. BIN  libs/Release/libcef_dll_wrapper.lib
View
8 CefSharp.Example/CefSharp.Example.csproj
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
@@ -14,6 +14,10 @@
<FileAlignment>512</FileAlignment>
<StartupObject>
</StartupObject>
+ <FileUpgradeFlags>
+ </FileUpgradeFlags>
+ <OldToolsVersion>3.5</OldToolsVersion>
+ <UpgradeBackupLocation />
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
@@ -86,7 +90,7 @@
<Compile Include="TestSettings.cs" />
</ItemGroup>
<ItemGroup>
- <ProjectReference Include="..\CefSharp\CefSharp.vcproj">
+ <ProjectReference Include="..\CefSharp\CefSharp.vcxproj">
<Project>{7B495581-2271-4F41-9476-ACB86E8C864F}</Project>
<Name>CefSharp</Name>
</ProjectReference>
View
8 CefSharp.Example/Properties/Resources.Designer.cs
@@ -1,7 +1,7 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
-// Runtime Version:2.0.50727.5444
+// Runtime Version:4.0.30319.488
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
@@ -19,7 +19,7 @@ namespace CefSharp.Example.Properties {
// class via a tool like ResGen or Visual Studio.
// To add or remove a member, edit your .ResX file then rerun ResGen
// with the /str option, or rebuild your VS project.
- [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "2.0.0.0")]
+ [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
internal class Resources {
@@ -129,7 +129,9 @@ internal class Resources {
/// &lt;title&gt;Popup Test&lt;/title&gt;
/// &lt;/head&gt;
/// &lt;body&gt;
- ///
+ /// &lt;a href=&quot;https://github.com/ataranto/CefSharp&quot; target=&quot;_blank&quot;&gt;target=_blank&lt;/a&gt;
+ /// &lt;br /&gt;
+ /// &lt;a href=&quot;#&quot; onclick=&quot;window.open(&apos;https://github.com/ataranto/CefSharp&apos;)&quot;&gt;window.open()&lt;/a&gt;
/// &lt;/body&gt;
///&lt;/html&gt;
///.
View
8 CefSharp.Tests/CefSharp.Tests.csproj
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
@@ -12,6 +12,10 @@
<AssemblyName>CefSharp.Tests</AssemblyName>
<TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
+ <FileUpgradeFlags>
+ </FileUpgradeFlags>
+ <OldToolsVersion>3.5</OldToolsVersion>
+ <UpgradeBackupLocation />
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
@@ -57,7 +61,7 @@
<Compile Include="ResourceTests.cs" />
</ItemGroup>
<ItemGroup>
- <ProjectReference Include="..\CefSharp\CefSharp.vcproj">
+ <ProjectReference Include="..\CefSharp\CefSharp.vcxproj">
<Project>{7B495581-2271-4F41-9476-ACB86E8C864F}</Project>
<Name>CefSharp</Name>
</ProjectReference>
View
12 CefSharp.WpfExample/CefSharp.WpfExample.csproj
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
@@ -14,6 +14,10 @@
<FileAlignment>512</FileAlignment>
<ProjectTypeGuids>{60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
<WarningLevel>4</WarningLevel>
+ <FileUpgradeFlags>
+ </FileUpgradeFlags>
+ <OldToolsVersion>3.5</OldToolsVersion>
+ <UpgradeBackupLocation />
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
@@ -54,10 +58,14 @@
<ApplicationDefinition Include="App.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
+ <Generator>MSBuild:Compile</Generator>
+ <SubType>Designer</SubType>
</ApplicationDefinition>
<Page Include="MainWindow.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
+ <Generator>MSBuild:Compile</Generator>
+ <SubType>Designer</SubType>
</Page>
<Compile Include="App.xaml.cs">
<DependentUpon>App.xaml</DependentUpon>
@@ -93,7 +101,7 @@
<AppDesigner Include="Properties\" />
</ItemGroup>
<ItemGroup>
- <ProjectReference Include="..\CefSharp\CefSharp.vcproj">
+ <ProjectReference Include="..\CefSharp\CefSharp.vcxproj">
<Project>{7B495581-2271-4F41-9476-ACB86E8C864F}</Project>
<Name>CefSharp</Name>
</ProjectReference>
View
46 CefSharp.WpfExample/Properties/Resources.Designer.cs
@@ -1,17 +1,17 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
-// Runtime Version:2.0.50727.5444
+// Runtime Version:4.0.30319.488
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
-namespace CefSharp.WpfExample.Properties
-{
-
-
+namespace CefSharp.WpfExample.Properties {
+ using System;
+
+
/// <summary>
/// A strongly-typed resource class, for looking up localized strings, etc.
/// </summary>
@@ -19,51 +19,43 @@ namespace CefSharp.WpfExample.Properties
// class via a tool like ResGen or Visual Studio.
// To add or remove a member, edit your .ResX file then rerun ResGen
// with the /str option, or rebuild your VS project.
- [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "2.0.0.0")]
+ [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
- internal class Resources
- {
-
+ internal class Resources {
+
private static global::System.Resources.ResourceManager resourceMan;
-
+
private static global::System.Globalization.CultureInfo resourceCulture;
-
+
[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
- internal Resources()
- {
+ internal Resources() {
}
-
+
/// <summary>
/// Returns the cached ResourceManager instance used by this class.
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
- internal static global::System.Resources.ResourceManager ResourceManager
- {
- get
- {
- if ((resourceMan == null))
- {
+ internal static global::System.Resources.ResourceManager ResourceManager {
+ get {
+ if (object.ReferenceEquals(resourceMan, null)) {
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("CefSharp.WpfExample.Properties.Resources", typeof(Resources).Assembly);
resourceMan = temp;
}
return resourceMan;
}
}
-
+
/// <summary>
/// Overrides the current thread's CurrentUICulture property for all
/// resource lookups using this strongly typed resource class.
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
- internal static global::System.Globalization.CultureInfo Culture
- {
- get
- {
+ internal static global::System.Globalization.CultureInfo Culture {
+ get {
return resourceCulture;
}
- set
- {
+ set {
resourceCulture = value;
}
}
View
24 CefSharp.WpfExample/Properties/Settings.Designer.cs
@@ -1,28 +1,24 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
-// Runtime Version:2.0.50727.5444
+// Runtime Version:4.0.30319.488
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
-namespace CefSharp.WpfExample.Properties
-{
-
-
+namespace CefSharp.WpfExample.Properties {
+
+
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
- [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "9.0.0.0")]
- internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase
- {
-
+ [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "10.0.0.0")]
+ internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
+
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
-
- public static Settings Default
- {
- get
- {
+
+ public static Settings Default {
+ get {
return defaultInstance;
}
}
View
6 CefSharp.sln
@@ -1,7 +1,7 @@

-Microsoft Visual Studio Solution File, Format Version 10.00
-# Visual Studio 2008
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "CefSharp", "CefSharp\CefSharp.vcproj", "{7B495581-2271-4F41-9476-ACB86E8C864F}"
+Microsoft Visual Studio Solution File, Format Version 11.00
+# Visual Studio 2010
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "CefSharp", "CefSharp\CefSharp.vcxproj", "{7B495581-2271-4F41-9476-ACB86E8C864F}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CefUsageTests", "CefUsageTests\CefUsageTests.csproj", "{E8A40E8F-5B1E-4021-BF60-7F7482235E81}"
EndProject
View
45 CefSharp/Stdafx.h
@@ -6,6 +6,49 @@
#include <vcclr.h>
#include <gcroot.h>
-#include "cef.h"
+
+#include "include/cef_app.h"
+#include "include/cef_application_mac.h"
+#include "include/cef_base.h"
+#include "include/cef_browser.h"
+#include "include/cef_client.h"
+#include "include/cef_command_line.h"
+#include "include/cef_content_filter.h"
+#include "include/cef_cookie.h"
+#include "include/cef_display_handler.h"
+#include "include/cef_dom.h"
+#include "include/cef_download_handler.h"
+#include "include/cef_drag_data.h"
+#include "include/cef_drag_handler.h"
+#include "include/cef_find_handler.h"
+#include "include/cef_focus_handler.h"
+#include "include/cef_frame.h"
+#include "include/cef_jsdialog_handler.h"
+#include "include/cef_keyboard_handler.h"
+#include "include/cef_life_span_handler.h"
+#include "include/cef_load_handler.h"
+#include "include/cef_menu_handler.h"
+//#include "include/cef_nplugin.h"
+#include "include/cef_origin_whitelist.h"
+#include "include/cef_permission_handler.h"
+#include "include/cef_print_handler.h"
+#include "include/cef_proxy_handler.h"
+#include "include/cef_render_handler.h"
+#include "include/cef_request.h"
+#include "include/cef_request_handler.h"
+#include "include/cef_response.h"
+#include "include/cef_runnable.h"
+#include "include/cef_scheme.h"
+#include "include/cef_storage.h"
+#include "include/cef_stream.h"
+#include "include/cef_task.h"
+#include "include/cef_url.h"
+#include "include/cef_v8.h"
+#include "include/cef_v8context_handler.h"
+#include "include/cef_version.h"
+#include "include/cef_web_urlrequest.h"
+#include "include/cef_xml_reader.h"
+#include "include/cef_zip_reader.h"
+
#include "ManagedCefRefPtr.h"
#include "Utils.h"
View
11 CefUsageTests/CefUsageTests.csproj
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
@@ -12,7 +12,11 @@
<AssemblyName>CefUsageTests</AssemblyName>
<TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
- <TargetFrameworkSubset>Client</TargetFrameworkSubset>
+ <TargetFrameworkProfile>Client</TargetFrameworkProfile>
+ <FileUpgradeFlags>
+ </FileUpgradeFlags>
+ <OldToolsVersion>3.5</OldToolsVersion>
+ <UpgradeBackupLocation />
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
@@ -70,6 +74,7 @@
<Compile Include="Properties\Resources.Designer.cs">
<AutoGen>True</AutoGen>
<DependentUpon>Resources.resx</DependentUpon>
+ <DesignTime>True</DesignTime>
</Compile>
<None Include="app.config" />
<None Include="Properties\Settings.settings">
@@ -83,7 +88,7 @@
</Compile>
</ItemGroup>
<ItemGroup>
- <ProjectReference Include="..\CefSharp\CefSharp.vcproj">
+ <ProjectReference Include="..\CefSharp\CefSharp.vcxproj">
<Project>{7B495581-2271-4F41-9476-ACB86E8C864F}</Project>
<Name>CefSharp</Name>
</ProjectReference>
View
46 CefUsageTests/Properties/Resources.Designer.cs
@@ -1,17 +1,17 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
-// Runtime Version:2.0.50727.4952
+// Runtime Version:4.0.30319.488
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
-namespace CefUsageTests.Properties
-{
-
-
+namespace CefUsageTests.Properties {
+ using System;
+
+
/// <summary>
/// A strongly-typed resource class, for looking up localized strings, etc.
/// </summary>
@@ -19,51 +19,43 @@ namespace CefUsageTests.Properties
// class via a tool like ResGen or Visual Studio.
// To add or remove a member, edit your .ResX file then rerun ResGen
// with the /str option, or rebuild your VS project.
- [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "2.0.0.0")]
+ [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
- internal class Resources
- {
-
+ internal class Resources {
+
private static global::System.Resources.ResourceManager resourceMan;
-
+
private static global::System.Globalization.CultureInfo resourceCulture;
-
+
[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
- internal Resources()
- {
+ internal Resources() {
}
-
+
/// <summary>
/// Returns the cached ResourceManager instance used by this class.
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
- internal static global::System.Resources.ResourceManager ResourceManager
- {
- get
- {
- if ((resourceMan == null))
- {
+ internal static global::System.Resources.ResourceManager ResourceManager {
+ get {
+ if (object.ReferenceEquals(resourceMan, null)) {
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("CefUsageTests.Properties.Resources", typeof(Resources).Assembly);
resourceMan = temp;
}
return resourceMan;
}
}
-
+
/// <summary>
/// Overrides the current thread's CurrentUICulture property for all
/// resource lookups using this strongly typed resource class.
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
- internal static global::System.Globalization.CultureInfo Culture
- {
- get
- {
+ internal static global::System.Globalization.CultureInfo Culture {
+ get {
return resourceCulture;
}
- set
- {
+ set {
resourceCulture = value;
}
}
View
24 CefUsageTests/Properties/Settings.Designer.cs
@@ -1,28 +1,24 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
-// Runtime Version:2.0.50727.4952
+// Runtime Version:4.0.30319.488
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
-namespace CefUsageTests.Properties
-{
-
-
+namespace CefUsageTests.Properties {
+
+
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
- [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "9.0.0.0")]
- internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase
- {
-
+ [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "10.0.0.0")]
+ internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
+
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
-
- public static Settings Default
- {
- get
- {
+
+ public static Settings Default {
+ get {
return defaultInstance;
}
}
View
4 CefUsageTests/app.config
@@ -1,3 +1,3 @@
-<?xml version="1.0"?>
+<?xml version="1.0"?>
<configuration>
-<startup><supportedRuntime version="v2.0.50727" sku="Client"/></startup></configuration>
+ <startup/></configuration>
View
3,568 include/cef.h
0 additions, 3,568 deletions not shown
View
108 include/cef_app.h
@@ -0,0 +1,108 @@
+// Copyright (c) 2011 Marshall A. Greenblatt. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * 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.
+// * Neither the name of Google Inc. nor the name Chromium Embedded
+// Framework nor the names of its contributors may be used to endorse
+// or promote products derived from this software without specific prior
+// written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND 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 THE COPYRIGHT
+// OWNER 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 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.
+//
+// ---------------------------------------------------------------------------
+//
+// The contents of this file must follow a specific format in order to
+// support the CEF translator tool. See the translator.README.txt file in the
+// tools directory for more information.
+//
+
+
+#ifndef CEF_INCLUDE_CEF_APP_H_
+#define CEF_INCLUDE_CEF_APP_H_
+#pragma once
+
+#include "include/cef_base.h"
+#include "include/cef_proxy_handler.h"
+
+class CefApp;
+
+///
+// This function should be called on the main application thread to initialize
+// CEF when the application is started. The |application| parameter may be
+// empty. A return value of true indicates that it succeeded and false indicates
+// that it failed.
+///
+/*--cef(revision_check,optional_param=application)--*/
+bool CefInitialize(const CefSettings& settings, CefRefPtr<CefApp> application);
+
+///
+// This function should be called on the main application thread to shut down
+// CEF before the application exits.
+///
+/*--cef()--*/
+void CefShutdown();
+
+///
+// Perform a single iteration of CEF message loop processing. This function is
+// used to integrate the CEF message loop into an existing application message
+// loop. Care must be taken to balance performance against excessive CPU usage.
+// This function should only be called on the main application thread and only
+// if CefInitialize() is called with a CefSettings.multi_threaded_message_loop
+// value of false. This function will not block.
+///
+/*--cef()--*/
+void CefDoMessageLoopWork();
+
+///
+// Run the CEF message loop. Use this function instead of an application-
+// provided message loop to get the best balance between performance and CPU
+// usage. This function should only be called on the main application thread and
+// only if CefInitialize() is called with a
+// CefSettings.multi_threaded_message_loop value of false. This function will
+// block until a quit message is received by the system.
+///
+/*--cef()--*/
+void CefRunMessageLoop();
+
+///
+// Quit the CEF message loop that was started by calling CefRunMessageLoop().
+// This function should only be called on the main application thread and only
+// if CefRunMessageLoop() was used.
+///
+/*--cef()--*/
+void CefQuitMessageLoop();
+
+
+///
+// Implement this interface to provide handler implementations.
+///
+/*--cef(source=client,no_debugct_check)--*/
+class CefApp : public virtual CefBase {
+ public:
+ ///
+ // Return the handler for proxy events. If not handler is returned the default
+ // system handler will be used.
+ ///
+ /*--cef()--*/
+ virtual CefRefPtr<CefProxyHandler> GetProxyHandler() { return NULL; }
+};
+
+#endif // CEF_INCLUDE_CEF_APP_H_
View
120 include/cef_application_mac.h
@@ -0,0 +1,120 @@
+// Copyright (c) 2011 Marshall A. Greenblatt. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * 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.
+// * Neither the name of Google Inc. nor the name Chromium Embedded
+// Framework nor the names of its contributors may be used to endorse
+// or promote products derived from this software without specific prior
+// written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND 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 THE COPYRIGHT
+// OWNER 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 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.
+
+#ifndef CEF_INCLUDE_CEF_APPLICATION_MAC_H_
+#define CEF_INCLUDE_CEF_APPLICATION_MAC_H_
+#pragma once
+
+#include "include/cef_base.h"
+
+#if defined(OS_MACOSX) && defined(__OBJC__)
+
+#ifdef BUILDING_CEF_SHARED
+
+// Use the existing CrAppProtocol definition.
+#include "base/message_pump_mac.h"
+
+// Use the existing empty protocol definitions.
+#import "base/mac/cocoa_protocols.h"
+
+#else // BUILDING_CEF_SHARED
+
+#import <AppKit/AppKit.h>
+#import <Cocoa/Cocoa.h>
+
+// Copy of CrAppProtocol definition from base/message_pump_mac.h.
+@protocol CrAppProtocol
+// Must return true if -[NSApplication sendEvent:] is currently on the stack.
+- (BOOL)isHandlingSendEvent;
+@end
+
+// The Mac OS X 10.6 SDK introduced new protocols used for delegates. These
+// protocol defintions were not present in earlier releases of the Mac OS X
+// SDK. In order to support building against the new SDK, which requires
+// delegates to conform to these protocols, and earlier SDKs, which do not
+// define these protocols at all, this file will provide empty protocol
+// definitions when used with earlier SDK versions.
+
+#if !defined(MAC_OS_X_VERSION_10_6) || \
+MAC_OS_X_VERSION_MAX_ALLOWED < MAC_OS_X_VERSION_10_6
+
+#define DEFINE_EMPTY_PROTOCOL(p) \
+@protocol p \
+@end
+
+DEFINE_EMPTY_PROTOCOL(NSAlertDelegate)
+DEFINE_EMPTY_PROTOCOL(NSApplicationDelegate)
+DEFINE_EMPTY_PROTOCOL(NSControlTextEditingDelegate)
+DEFINE_EMPTY_PROTOCOL(NSMatrixDelegate)
+DEFINE_EMPTY_PROTOCOL(NSMenuDelegate)
+DEFINE_EMPTY_PROTOCOL(NSOpenSavePanelDelegate)
+DEFINE_EMPTY_PROTOCOL(NSOutlineViewDataSource)
+DEFINE_EMPTY_PROTOCOL(NSOutlineViewDelegate)
+DEFINE_EMPTY_PROTOCOL(NSSpeechSynthesizerDelegate)
+DEFINE_EMPTY_PROTOCOL(NSSplitViewDelegate)
+DEFINE_EMPTY_PROTOCOL(NSTableViewDataSource)
+DEFINE_EMPTY_PROTOCOL(NSTableViewDelegate)
+DEFINE_EMPTY_PROTOCOL(NSTextFieldDelegate)
+DEFINE_EMPTY_PROTOCOL(NSTextViewDelegate)
+DEFINE_EMPTY_PROTOCOL(NSWindowDelegate)
+
+#undef DEFINE_EMPTY_PROTOCOL
+
+#endif
+
+#endif // BUILDING_CEF_SHARED
+
+// All CEF client applications must subclass NSApplication and implement this
+// protocol.
+@protocol CefAppProtocol<CrAppProtocol>
+- (void)setHandlingSendEvent:(BOOL)handlingSendEvent;
+@end
+
+// Controls the state of |isHandlingSendEvent| in the event loop so that it is
+// reset properly.
+class CefScopedSendingEvent {
+ public:
+ CefScopedSendingEvent()
+ : app_(static_cast<NSApplication<CefAppProtocol>*>(
+ [NSApplication sharedApplication])),
+ handling_([app_ isHandlingSendEvent]) {
+ [app_ setHandlingSendEvent:YES];
+ }
+ ~CefScopedSendingEvent() {
+ [app_ setHandlingSendEvent:handling_];
+ }
+
+ private:
+ NSApplication<CefAppProtocol>* app_;
+ BOOL handling_;
+};
+
+#endif // defined(OS_MACOSX) && defined(__OBJC__)
+
+#endif // CEF_INCLUDE_CEF_APPLICATION_MAC_H_
View
154 include/cef_base.h
@@ -0,0 +1,154 @@
+// Copyright (c) 2011 Marshall A. Greenblatt. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * 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.
+// * Neither the name of Google Inc. nor the name Chromium Embedded
+// Framework nor the names of its contributors may be used to endorse
+// or promote products derived from this software without specific prior
+// written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND 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 THE COPYRIGHT
+// OWNER 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 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.
+//
+// ---------------------------------------------------------------------------
+//
+// The contents of this file must follow a specific format in order to
+// support the CEF translator tool. See the translator.README.txt file in the
+// tools directory for more information.
+//
+
+
+#ifndef CEF_INCLUDE_CEF_BASE_H_
+#define CEF_INCLUDE_CEF_BASE_H_
+#pragma once
+
+#include "include/internal/cef_build.h"
+#include "include/internal/cef_ptr.h"
+#include "include/internal/cef_types_wrappers.h"
+
+// Bring in platform-specific definitions.
+#if defined(OS_WIN)
+#include "include/internal/cef_win.h"
+#elif defined(OS_MACOSX)
+#include "include/internal/cef_mac.h"
+#elif defined(OS_LINUX)
+#include "include/internal/cef_linux.h"
+#endif
+
+///
+// Interface defining the reference count implementation methods. All framework
+// classes must extend the CefBase class.
+///
+class CefBase {
+ public:
+ ///
+ // The AddRef method increments the reference count for the object. It should
+ // be called for every new copy of a pointer to a given object. The resulting
+ // reference count value is returned and should be used for diagnostic/testing
+ // purposes only.
+ ///
+ virtual int AddRef() =0;
+
+ ///
+ // The Release method decrements the reference count for the object. If the
+ // reference count on the object falls to 0, then the object should free
+ // itself from memory. The resulting reference count value is returned and
+ // should be used for diagnostic/testing purposes only.
+ ///
+ virtual int Release() =0;
+
+ ///
+ // Return the current number of references.
+ ///
+ virtual int GetRefCt() =0;
+
+ protected:
+ virtual ~CefBase() {}
+};
+
+
+///
+// Class that implements atomic reference counting.
+///
+class CefRefCount {
+ public:
+ CefRefCount() : refct_(0) {}
+
+ ///
+ // Atomic reference increment.
+ ///
+ int AddRef() {
+ return CefAtomicIncrement(&refct_);
+ }
+
+ ///
+ // Atomic reference decrement. Delete the object when no references remain.
+ ///
+ int Release() {
+ return CefAtomicDecrement(&refct_);
+ }
+
+ ///
+ // Return the current number of references.
+ ///
+ int GetRefCt() { return refct_; }
+
+ private:
+ long refct_; // NOLINT(runtime/int)
+};
+
+///
+// Macro that provides a reference counting implementation for classes extending
+// CefBase.
+///
+#define IMPLEMENT_REFCOUNTING(ClassName) \
+ public: \
+ int AddRef() { return refct_.AddRef(); } \
+ int Release() { \
+ int retval = refct_.Release(); \
+ if (retval == 0) \
+ delete this; \
+ return retval; \
+ } \
+ int GetRefCt() { return refct_.GetRefCt(); } \
+ private: \
+ CefRefCount refct_;
+
+///
+// Macro that provides a locking implementation. Use the Lock() and Unlock()
+// methods to protect a section of code from simultaneous access by multiple
+// threads. The AutoLock class is a helper that will hold the lock while in
+// scope.
+///
+#define IMPLEMENT_LOCKING(ClassName) \
+ public: \
+ class AutoLock { \
+ public: \
+ explicit AutoLock(ClassName* base) : base_(base) { base_->Lock(); } \
+ ~AutoLock() { base_->Unlock(); } \
+ private: \
+ ClassName* base_; \
+ }; \
+ void Lock() { critsec_.Lock(); } \
+ void Unlock() { critsec_.Unlock(); } \
+ private: \
+ CefCriticalSection critsec_;
+
+#endif // CEF_INCLUDE_CEF_BASE_H_
View
335 include/cef_browser.h
@@ -0,0 +1,335 @@
+// Copyright (c) 2011 Marshall A. Greenblatt. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * 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.
+// * Neither the name of Google Inc. nor the name Chromium Embedded
+// Framework nor the names of its contributors may be used to endorse
+// or promote products derived from this software without specific prior
+// written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND 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 THE COPYRIGHT
+// OWNER 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 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.
+//
+// ---------------------------------------------------------------------------
+//
+// The contents of this file must follow a specific format in order to
+// support the CEF translator tool. See the translator.README.txt file in the
+// tools directory for more information.
+//
+
+#ifndef CEF_INCLUDE_CEF_BROWSER_H_
+#define CEF_INCLUDE_CEF_BROWSER_H_
+#pragma once
+
+#include "include/cef_base.h"
+#include <vector>
+
+class CefClient;
+class CefFrame;
+
+///
+// Class used to represent a browser window. The methods of this class may be
+// called on any thread unless otherwise indicated in the comments.
+///
+/*--cef(source=library)--*/
+class CefBrowser : public virtual CefBase {
+ public:
+ typedef cef_key_type_t KeyType;
+ typedef cef_mouse_button_type_t MouseButtonType;
+ typedef cef_paint_element_type_t PaintElementType;
+
+ ///
+ // Create a new browser window using the window parameters specified by
+ // |windowInfo|. All values will be copied internally and the actual window
+ // will be created on the UI thread. This method call will not block.
+ ///
+ /*--cef(optional_param=url)--*/
+ static bool CreateBrowser(CefWindowInfo& windowInfo,
+ CefRefPtr<CefClient> client,
+ const CefString& url,
+ const CefBrowserSettings& settings);
+
+ ///
+ // Create a new browser window using the window parameters specified by
+ // |windowInfo|. This method should only be called on the UI thread.
+ ///
+ /*--cef(optional_param=url)--*/
+ static CefRefPtr<CefBrowser> CreateBrowserSync(CefWindowInfo& windowInfo,
+ CefRefPtr<CefClient> client,
+ const CefString& url,
+ const CefBrowserSettings& settings);
+
+ ///
+ // Call this method before destroying a contained browser window. This method
+ // performs any internal cleanup that may be needed before the browser window
+ // is destroyed.
+ ///
+ /*--cef()--*/
+ virtual void ParentWindowWillClose() =0;
+
+ ///
+ // Closes this browser window.
+ ///
+ /*--cef()--*/
+ virtual void CloseBrowser() =0;
+
+ ///
+ // Returns true if the browser can navigate backwards.
+ ///
+ /*--cef()--*/
+ virtual bool CanGoBack() =0;
+ ///
+ // Navigate backwards.
+ ///
+ /*--cef()--*/
+ virtual void GoBack() =0;
+ ///
+ // Returns true if the browser can navigate forwards.
+ ///
+ /*--cef()--*/
+ virtual bool CanGoForward() =0;
+ ///
+ // Navigate forwards.
+ ///
+ /*--cef()--*/
+ virtual void GoForward() =0;
+ ///
+ // Reload the current page.
+ ///
+ /*--cef()--*/
+ virtual void Reload() =0;
+ ///
+ // Reload the current page ignoring any cached data.
+ ///
+ /*--cef()--*/
+ virtual void ReloadIgnoreCache() =0;
+ ///
+ // Stop loading the page.
+ ///
+ /*--cef()--*/
+ virtual void StopLoad() =0;
+
+ ///
+ // Set focus for the browser window. If |enable| is true focus will be set to
+ // the window. Otherwise, focus will be removed.
+ ///
+ /*--cef()--*/
+ virtual void SetFocus(bool enable) =0;
+
+ ///
+ // Retrieve the window handle for this browser.
+ ///
+ /*--cef()--*/
+ virtual CefWindowHandle GetWindowHandle() =0;
+
+ ///
+ // Retrieve the window handle of the browser that opened this browser. Will
+ // return NULL for non-popup windows. This method can be used in combination
+ // with custom handling of modal windows.
+ ///
+ /*--cef()--*/
+ virtual CefWindowHandle GetOpenerWindowHandle() =0;
+
+ ///
+ // Returns true if the window is a popup window.
+ ///
+ /*--cef()--*/
+ virtual bool IsPopup() =0;
+
+ // Returns true if a document has been loaded in the browser.
+ /*--cef()--*/
+ virtual bool HasDocument() =0;
+
+ ///
+ // Returns the client for this browser.
+ ///
+ /*--cef()--*/
+ virtual CefRefPtr<CefClient> GetClient() =0;
+
+ ///
+ // Returns the main (top-level) frame for the browser window.
+ ///
+ /*--cef()--*/
+ virtual CefRefPtr<CefFrame> GetMainFrame() =0;
+
+ ///
+ // Returns the focused frame for the browser window. This method should only
+ // be called on the UI thread.
+ ///
+ /*--cef()--*/
+ virtual CefRefPtr<CefFrame> GetFocusedFrame() =0;
+
+ ///
+ // Returns the frame with the specified name, or NULL if not found. This
+ // method should only be called on the UI thread.
+ ///
+ /*--cef()--*/
+ virtual CefRefPtr<CefFrame> GetFrame(const CefString& name) =0;
+
+ ///
+ // Returns the names of all existing frames. This method should only be called
+ // on the UI thread.
+ ///
+ /*--cef()--*/
+ virtual void GetFrameNames(std::vector<CefString>& names) =0;
+
+ ///
+ // Search for |searchText|. |identifier| can be used to have multiple searches
+ // running simultaniously. |forward| indicates whether to search forward or
+ // backward within the page. |matchCase| indicates whether the search should
+ // be case-sensitive. |findNext| indicates whether this is the first request
+ // or a follow-up.
+ ///
+ /*--cef()--*/
+ virtual void Find(int identifier, const CefString& searchText,
+ bool forward, bool matchCase, bool findNext) =0;
+
+ ///
+ // Cancel all searches that are currently going on.
+ ///
+ /*--cef()--*/
+ virtual void StopFinding(bool clearSelection) =0;
+
+ ///
+ // Get the zoom level.
+ ///
+ /*--cef()--*/
+ virtual double GetZoomLevel() =0;
+
+ ///
+ // Change the zoom level to the specified value.
+ ///
+ /*--cef()--*/
+ virtual void SetZoomLevel(double zoomLevel) =0;
+
+ ///
+ // Clear the back/forward browsing history.
+ ///
+ /*--cef()--*/
+ virtual void ClearHistory() =0;
+
+ ///
+ // Open developer tools in its own window.
+ ///
+ /*--cef()--*/
+ virtual void ShowDevTools() =0;
+
+ ///
+ // Explicitly close the developer tools window if one exists for this browser
+ // instance.
+ ///
+ /*--cef()--*/
+ virtual void CloseDevTools() =0;
+
+ ///
+ // Returns true if window rendering is disabled.
+ ///
+ /*--cef()--*/
+ virtual bool IsWindowRenderingDisabled() =0;
+
+ ///
+ // Get the size of the specified element. This method should only be called on
+ // the UI thread.
+ ///
+ /*--cef()--*/
+ virtual bool GetSize(PaintElementType type, int& width, int& height) =0;
+
+ ///
+ // Set the size of the specified element. This method is only used when window
+ // rendering is disabled.
+ ///
+ /*--cef()--*/
+ virtual void SetSize(PaintElementType type, int width, int height) =0;
+
+ ///
+ // Returns true if a popup is currently visible. This method should only be
+ // called on the UI thread.
+ ///
+ /*--cef()--*/
+ virtual bool IsPopupVisible() =0;
+
+ ///
+ // Hide the currently visible popup, if any.
+ ///
+ /*--cef()--*/
+ virtual void HidePopup() =0;
+
+ ///
+ // Invalidate the |dirtyRect| region of the view. This method is only used
+ // when window rendering is disabled and will result in a call to
+ // HandlePaint().
+ ///
+ /*--cef()--*/
+ virtual void Invalidate(const CefRect& dirtyRect) =0;
+
+ ///
+ // Get the raw image data contained in the specified element without
+ // performing validation. The specified |width| and |height| dimensions must
+ // match the current element size. On Windows |buffer| must be width*height*4
+ // bytes in size and represents a BGRA image with an upper-left origin. This
+ // method should only be called on the UI thread.
+ ///
+ /*--cef()--*/
+ virtual bool GetImage(PaintElementType type, int width, int height,
+ void* buffer) =0;
+
+ ///
+ // Send a key event to the browser.
+ ///
+ /*--cef()--*/
+ virtual void SendKeyEvent(KeyType type, int key, int modifiers, bool sysChar,
+ bool imeChar) =0;
+
+ ///
+ // Send a mouse click event to the browser. The |x| and |y| coordinates are
+ // relative to the upper-left corner of the view.
+ ///
+ /*--cef()--*/
+ virtual void SendMouseClickEvent(int x, int y, MouseButtonType type,
+ bool mouseUp, int clickCount) =0;
+
+ ///
+ // Send a mouse move event to the browser. The |x| and |y| coordinates are
+ // relative to the upper-left corner of the view.
+ ///
+ /*--cef()--*/
+ virtual void SendMouseMoveEvent(int x, int y, bool mouseLeave) =0;
+
+ ///
+ // Send a mouse wheel event to the browser. The |x| and |y| coordinates are
+ // relative to the upper-left corner of the view.
+ ///
+ /*--cef()--*/
+ virtual void SendMouseWheelEvent(int x, int y, int delta) =0;
+
+ ///
+ // Send a focus event to the browser.
+ ///
+ /*--cef()--*/
+ virtual void SendFocusEvent(bool setFocus) =0;
+
+ ///
+ // Send a capture lost event to the browser.
+ ///
+ /*--cef()--*/
+ virtual void SendCaptureLostEvent() =0;
+};
+
+#endif // CEF_INCLUDE_CEF_BROWSER_H_
View
176 include/cef_client.h
@@ -0,0 +1,176 @@
+// Copyright (c) 2011 Marshall A. Greenblatt. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * 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.
+// * Neither the name of Google Inc. nor the name Chromium Embedded
+// Framework nor the names of its contributors may be used to endorse
+// or promote products derived from this software without specific prior
+// written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND 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 THE COPYRIGHT
+// OWNER 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 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.
+//
+// ---------------------------------------------------------------------------
+//
+// The contents of this file must follow a specific format in order to
+// support the CEF translator tool. See the translator.README.txt file in the
+// tools directory for more information.
+//
+
+#ifndef CEF_INCLUDE_CEF_CLIENT_H_
+#define CEF_INCLUDE_CEF_CLIENT_H_
+#pragma once
+
+#include "include/cef_base.h"
+#include "include/cef_display_handler.h"
+#include "include/cef_drag_handler.h"
+#include "include/cef_find_handler.h"
+#include "include/cef_focus_handler.h"
+#include "include/cef_jsdialog_handler.h"
+#include "include/cef_keyboard_handler.h"
+#include "include/cef_life_span_handler.h"
+#include "include/cef_load_handler.h"
+#include "include/cef_menu_handler.h"
+#include "include/cef_permission_handler.h"
+#include "include/cef_print_handler.h"
+#include "include/cef_render_handler.h"
+#include "include/cef_request_handler.h"
+#include "include/cef_v8context_handler.h"
+
+///
+// Implement this interface to provide handler implementations.
+///
+/*--cef(source=client,no_debugct_check)--*/
+class CefClient : public virtual CefBase {
+ public:
+ ///
+ // Return the handler for browser life span events.
+ ///
+ /*--cef()--*/
+ virtual CefRefPtr<CefLifeSpanHandler> GetLifeSpanHandler() {
+ return NULL;
+ }
+
+ ///
+ // Return the handler for browser load status events.
+ ///
+ /*--cef()--*/
+ virtual CefRefPtr<CefLoadHandler> GetLoadHandler() {
+ return NULL;
+ }
+
+ ///
+ // Return the handler for browser request events.
+ ///
+ /*--cef()--*/
+ virtual CefRefPtr<CefRequestHandler> GetRequestHandler() {
+ return NULL;
+ }
+
+ ///
+ // Return the handler for browser display state events.
+ ///
+ /*--cef()--*/
+ virtual CefRefPtr<CefDisplayHandler> GetDisplayHandler() {
+ return NULL;
+ }
+
+ ///
+ // Return the handler for focus events.
+ ///
+ /*--cef()--*/
+ virtual CefRefPtr<CefFocusHandler> GetFocusHandler() {
+ return NULL;
+ }
+
+ ///
+ // Return the handler for keyboard events.
+ ///
+ /*--cef()--*/
+ virtual CefRefPtr<CefKeyboardHandler> GetKeyboardHandler() {
+ return NULL;
+ }
+
+ ///
+ // Return the handler for context menu events.
+ ///
+ /*--cef()--*/
+ virtual CefRefPtr<CefMenuHandler> GetMenuHandler() {
+ return NULL;
+ }
+
+ ///
+ // Return the handler for browser permission events.
+ ///
+ /*--cef()--*/
+ virtual CefRefPtr<CefPermissionHandler> GetPermissionHandler() {
+ return NULL;
+ }
+
+ ///
+ // Return the handler for printing events.
+ ///
+ /*--cef()--*/
+ virtual CefRefPtr<CefPrintHandler> GetPrintHandler() {
+ return NULL;
+ }
+
+ ///
+ // Return the handler for find result events.
+ ///
+ /*--cef()--*/
+ virtual CefRefPtr<CefFindHandler> GetFindHandler() {
+ return NULL;
+ }
+
+ ///
+ // Return the handler for JavaScript dialog events.
+ ///
+ /*--cef()--*/
+ virtual CefRefPtr<CefJSDialogHandler> GetJSDialogHandler() {
+ return NULL;
+ }
+
+ ///
+ // Return the handler for V8 context events.
+ ///
+ /*--cef()--*/
+ virtual CefRefPtr<CefV8ContextHandler> GetV8ContextHandler() {
+ return NULL;
+ }
+
+ ///
+ // Return the handler for off-screen rendering events.
+ ///
+ /*--cef()--*/
+ virtual CefRefPtr<CefRenderHandler> GetRenderHandler() {
+ return NULL;
+ }
+
+ ///
+ // Return the handler for drag events.
+ ///
+ /*--cef()--*/
+ virtual CefRefPtr<CefDragHandler> GetDragHandler() {
+ return NULL;
+ }
+};
+
+#endif // CEF_INCLUDE_CEF_CLIENT_H_
View
160 include/cef_command_line.h
@@ -0,0 +1,160 @@
+// Copyright (c) 2011 Marshall A. Greenblatt. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * 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.
+// * Neither the name of Google Inc. nor the name Chromium Embedded
+// Framework nor the names of its contributors may be used to endorse
+// or promote products derived from this software without specific prior
+// written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND 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 THE COPYRIGHT
+// OWNER 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 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.
+//
+// ---------------------------------------------------------------------------
+//
+// The contents of this file must follow a specific format in order to
+// support the CEF translator tool. See the translator.README.txt file in the
+// tools directory for more information.
+//
+
+#ifndef CEF_INCLUDE_CEF_COMMAND_LINE_H_
+#define CEF_INCLUDE_CEF_COMMAND_LINE_H_
+#pragma once
+
+#include "include/cef_base.h"
+#include <map>
+#include <vector>
+
+///
+// Class used to create and/or parse command line arguments. Arguments with
+// '--', '-' and, on Windows, '/' prefixes are considered switches. Switches
+// will always precede any arguments without switch prefixes. Switches can
+// optionally have a value specified using the '=' delimiter (e.g.
+// "-switch=value"). An argument of "--" will terminate switch parsing with all
+// subsequent tokens, regardless of prefix, being interpreted as non-switch
+// arguments. Switch names are considered case-insensitive. This class can be
+// used before CefInitialize() is called.
+///
+/*--cef(source=library,no_debugct_check)--*/
+class CefCommandLine : public virtual CefBase {
+ public:
+ typedef std::vector<CefString> ArgumentList;
+ typedef std::map<CefString, CefString> SwitchMap;
+
+ ///
+ // Create a new CefCommandLine instance.
+ ///
+ /*--cef(revision_check)--*/
+ static CefRefPtr<CefCommandLine> CreateCommandLine();
+
+ ///
+ // Initialize the command line with the specified |argc| and |argv| values.
+ // The first argument must be the name of the program. This method is only
+ // supported on non-Windows platforms.
+ ///
+ /*--cef()--*/
+ virtual void InitFromArgv(int argc, const char* const* argv) =0;
+
+ ///
+ // Initialize the command line with the string returned by calling
+ // GetCommandLineW(). This method is only supported on Windows.
+ ///
+ /*--cef()--*/
+ virtual void InitFromString(const CefString& command_line) =0;
+
+ ///
+ // Constructs and returns the represented command line string. Use this method
+ // cautiously because quoting behavior is unclear.
+ ///
+ /*--cef()--*/
+ virtual CefString GetCommandLineString() =0;
+
+ ///
+ // Get the program part of the command line string (the first item).
+ ///
+ /*--cef()--*/
+ virtual CefString GetProgram() =0;
+
+ ///
+ // Set the program part of the command line string (the first item).
+ ///
+ /*--cef()--*/
+ virtual void SetProgram(const CefString& program) =0;
+
+ ///
+ // Returns true if the command line has switches.
+ ///
+ /*--cef()--*/
+ virtual bool HasSwitches() =0;
+
+ ///
+ // Returns true if the command line contains the given switch.
+ ///
+ /*--cef()--*/
+ virtual bool HasSwitch(const CefString& name) =0;
+
+ ///
+ // Returns the value associated with the given switch. If the switch has no
+ // value or isn't present this method returns the empty string.
+ ///
+ /*--cef()--*/
+ virtual CefString GetSwitchValue(const CefString& name) =0;
+
+ ///
+ // Returns the map of switch names and values. If a switch has no value an
+ // empty string is returned.
+ ///
+ /*--cef()--*/
+ virtual void GetSwitches(SwitchMap& switches) =0;
+
+ ///
+ // Add a switch to the end of the command line. If the switch has no value
+ // pass an empty value string.
+ ///
+ /*--cef()--*/
+ virtual void AppendSwitch(const CefString& name) =0;
+
+ ///
+ // Add a switch with the specified value to the end of the command line.
+ ///
+ /*--cef()--*/
+ virtual void AppendSwitchWithValue(const CefString& name,
+ const CefString& value) =0;
+
+ ///
+ // True if there are remaining command line arguments.
+ ///
+ /*--cef()--*/
+ virtual bool HasArguments() =0;
+
+ ///
+ // Get the remaining command line arguments.
+ ///
+ /*--cef()--*/
+ virtual void GetArguments(ArgumentList& arguments) =0;
+
+ ///
+ // Add an argument to the end of the command line.
+ ///
+ /*--cef()--*/
+ virtual void AppendArgument(const CefString& argument) =0;
+};
+
+#endif // CEF_INCLUDE_CEF_COMMAND_LINE_H_
View
69 include/cef_content_filter.h
@@ -0,0 +1,69 @@
+// Copyright (c) 2011 Marshall A. Greenblatt. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * 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.
+// * Neither the name of Google Inc. nor the name Chromium Embedded
+// Framework nor the names of its contributors may be used to endorse
+// or promote products derived from this software without specific prior
+// written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND 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 THE COPYRIGHT
+// OWNER 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 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.
+//
+// ---------------------------------------------------------------------------
+//
+// The contents of this file must follow a specific format in order to
+// support the CEF translator tool. See the translator.README.txt file in the
+// tools directory for more information.
+//
+
+#ifndef CEF_INCLUDE_CEF_CONTENT_FILTER_H_
+#define CEF_INCLUDE_CEF_CONTENT_FILTER_H_
+#pragma once
+
+#include "include/cef_base.h"
+
+class CefStreamReader;
+
+///
+// Interface to implement for filtering response content. The methods of this
+// class will always be called on the UI thread.
+///
+/*--cef(source=client)--*/
+class CefContentFilter : public virtual CefBase {
+ public:
+ ///
+ // Set |substitute_data| to the replacement for the data in |data| if data
+ // should be modified.
+ ///
+ /*--cef()--*/
+ virtual void ProcessData(const void* data, int data_size,
+ CefRefPtr<CefStreamReader>& substitute_data) {}
+
+ ///
+ // Called when there is no more data to be processed. It is expected that
+ // whatever data was retained in the last ProcessData() call, it should be
+ // returned now by setting |remainder| if appropriate.
+ ///
+ /*--cef()--*/
+ virtual void Drain(CefRefPtr<CefStreamReader>& remainder) {}
+};
+
+#endif // CEF_INCLUDE_CEF_CONTENT_FILTER_H_
View
113 include/cef_cookie.h
@@ -0,0 +1,113 @@
+// Copyright (c) 2011 Marshall A. Greenblatt. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * 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.
+// * Neither the name of Google Inc. nor the name Chromium Embedded
+// Framework nor the names of its contributors may be used to endorse
+// or promote products derived from this software without specific prior
+// written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND 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 THE COPYRIGHT
+// OWNER 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 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.
+//
+// ---------------------------------------------------------------------------
+//
+// The contents of this file must follow a specific format in order to
+// support the CEF translator tool. See the translator.README.txt file in the
+// tools directory for more information.
+//
+
+#ifndef CEF_INCLUDE_CEF_COOKIE_H_
+#define CEF_INCLUDE_CEF_COOKIE_H_
+#pragma once
+
+#include "include/cef_base.h"
+
+class CefCookieVisitor;
+
+///
+// Visit all cookies. The returned cookies are ordered by longest path, then by
+// earliest creation date. Returns false if cookies cannot be accessed.
+///
+/*--cef()--*/
+bool CefVisitAllCookies(CefRefPtr<CefCookieVisitor> visitor);
+
+///
+// Visit a subset of cookies. The results are filtered by the given url scheme,
+// host, domain and path. If |includeHttpOnly| is true HTTP-only cookies will
+// also be included in the results. The returned cookies are ordered by longest
+// path, then by earliest creation date. Returns false if cookies cannot be
+// accessed.
+///
+/*--cef()--*/
+bool CefVisitUrlCookies(const CefString& url, bool includeHttpOnly,
+ CefRefPtr<CefCookieVisitor> visitor);
+
+///
+// Sets a cookie given a valid URL and explicit user-provided cookie attributes.
+// This function expects each attribute to be well-formed. It will check for
+// disallowed characters (e.g. the ';' character is disallowed within the cookie
+// value attribute) and will return false without setting the cookie if such
+// characters are found. This method must be called on the IO thread.
+///
+/*--cef()--*/
+bool CefSetCookie(const CefString& url, const CefCookie& cookie);
+
+///
+// Delete all cookies that match the specified parameters. If both |url| and
+// |cookie_name| are specified all host and domain cookies matching both values
+// will be deleted. If only |url| is specified all host cookies (but not domain
+// cookies) irrespective of path will be deleted. If |url| is empty all cookies
+// for all hosts and domains will be deleted. Returns false if a non-empty
+// invalid URL is specified or if cookies cannot be accessed. This method must
+// be called on the IO thread.
+///
+/*--cef(optional_param=url,optional_param=cookie_name)--*/
+bool CefDeleteCookies(const CefString& url, const CefString& cookie_name);
+
+///
+// Sets the directory path that will be used for storing cookie data. If |path|
+// is empty data will be stored in memory only. By default the cookie path is
+// the same as the cache path. Returns false if cookies cannot be accessed.
+///
+/*--cef(optional_param=path)--*/
+bool CefSetCookiePath(const CefString& path);
+
+
+///
+// Interface to implement for visiting cookie values. The methods of this class
+// will always be called on the IO thread.
+///
+/*--cef(source=client)--*/
+class CefCookieVisitor : public virtual CefBase {
+ public:
+ ///
+ // Method that will be called once for each cookie. |count| is the 0-based
+ // index for the current cookie. |total| is the total number of cookies.
+ // Set |deleteCookie| to true to delete the cookie currently being visited.
+ // Return false to stop visiting cookies. This method may never be called if
+ // no cookies are found.
+ ///
+ /*--cef()--*/
+ virtual bool Visit(const CefCookie& cookie, int count, int total,
+ bool& deleteCookie) =0;
+};
+
+#endif // CEF_INCLUDE_CEF_COOKIE_H_
View
118 include/cef_display_handler.h
@@ -0,0 +1,118 @@
+// Copyright (c) 2011 Marshall A. Greenblatt. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * 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.
+// * Neither the name of Google Inc. nor the name Chromium Embedded
+// Framework nor the names of its contributors may be used to endorse
+// or promote products derived from this software without specific prior
+// written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND 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 THE COPYRIGHT
+// OWNER 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 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.
+//
+// ---------------------------------------------------------------------------
+//
+// The contents of this file must follow a specific format in order to
+// support the CEF translator tool. See the translator.README.txt file in the
+// tools directory for more information.
+//
+
+#ifndef CEF_INCLUDE_CEF_DISPLAY_HANDLER_H_
+#define CEF_INCLUDE_CEF_DISPLAY_HANDLER_H_
+#pragma once
+
+#include "include/cef_base.h"
+
+class CefBrowser;
+class CefFrame;
+
+///
+// Implement this interface to handle events related to browser display state.
+// The methods of this class will be called on the UI thread.
+///
+/*--cef(source=client)--*/
+class CefDisplayHandler : public virtual CefBase {
+ public:
+ typedef cef_handler_statustype_t StatusType;
+
+ ///
+ // Called when the navigation state has changed.
+ ///
+ /*--cef()--*/
+ virtual void OnNavStateChange(CefRefPtr<CefBrowser> browser,
+ bool canGoBack,
+ bool canGoForward) {}
+
+ ///
+ // Called when a frame's address has changed.
+ ///
+ /*--cef()--*/
+ virtual void OnAddressChange(CefRefPtr<CefBrowser> browser,
+ CefRefPtr<CefFrame> frame,
+ const CefString& url) {}
+
+ ///
+ // Called when the size of the content area has changed.
+ ///
+ /*--cef()--*/
+ virtual void OnContentsSizeChange(CefRefPtr<CefBrowser> browser,
+ CefRefPtr<CefFrame> frame,
+ int width,
+ int height) {}
+
+ ///
+ // Called when the page title changes.
+ ///
+ /*--cef(optional_param=title)--*/
+ virtual void OnTitleChange(CefRefPtr<CefBrowser> browser,
+ const CefString& title) {}
+
+ ///
+ // Called when the browser is about to display a tooltip. |text| contains the
+ // text that will be displayed in the tooltip. To handle the display of the
+ // tooltip yourself return true. Otherwise, you can optionally modify |text|
+ // and then return false to allow the browser to display the tooltip.
+ ///
+ /*--cef(optional_param=text)--*/
+ virtual bool OnTooltip(CefRefPtr<CefBrowser> browser,
+ CefString& text) { return false; }
+
+ ///
+ // Called when the browser receives a status message. |text| contains the text
+ // that will be displayed in the status message and |type| indicates the
+ // status message type.
+ ///
+ /*--cef(optional_param=value)--*/
+ virtual void OnStatusMessage(CefRefPtr<CefBrowser> browser,
+ const CefString& value,
+ StatusType type) {}
+
+ ///
+ // Called to display a console message. Return true to stop the message from
+ // being output to the console.
+ ///
+ /*--cef(optional_param=message,optional_param=source)--*/
+ virtual bool OnConsoleMessage(CefRefPtr<CefBrowser> browser,
+ const CefString& message,
+ const CefString& source,
+ int line) { return false; }
+};
+
+#endif // CEF_INCLUDE_CEF_DISPLAY_HANDLER_H_
View
429 include/cef_dom.h
@@ -0,0 +1,429 @@
+// Copyright (c) 2011 Marshall A. Greenblatt. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * 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.
+// * Neither the name of Google Inc. nor the name Chromium Embedded
+// Framework nor the names of its contributors may be used to endorse
+// or promote products derived from this software without specific prior
+// written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND 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 THE COPYRIGHT
+// OWNER 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 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.
+//
+// ---------------------------------------------------------------------------
+//
+// The contents of this file must follow a specific format in order to
+// support the CEF translator tool. See the translator.README.txt file in the
+// tools directory for more information.
+//
+
+#ifndef CEF_INCLUDE_CEF_DOM_H_
+#define CEF_INCLUDE_CEF_DOM_H_
+#pragma once
+
+#include "include/cef_base.h"
+#include <map>
+
+class CefDOMDocument;
+class CefDOMEventListener;
+class CefDOMNode;
+
+///
+// Interface to implement for visiting the DOM. The methods of this class will
+// be called on the UI thread.
+///
+/*--cef(source=client)--*/
+class CefDOMVisitor : public virtual CefBase {
+ public:
+ ///
+ // Method executed for visiting the DOM. The document object passed to this
+ // method represents a snapshot of the DOM at the time this method is
+ // executed. DOM objects are only valid for the scope of this method. Do not
+ // keep references to or attempt to access any DOM objects outside the scope
+ // of this method.
+ ///
+ /*--cef()--*/
+ virtual void Visit(CefRefPtr<CefDOMDocument> document) =0;
+};
+
+
+///
+// Class used to represent a DOM document. The methods of this class should only
+// be called on the UI thread.
+///
+/*--cef(source=library)--*/
+class CefDOMDocument : public virtual CefBase {
+ public:
+ typedef cef_dom_document_type_t Type;
+
+ ///
+ // Returns the document type.
+ ///
+ /*--cef(default_retval=DOM_DOCUMENT_TYPE_UNKNOWN)--*/
+ virtual Type GetType() =0;
+
+ ///
+ // Returns the root document node.
+ ///
+ /*--cef()--*/
+ virtual CefRefPtr<CefDOMNode> GetDocument() =0;
+
+ ///
+ // Returns the BODY node of an HTML document.
+ ///
+ /*--cef()--*/
+ virtual CefRefPtr<CefDOMNode> GetBody() =0;
+
+ ///
+ // Returns the HEAD node of an HTML document.
+ ///
+ /*--cef()--*/
+ virtual CefRefPtr<CefDOMNode> GetHead() =0;
+
+ ///
+ // Returns the title of an HTML document.
+ ///
+ /*--cef()--*/
+ virtual CefString GetTitle() =0;
+
+ ///
+ // Returns the document element with the specified ID value.
+ ///
+ /*--cef()--*/
+ virtual CefRefPtr<CefDOMNode> GetElementById(const CefString& id) =0;
+
+ ///
+ // Returns the node that currently has keyboard focus.
+ ///
+ /*--cef()--*/
+ virtual CefRefPtr<CefDOMNode> GetFocusedNode() =0;
+
+ ///
+ // Returns true if a portion of the document is selected.
+ ///
+ /*--cef()--*/
+ virtual bool HasSelection() =0;
+
+ ///
+ // Returns the selection start node.
+ ///
+ /*--cef()--*/
+ virtual CefRefPtr<CefDOMNode> GetSelectionStartNode() =0;
+
+ ///
+ // Returns the selection offset within the start node.
+ ///
+ /*--cef()--*/
+ virtual int GetSelectionStartOffset() =0;
+
+ ///
+ // Returns the selection end node.
+ ///
+ /*--cef()--*/
+ virtual CefRefPtr<CefDOMNode> GetSelectionEndNode() =0;
+
+ ///
+ // Returns the selection offset within the end node.
+ ///
+ /*--cef()--*/
+ virtual int GetSelectionEndOffset() =0;
+
+ ///
+ // Returns the contents of this selection as markup.
+ ///
+ /*--cef()--*/
+ virtual CefString GetSelectionAsMarkup() =0;
+
+ ///
+ // Returns the contents of this selection as text.
+ ///
+ /*--cef()--*/
+ virtual CefString GetSelectionAsText() =0;
+
+ ///
+ // Returns the base URL for the document.
+ ///
+ /*--cef()--*/
+ virtual CefString GetBaseURL() =0;
+
+ ///
+ // Returns a complete URL based on the document base URL and the specified
+ // partial URL.
+ ///
+ /*--cef()--*/
+ virtual CefString GetCompleteURL(const CefString& partialURL) =0;
+};
+
+
+///
+// Class used to represent a DOM node. The methods of this class should only be
+// called on the UI thread.
+///
+/*--cef(source=library)--*/
+class CefDOMNode : public virtual CefBase {
+ public:
+ typedef std::map<CefString, CefString> AttributeMap;
+ typedef cef_dom_node_type_t Type;
+
+ ///
+ // Returns the type for this node.
+ ///
+ /*--cef(default_retval=DOM_NODE_TYPE_UNSUPPORTED)--*/
+ virtual Type GetType() =0;
+
+ ///
+ // Returns true if this is a text node.
+ ///
+ /*--cef()--*/
+ virtual bool IsText() =0;
+
+ ///
+ // Returns true if this is an element node.
+ ///
+ /*--cef()--*/
+ virtual bool IsElement() =0;
+
+ ///
+ // Returns true if this is a form control element node.
+ ///
+ /*--cef()--*/
+ virtual bool IsFormControlElement() =0;
+
+ ///
+ // Returns the type of this form control element node.
+ ///
+ /*--cef()--*/
+ virtual CefString GetFormControlElementType() =0;
+
+ ///
+ // Returns true if this object is pointing to the same handle as |that|
+ // object.
+ ///
+ /*--cef()--*/
+ virtual bool IsSame(CefRefPtr<CefDOMNode> that) =0;
+
+ ///
+ // Returns the name of this node.
+ ///
+ /*--cef()--*/
+ virtual CefString GetName() =0;
+
+ ///
+ // Returns the value of this node.
+ ///
+ /*--cef()--*/
+ virtual CefString GetValue() =0;
+
+ ///
+ // Set the value of this node. Returns true on success.
+ ///
+ /*--cef()--*/
+ virtual bool SetValue(const CefString& value) =0;
+
+ ///
+ // Returns the contents of this node as markup.
+ ///
+ /*--cef()--*/
+ virtual CefString GetAsMarkup() =0;
+
+ ///
+ // Returns the document associated with this node.
+ ///
+ /*--cef()--*/
+ virtual CefRefPtr<CefDOMDocument> GetDocument() =0;
+
+ ///
+ // Returns the parent node.
+ ///
+ /*--cef()--*/
+ virtual CefRefPtr<CefDOMNode> GetParent() =0;
+
+ ///
+ // Returns the previous sibling node.
+ ///
+ /*--cef()--*/
+ virtual CefRefPtr<CefDOMNode> GetPreviousSibling() =0;
+
+ ///
+ // Returns the next sibling node.
+ ///
+ /*--cef()--*/
+ virtual CefRefPtr<CefDOMNode> GetNextSibling() =0;
+
+ ///
+ // Returns true if this node has child nodes.
+ ///
+ /*--cef()--*/
+ virtual bool HasChildren() =0;
+
+ ///
+ // Return the first child node.
+ ///
+ /*--cef()--*/
+ virtual CefRefPtr<CefDOMNode> GetFirstChild() =0;
+
+ ///
+ // Returns the last child node.
+ ///
+ /*--cef()--*/
+ virtual CefRefPtr<CefDOMNode> GetLastChild() =0;
+
+ ///
+ // Add an event listener to this node for the specified event type. If
+ // |useCapture| is true then this listener will be considered a capturing
+ // listener. Capturing listeners will recieve all events of the specified
+ // type before the events are dispatched to any other event targets beneath
+ // the current node in the tree. Events which are bubbling upwards through
+ // the tree will not trigger a capturing listener. Separate calls to this
+ // method can be used to register the same listener with and without capture.
+ // See WebCore/dom/EventNames.h for the list of supported event types.
+ ///
+ /*--cef()--*/
+ virtual void AddEventListener(const CefString& eventType,
+ CefRefPtr<CefDOMEventListener> listener,
+ bool useCapture) =0;
+
+
+ // The following methods are valid only for element nodes.
+
+ ///
+ // Returns the tag name of this element.
+ ///
+ /*--cef()--*/
+ virtual CefString GetElementTagName() =0;
+
+ ///
+ // Returns true if this element has attributes.
+ ///
+ /*--cef()--*/
+ virtual bool HasElementAttributes() =0;
+
+ ///
+ // Returns true if this element has an attribute named |attrName|.
+ ///
+ /*--cef()--*/
+ virtual bool HasElementAttribute(const CefString& attrName) =0;
+
+ ///
+ // Returns the element attribute named |attrName|.
+ ///
+ /*--cef()--*/
+ virtual CefString GetElementAttribute(const CefString& attrName) =0;
+
+ ///
+ // Returns a map of all element attributes.
+ ///
+ /*--cef()--*/
+ virtual void GetElementAttributes(AttributeMap& attrMap) =0;
+
+ ///
+ // Set the value for the element attribute named |attrName|. Returns true on
+ // success.
+ ///
+ /*--cef()--*/
+ virtual bool SetElementAttribute(const CefString& attrName,
+ const CefString& value) =0;
+
+ ///
+ // Returns the inner text of the element.
+ ///
+ /*--cef()--*/
+ virtual CefString GetElementInnerText() =0;
+};
+
+
+///
+// Class used to represent a DOM event. The methods of this class should only
+// be called on the UI thread.
+///
+/*--cef(source=library)--*/
+class CefDOMEvent : public virtual CefBase {
+ public:
+ typedef cef_dom_event_category_t Category;
+ typedef cef_dom_event_phase_t Phase;
+
+ ///
+ // Returns the event type.
+ ///
+ /*--cef()--*/
+ virtual CefString GetType() =0;
+
+ ///
+ // Returns the event category.
+ ///
+ /*--cef(default_retval=DOM_EVENT_CATEGORY_UNKNOWN)--*/
+ virtual Category GetCategory() =0;
+
+ ///
+ // Returns the event processing phase.
+ ///
+ /*--cef(default_retval=DOM_EVENT_PHASE_UNKNOWN)--*/
+ virtual Phase GetPhase() =0;
+
+ ///
+ // Returns true if the event can bubble up the tree.
+ ///
+ /*--cef()--*/
+ virtual bool CanBubble() =0;
+
+ ///
+ // Returns true if the event can be canceled.
+ ///
+ /*--cef()--*/
+ virtual bool CanCancel() =0;
+
+ ///
+ // Returns the document associated with this event.
+ ///
+ /*--cef()--*/
+ virtual CefRefPtr<CefDOMDocument> GetDocument() =0;
+
+ ///
+ // Returns the target of the event.
+ ///
+ /*--cef()--*/
+ virtual CefRefPtr<CefDOMNode> GetTarget() =0;
+
+ ///
+ // Returns the current target of the event.
+ ///
+ /*--cef()--*/
+ virtual CefRefPtr<CefDOMNode> GetCurrentTarget() =0;
+};
+
+
+///
+// Interface to implement for handling DOM events. The methods of this class
+// will be called on the UI thread.
+///
+/*--cef(source=client)--*/
+class CefDOMEventListener : public virtual CefBase {
+ public:
+ ///
+ // Called when an event is received. The event object passed to this method
+ // contains a snapshot of the DOM at the time this method is executed. DOM
+ // objects are only valid for the scope of this method. Do not keep references
+ // to or attempt to access any DOM objects outside the scope of this method.
+ ///
+ /*--cef()--*/
+ virtual void HandleEvent(CefRefPtr<CefDOMEvent> event) =0;
+};
+
+#endif // CEF_INCLUDE_CEF_DOM_H_
View
65 include/cef_download_handler.h
@@ -0,0 +1,65 @@
+// Copyright (c) 2011 Marshall A. Greenblatt. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * 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.
+// * Neither the name of Google Inc. nor the name Chromium Embedded
+// Framework nor the names of its contributors may be used to endorse
+// or promote products derived from this software without specific prior
+// written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND 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 THE COPYRIGHT
+// OWNER 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 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.
+//
+// ---------------------------------------------------------------------------
+//
+// The contents of this file must follow a specific format in order to
+// support the CEF translator tool. See the translator.README.txt file in the
+// tools directory for more information.
+//
+
+#ifndef CEF_INCLUDE_CEF_DOWNLOAD_HANDLER_H_
+#define CEF_INCLUDE_CEF_DOWNLOAD_HANDLER_H_
+#pragma once
+
+#include "include/cef_base.h"
+
+///
+// Class used to handle file downloads. The methods of this class will always be
+// called on the UI thread.
+///
+/*--cef(source=client)--*/
+class CefDownloadHandler : public virtual CefBase {
+ public:
+ ///
+ // A portion of the file contents have been received. This method will be
+ // called multiple times until the download is complete. Return |true| to
+ // continue receiving data and |false| to cancel.
+ ///
+ /*--cef()--*/
+ virtual bool ReceivedData(void* data, int data_size) =0;
+
+ ///
+ // The download is complete.
+ ///
+ /*--cef()--*/
+ virtual void Complete() =0;
+};
+
+#endif // CEF_INCLUDE_CEF_DOWNLOAD_HANDLER_H_
View
126 include/cef_drag_data.h
@@ -0,0 +1,126 @@
+// Copyright (c) 2011 Marshall A. Greenblatt. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * 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.
+// * Neither the name of Google Inc. nor the name Chromium Embedded
+// Framework nor the names of its contributors may be used to endorse
+// or promote products derived from this software without specific prior
+// written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND 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 THE COPYRIGHT
+// OWNER 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 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.
+//
+// ---------------------------------------------------------------------------
+//
+// The contents of this file must follow a specific format in order to
+// support the CEF translator tool. See the translator.README.txt file in the
+// tools directory for more information.
+//
+
+#ifndef CEF_INCLUDE_CEF_DRAG_DATA_H_
+#define CEF_INCLUDE_CEF_DRAG_DATA_H_
+#pragma once
+
+#include "include/cef_base.h"
+#include <vector>
+
+///
+// Class used to represent drag data. The methods of this class may be called
+// on any thread.
+///
+/*--cef(source=library)--*/
+class CefDragData : public virtual CefBase {
+ public:
+ ///
+ // Returns true if the drag data is a link.
+ ///
+ /*--cef()--*/
+ virtual bool IsLink() =0;
+
+ ///
+ // Returns true if the drag data is a text or html fragment.
+ ///
+ /*--cef()--*/
+ virtual bool IsFragment() =0;
+
+ ///
+ // Returns true if the drag data is a file.
+ ///
+ /*--cef()--*/
+ virtual bool IsFile() =0;
+
+ ///
+ // Return the link URL that is being dragged.
+ ///
+ /*--cef()--*/
+ virtual CefString GetLinkURL() =0;
+
+ ///
+ // Return the title associated with the link being dragged.
+ ///