summaryrefslogtreecommitdiffstats
path: root/content
diff options
context:
space:
mode:
authordpranke@chromium.org <dpranke@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-09-13 22:11:57 +0000
committerdpranke@chromium.org <dpranke@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-09-13 22:11:57 +0000
commit8d128d6b9ef0096c874fafb9f80cbb5a03c98f4c (patch)
tree6d15da0c38831ea9180d3d90caa66d5adc7cb000 /content
parent8ea5d4bd1f750572bec6b6b73732bba147f0be42 (diff)
downloadchromium_src-8d128d6b9ef0096c874fafb9f80cbb5a03c98f4c.zip
chromium_src-8d128d6b9ef0096c874fafb9f80cbb5a03c98f4c.tar.gz
chromium_src-8d128d6b9ef0096c874fafb9f80cbb5a03c98f4c.tar.bz2
Annotate all of the functions in content that need to be exported, in preparation for creating a content shared library.
R=darin@chromium.org, jam@chromium.org, willchan@chromium.org BUG=90442 TEST=everything still compiles Review URL: http://codereview.chromium.org/7800015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@100975 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content')
-rw-r--r--content/app/content_main.h13
-rw-r--r--content/browser/accessibility/browser_accessibility_manager.h3
-rw-r--r--content/browser/accessibility/browser_accessibility_state.h5
-rw-r--r--content/browser/appcache/chrome_appcache_service.h13
-rw-r--r--content/browser/browser_child_process_host.h10
-rw-r--r--content/browser/browser_message_filter.h6
-rw-r--r--content/browser/browser_thread.h3
-rw-r--r--content/browser/browser_url_handler.h3
-rw-r--r--content/browser/browsing_instance.h4
-rw-r--r--content/browser/cancelable_request.h5
-rw-r--r--content/browser/cert_store.h3
-rw-r--r--content/browser/child_process_launcher.h5
-rw-r--r--content/browser/child_process_security_policy.h3
-rw-r--r--content/browser/chrome_blob_storage_context.h5
-rw-r--r--content/browser/debugger/devtools_agent_host.h4
-rw-r--r--content/browser/debugger/devtools_client_host.h5
-rw-r--r--content/browser/debugger/devtools_http_protocol_handler.h5
-rw-r--r--content/browser/debugger/devtools_manager.h6
-rw-r--r--content/browser/disposition_utils.h11
-rw-r--r--content/browser/download/base_file.h3
-rw-r--r--content/browser/download/download_file.h3
-rw-r--r--content/browser/download/download_file_manager.h3
-rw-r--r--content/browser/download/download_item.h5
-rw-r--r--content/browser/download/download_manager.h7
-rw-r--r--content/browser/download/download_persistent_store_info.h3
-rw-r--r--content/browser/download/download_state_info.h3
-rw-r--r--content/browser/download/download_stats.h3
-rw-r--r--content/browser/download/download_status_updater.h3
-rw-r--r--content/browser/download/download_status_updater_delegate.h5
-rw-r--r--content/browser/download/drag_download_file.h10
-rw-r--r--content/browser/download/drag_download_util.h9
-rw-r--r--content/browser/download/mhtml_generation_manager.h3
-rw-r--r--content/browser/download/save_file_manager.h3
-rw-r--r--content/browser/download/save_package.h10
-rw-r--r--content/browser/file_system/browser_file_system_helper.h4
-rw-r--r--content/browser/font_list_async.h6
-rw-r--r--content/browser/geolocation/access_token_store.h5
-rw-r--r--content/browser/geolocation/geolocation_permission_context.h3
-rw-r--r--content/browser/geolocation/geolocation_provider.h5
-rw-r--r--content/browser/gpu/gpu_blacklist.h3
-rw-r--r--content/browser/gpu/gpu_data_manager.h3
-rw-r--r--content/browser/gpu/gpu_process_host.h9
-rw-r--r--content/browser/gpu/gpu_process_host_ui_shim.h3
-rw-r--r--content/browser/host_zoom_map.h5
-rw-r--r--content/browser/in_process_webkit/dom_storage_context.h3
-rw-r--r--content/browser/in_process_webkit/indexed_db_context.h4
-rw-r--r--content/browser/in_process_webkit/indexed_db_key_utility_client.h3
-rw-r--r--content/browser/in_process_webkit/session_storage_namespace.h3
-rw-r--r--content/browser/in_process_webkit/webkit_context.h4
-rw-r--r--content/browser/javascript_dialogs.h5
-rw-r--r--content/browser/net/browser_online_state_observer.h3
-rw-r--r--content/browser/net/url_request_failed_dns_job.h5
-rw-r--r--content/browser/net/url_request_mock_http_job.h5
-rw-r--r--content/browser/net/url_request_slow_download_job.h5
-rw-r--r--content/browser/net/url_request_slow_http_job.h5
-rw-r--r--content/browser/plugin_service.h3
-rw-r--r--content/browser/renderer_host/backing_store_manager.h5
-rw-r--r--content/browser/renderer_host/backing_store_skia.h9
-rw-r--r--content/browser/renderer_host/render_process_host.h5
-rw-r--r--content/browser/renderer_host/render_view_host.h3
-rw-r--r--content/browser/renderer_host/render_view_host_delegate.h5
-rw-r--r--content/browser/renderer_host/render_view_host_factory.h5
-rw-r--r--content/browser/renderer_host/render_view_host_observer.h5
-rw-r--r--content/browser/renderer_host/render_widget_fullscreen_host.h5
-rw-r--r--content/browser/renderer_host/render_widget_host.h5
-rw-r--r--content/browser/renderer_host/render_widget_host_view.h5
-rw-r--r--content/browser/renderer_host/render_widget_host_view_win.h10
-rw-r--r--content/browser/renderer_host/resource_dispatcher_host.h3
-rw-r--r--content/browser/renderer_host/resource_dispatcher_host_login_delegate.h3
-rw-r--r--content/browser/renderer_host/resource_dispatcher_host_request_info.h4
-rw-r--r--content/browser/renderer_host/resource_queue.h9
-rw-r--r--content/browser/resource_context.h3
-rw-r--r--content/browser/site_instance.h5
-rw-r--r--content/browser/speech/speech_input_manager.h5
-rw-r--r--content/browser/speech/speech_recognizer.h21
-rw-r--r--content/browser/ssl/ssl_client_auth_handler.h7
-rw-r--r--content/browser/ssl/ssl_error_handler.h3
-rw-r--r--content/browser/ssl/ssl_host_state.h7
-rw-r--r--content/browser/ssl/ssl_manager.h13
-rw-r--r--content/browser/tab_contents/interstitial_page.h5
-rw-r--r--content/browser/tab_contents/navigation_controller.h3
-rw-r--r--content/browser/tab_contents/navigation_details.h3
-rw-r--r--content/browser/tab_contents/navigation_entry.h5
-rw-r--r--content/browser/tab_contents/page_navigator.h5
-rw-r--r--content/browser/tab_contents/render_view_host_manager.h3
-rw-r--r--content/browser/tab_contents/tab_contents.h9
-rw-r--r--content/browser/tab_contents/tab_contents_delegate.h3
-rw-r--r--content/browser/tab_contents/tab_contents_observer.h5
-rw-r--r--content/browser/tab_contents/tab_contents_view.h3
-rw-r--r--content/browser/trace_controller.h3
-rw-r--r--content/browser/user_metrics.h6
-rw-r--r--content/browser/utility_process_host.h5
-rw-r--r--content/browser/webui/web_ui.h5
-rw-r--r--content/common/child_process.h3
-rw-r--r--content/common/child_process_host.h5
-rw-r--r--content/common/child_process_info.h3
-rw-r--r--content/common/child_process_messages.h4
-rw-r--r--content/common/child_thread.h5
-rw-r--r--content/common/common_param_traits.h19
-rw-r--r--content/common/content_client.h7
-rw-r--r--content/common/content_constants.h8
-rw-r--r--content/common/content_counters.h4
-rw-r--r--content/common/content_export.h3
-rw-r--r--content/common/content_paths.h4
-rw-r--r--content/common/content_switches.h132
-rw-r--r--content/common/devtools_messages.h4
-rw-r--r--content/common/gpu/gpu_feature_flags.h3
-rw-r--r--content/common/hi_res_timer_manager.h4
-rw-r--r--content/common/json_value_serializer.h5
-rw-r--r--content/common/native_web_keyboard_event.h5
-rw-r--r--content/common/net/url_fetcher.h5
-rw-r--r--content/common/notification_details.h3
-rw-r--r--content/common/notification_observer.h4
-rw-r--r--content/common/notification_registrar.h5
-rw-r--r--content/common/notification_service.h3
-rw-r--r--content/common/notification_source.h3
-rw-r--r--content/common/page_transition_types.h3
-rw-r--r--content/common/pepper_plugin_registry.h6
-rw-r--r--content/common/plugin_messages.h4
-rw-r--r--content/common/property_bag.h5
-rw-r--r--content/common/renderer_preferences.h3
-rw-r--r--content/common/resource_dispatcher_delegate.h3
-rw-r--r--content/common/resource_response.h4
-rw-r--r--content/common/sandbox_init_wrapper.h4
-rw-r--r--content/common/sandbox_policy.h11
-rw-r--r--content/common/section_util_win.h7
-rw-r--r--content/common/url_constants.h40
-rw-r--r--content/common/view_messages.h4
-rw-r--r--content/common/view_types.h3
-rw-r--r--content/common/webkit_param_traits.h3
-rw-r--r--content/renderer/p2p/host_address_request.h5
-rw-r--r--content/renderer/p2p/ipc_network_manager.h3
-rw-r--r--content/renderer/p2p/ipc_socket_factory.h4
-rw-r--r--content/renderer/pepper_plugin_delegate_impl.h6
-rw-r--r--content/renderer/render_process_observer.h3
-rw-r--r--content/renderer/render_thread.h7
-rw-r--r--content/renderer/render_view.h46
-rw-r--r--content/renderer/render_view_observer.h5
-rw-r--r--content/renderer/v8_value_converter.h3
-rw-r--r--content/renderer/web_ui_bindings.h5
-rw-r--r--content/utility/utility_thread.h3
141 files changed, 566 insertions, 352 deletions
diff --git a/content/app/content_main.h b/content/app/content_main.h
index 386902d..f12f542 100644
--- a/content/app/content_main.h
+++ b/content/app/content_main.h
@@ -7,6 +7,7 @@
#pragma once
#include "build/build_config.h"
+#include "content/common/content_export.h"
#if defined(OS_WIN)
#include <windows.h>
@@ -28,13 +29,13 @@ class ContentMainDelegate;
// |sandbox_info| should be initialized using InitializeSandboxInfo from
// content_main_win.h
-int ContentMain(HINSTANCE instance,
- sandbox::SandboxInterfaceInfo* sandbox_info,
- ContentMainDelegate* delegate);
+CONTENT_EXPORT int ContentMain(HINSTANCE instance,
+ sandbox::SandboxInterfaceInfo* sandbox_info,
+ ContentMainDelegate* delegate);
#else
-int ContentMain(int argc,
- const char** argv,
- ContentMainDelegate* delegate);
+CONTENT_EXPORT int ContentMain(int argc,
+ char** argv,
+ ContentMainDelegate* delegate);
#endif
} // namespace content
diff --git a/content/browser/accessibility/browser_accessibility_manager.h b/content/browser/accessibility/browser_accessibility_manager.h
index 62f4a4a..e69a1f0 100644
--- a/content/browser/accessibility/browser_accessibility_manager.h
+++ b/content/browser/accessibility/browser_accessibility_manager.h
@@ -11,6 +11,7 @@
#include "base/hash_tables.h"
#include "base/memory/scoped_ptr.h"
#include "build/build_config.h"
+#include "content/common/content_export.h"
#include "ui/gfx/native_widget_types.h"
#include "webkit/glue/webaccessibility.h"
@@ -24,7 +25,7 @@ using webkit_glue::WebAccessibility;
struct ViewHostMsg_AccessibilityNotification_Params;
// Class that can perform actions on behalf of the BrowserAccessibilityManager.
-class BrowserAccessibilityDelegate {
+class CONTENT_EXPORT BrowserAccessibilityDelegate {
public:
virtual ~BrowserAccessibilityDelegate() {}
virtual void SetAccessibilityFocus(int acc_obj_id) = 0;
diff --git a/content/browser/accessibility/browser_accessibility_state.h b/content/browser/accessibility/browser_accessibility_state.h
index 82cb8a3..62e19eb 100644
--- a/content/browser/accessibility/browser_accessibility_state.h
+++ b/content/browser/accessibility/browser_accessibility_state.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2010 The Chromium Authors. All rights reserved.
+// Copyright (c) 2011 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -7,6 +7,7 @@
#pragma once
#include "base/basictypes.h"
+#include "content/common/content_export.h"
template <typename T> struct DefaultSingletonTraits;
@@ -27,7 +28,7 @@ template <typename T> struct DefaultSingletonTraits;
// when VoiceOver is launched and unset when VoiceOver is closed. This is an
// improvement over reading defaults preference values (which has no callback
// mechanism).
-class BrowserAccessibilityState {
+class CONTENT_EXPORT BrowserAccessibilityState {
public:
// Returns the singleton instance.
static BrowserAccessibilityState* GetInstance();
diff --git a/content/browser/appcache/chrome_appcache_service.h b/content/browser/appcache/chrome_appcache_service.h
index 3aff0cf..a599517 100644
--- a/content/browser/appcache/chrome_appcache_service.h
+++ b/content/browser/appcache/chrome_appcache_service.h
@@ -6,8 +6,10 @@
#define CONTENT_BROWSER_APPCACHE_CHROME_APPCACHE_SERVICE_H_
#pragma once
+#include "base/compiler_specific.h"
#include "base/memory/ref_counted.h"
#include "content/browser/browser_thread.h"
+#include "content/common/content_export.h"
#include "content/common/notification_observer.h"
#include "content/common/notification_registrar.h"
#include "webkit/appcache/appcache_policy.h"
@@ -28,11 +30,14 @@ class ResourceContext;
//
// All methods, except the ctor, are expected to be called on
// the IO thread (unless specifically called out in doc comments).
-class ChromeAppCacheService
+//
+// TODO(dpranke): Fix dependencies on AppCacheService so that we don't have
+// to worry about clients calling AppCacheService methods.
+class CONTENT_EXPORT ChromeAppCacheService
: public base::RefCountedThreadSafe<ChromeAppCacheService,
BrowserThread::DeleteOnIOThread>,
- public appcache::AppCacheService,
- public appcache::AppCachePolicy,
+ NON_EXPORTED_BASE(public appcache::AppCacheService),
+ NON_EXPORTED_BASE(public appcache::AppCachePolicy),
public NotificationObserver {
public:
explicit ChromeAppCacheService(quota::QuotaManagerProxy* proxy);
@@ -43,6 +48,8 @@ class ChromeAppCacheService
scoped_refptr<quota::SpecialStoragePolicy> special_storage_policy);
private:
+ friend class base::RefCountedThreadSafe<ChromeAppCacheService,
+ BrowserThread::DeleteOnIOThread>;
friend class BrowserThread;
friend class DeleteTask<ChromeAppCacheService>;
diff --git a/content/browser/browser_child_process_host.h b/content/browser/browser_child_process_host.h
index cc04b2a..bf5b881 100644
--- a/content/browser/browser_child_process_host.h
+++ b/content/browser/browser_child_process_host.h
@@ -11,15 +11,17 @@
#include "content/browser/child_process_launcher.h"
#include "content/common/child_process_host.h"
#include "content/common/child_process_info.h"
+#include "content/common/content_export.h"
// Plugins/workers and other child processes that live on the IO thread should
// derive from this class.
//
// [Browser]RenderProcessHost is the main exception that doesn't derive from
// this class. That project lives on the UI thread.
-class BrowserChildProcessHost : public ChildProcessHost,
- public ChildProcessInfo,
- public ChildProcessLauncher::Client {
+class CONTENT_EXPORT BrowserChildProcessHost :
+ public ChildProcessHost,
+ public ChildProcessInfo,
+ public ChildProcessLauncher::Client {
public:
virtual ~BrowserChildProcessHost();
@@ -31,7 +33,7 @@ class BrowserChildProcessHost : public ChildProcessHost,
// this should be done from the IO thread and that the iterator should not be
// kept around as it may be invalidated on subsequent event processing in the
// event loop.
- class Iterator {
+ class CONTENT_EXPORT Iterator {
public:
Iterator();
explicit Iterator(ChildProcessInfo::ProcessType type);
diff --git a/content/browser/browser_message_filter.h b/content/browser/browser_message_filter.h
index 674d492..2ad88b8 100644
--- a/content/browser/browser_message_filter.h
+++ b/content/browser/browser_message_filter.h
@@ -8,12 +8,14 @@
#include "base/process.h"
#include "content/browser/browser_thread.h"
+#include "content/common/content_export.h"
#include "ipc/ipc_channel_proxy.h"
// Base class for message filters in the browser process. You can receive and
// send messages on any thread.
-class BrowserMessageFilter : public IPC::ChannelProxy::MessageFilter,
- public IPC::Message::Sender {
+class CONTENT_EXPORT BrowserMessageFilter :
+ public IPC::ChannelProxy::MessageFilter,
+ public IPC::Message::Sender {
public:
BrowserMessageFilter();
virtual ~BrowserMessageFilter();
diff --git a/content/browser/browser_thread.h b/content/browser/browser_thread.h
index 3c47fc0..2e79897 100644
--- a/content/browser/browser_thread.h
+++ b/content/browser/browser_thread.h
@@ -10,6 +10,7 @@
#include "base/synchronization/lock.h"
#include "base/task.h"
#include "base/threading/thread.h"
+#include "content/common/content_export.h"
#if defined(UNIT_TEST)
#include "base/logging.h"
@@ -39,7 +40,7 @@ class MessageLoopProxy;
// task is posted to is guaranteed to outlive the current thread, then no locks
// are used. You should never need to cache pointers to MessageLoops, since
// they're not thread safe.
-class BrowserThread : public base::Thread {
+class CONTENT_EXPORT BrowserThread : public base::Thread {
public:
// An enumeration of the well-known threads.
// NOTE: threads must be listed in the order of their life-time, with each
diff --git a/content/browser/browser_url_handler.h b/content/browser/browser_url_handler.h
index 881c080..4fd625b 100644
--- a/content/browser/browser_url_handler.h
+++ b/content/browser/browser_url_handler.h
@@ -18,6 +18,7 @@
#include "base/gtest_prod_util.h"
#include "base/memory/singleton.h"
+#include "content/common/content_export.h"
class GURL;
@@ -27,7 +28,7 @@ class BrowserContext;
// BrowserURLHandler manages the list of all special URLs and manages
// dispatching the URL handling to registered handlers.
-class BrowserURLHandler {
+class CONTENT_EXPORT BrowserURLHandler {
public:
// The type of functions that can process a URL.
// If a handler handles |url|, it should :
diff --git a/content/browser/browsing_instance.h b/content/browser/browsing_instance.h
index b550659..5d7de84 100644
--- a/content/browser/browsing_instance.h
+++ b/content/browser/browsing_instance.h
@@ -8,6 +8,7 @@
#include "base/hash_tables.h"
#include "base/memory/ref_counted.h"
+#include "content/common/content_export.h"
class GURL;
class SiteInstance;
@@ -55,7 +56,8 @@ class BrowserContext;
// site_instance_unittest.cc.
//
///////////////////////////////////////////////////////////////////////////////
-class BrowsingInstance : public base::RefCounted<BrowsingInstance> {
+class CONTENT_EXPORT BrowsingInstance
+ : public base::RefCounted<BrowsingInstance> {
public:
// Create a new BrowsingInstance.
explicit BrowsingInstance(content::BrowserContext* context);
diff --git a/content/browser/cancelable_request.h b/content/browser/cancelable_request.h
index 18819ed..a9e6f4f 100644
--- a/content/browser/cancelable_request.h
+++ b/content/browser/cancelable_request.h
@@ -100,6 +100,7 @@
#include "base/synchronization/lock.h"
#include "base/task.h"
#include "build/build_config.h"
+#include "content/common/content_export.h"
class CancelableRequestBase;
class CancelableRequestConsumerBase;
@@ -113,7 +114,7 @@ class CancelableRequestConsumerBase;
// It is intended that providers inherit from this class to provide the
// necessary functionality.
-class CancelableRequestProvider {
+class CONTENT_EXPORT CancelableRequestProvider {
public:
// Identifies a specific request from this provider.
typedef int Handle;
@@ -514,7 +515,7 @@ extern template class CancelableRequestConsumerT<int, 0>;
// other thread for the callback, but will still be destroyed properly.
// Non-templatized base class that provides cancellation
-class CancelableRequestBase
+class CONTENT_EXPORT CancelableRequestBase
: public base::RefCountedThreadSafe<CancelableRequestBase> {
public:
friend class CancelableRequestProvider;
diff --git a/content/browser/cert_store.h b/content/browser/cert_store.h
index 294e932..326f1b8 100644
--- a/content/browser/cert_store.h
+++ b/content/browser/cert_store.h
@@ -10,6 +10,7 @@
#include "base/memory/singleton.h"
#include "base/synchronization/lock.h"
+#include "content/common/content_export.h"
#include "content/common/notification_observer.h"
#include "content/common/notification_registrar.h"
#include "net/base/x509_certificate.h"
@@ -24,7 +25,7 @@
// Note that the cert ids will overflow if we register more than 2^32 - 1 certs
// in 1 browsing session (which is highly unlikely to happen).
-class CertStore : public NotificationObserver {
+class CONTENT_EXPORT CertStore : public NotificationObserver {
public:
// Returns the singleton instance of the CertStore.
static CertStore* GetInstance();
diff --git a/content/browser/child_process_launcher.h b/content/browser/child_process_launcher.h
index f1f6369..9cd12e7 100644
--- a/content/browser/child_process_launcher.h
+++ b/content/browser/child_process_launcher.h
@@ -9,15 +9,16 @@
#include "base/basictypes.h"
#include "base/memory/ref_counted.h"
#include "base/process_util.h"
+#include "content/common/content_export.h"
class CommandLine;
// Launches a process asynchronously and notifies the client of the process
// handle when it's available. It's used to avoid blocking the calling thread
// on the OS since often it can take > 100 ms to create the process.
-class ChildProcessLauncher {
+class CONTENT_EXPORT ChildProcessLauncher {
public:
- class Client {
+ class CONTENT_EXPORT Client {
public:
// Will be called on the thread that the ChildProcessLauncher was
// constructed on.
diff --git a/content/browser/child_process_security_policy.h b/content/browser/child_process_security_policy.h
index 1ce1f3d..943fd2d 100644
--- a/content/browser/child_process_security_policy.h
+++ b/content/browser/child_process_security_policy.h
@@ -15,6 +15,7 @@
#include "base/gtest_prod_util.h"
#include "base/memory/singleton.h"
#include "base/synchronization/lock.h"
+#include "content/common/content_export.h"
class FilePath;
class GURL;
@@ -26,7 +27,7 @@ class GURL;
//
// ChildProcessSecurityPolicy is a singleton that may be used on any thread.
//
-class ChildProcessSecurityPolicy {
+class CONTENT_EXPORT ChildProcessSecurityPolicy {
public:
// Object can only be created through GetInstance() so the constructor is
// private.
diff --git a/content/browser/chrome_blob_storage_context.h b/content/browser/chrome_blob_storage_context.h
index 3b97011..a6680f9 100644
--- a/content/browser/chrome_blob_storage_context.h
+++ b/content/browser/chrome_blob_storage_context.h
@@ -9,6 +9,7 @@
#include "base/memory/ref_counted.h"
#include "base/memory/scoped_ptr.h"
#include "content/browser/browser_thread.h"
+#include "content/common/content_export.h"
class GURL;
@@ -23,7 +24,7 @@ class BlobStorageController;
//
// All methods, except the ctor, are expected to be called on
// the IO thread (unless specifically called out in doc comments).
-class ChromeBlobStorageContext
+class CONTENT_EXPORT ChromeBlobStorageContext
: public base::RefCountedThreadSafe<ChromeBlobStorageContext,
BrowserThread::DeleteOnIOThread> {
public:
@@ -36,6 +37,8 @@ class ChromeBlobStorageContext
}
private:
+ friend class base::RefCountedThreadSafe<ChromeBlobStorageContext,
+ BrowserThread::DeleteOnIOThread>;
friend class BrowserThread;
friend class DeleteTask<ChromeBlobStorageContext>;
diff --git a/content/browser/debugger/devtools_agent_host.h b/content/browser/debugger/devtools_agent_host.h
index 7208e72..95c9754 100644
--- a/content/browser/debugger/devtools_agent_host.h
+++ b/content/browser/debugger/devtools_agent_host.h
@@ -6,6 +6,8 @@
#define CONTENT_BROWSER_DEBUGGER_DEVTOOLS_AGENT_HOST_H_
#pragma once
+#include "content/common/content_export.h"
+
namespace IPC {
class Message;
}
@@ -13,7 +15,7 @@ class Message;
// Describes interface for managing devtools agents from the browser process.
class DevToolsAgentHost {
public:
- class CloseListener {
+ class CONTENT_EXPORT CloseListener {
public:
virtual void AgentHostClosing(DevToolsAgentHost*) = 0;
protected:
diff --git a/content/browser/debugger/devtools_client_host.h b/content/browser/debugger/devtools_client_host.h
index 796d7fe..f629818 100644
--- a/content/browser/debugger/devtools_client_host.h
+++ b/content/browser/debugger/devtools_client_host.h
@@ -10,6 +10,7 @@
#include <vector>
#include "base/basictypes.h"
+#include "content/common/content_export.h"
namespace IPC {
class Message;
@@ -21,9 +22,9 @@ class TabContents;
// Describes interface for managing devtools clients from browser process. There
// are currently two types of clients: devtools windows and TCP socket
// debuggers.
-class DevToolsClientHost {
+class CONTENT_EXPORT DevToolsClientHost {
public:
- class CloseListener {
+ class CONTENT_EXPORT CloseListener {
public:
CloseListener() {}
virtual ~CloseListener() {}
diff --git a/content/browser/debugger/devtools_http_protocol_handler.h b/content/browser/debugger/devtools_http_protocol_handler.h
index ff09fec..a5c396a 100644
--- a/content/browser/debugger/devtools_http_protocol_handler.h
+++ b/content/browser/debugger/devtools_http_protocol_handler.h
@@ -13,6 +13,7 @@
#include "base/memory/ref_counted.h"
#include "base/memory/scoped_ptr.h"
+#include "content/common/content_export.h"
#include "net/server/http_server.h"
#include "net/url_request/url_request.h"
@@ -50,7 +51,7 @@ class DevToolsHttpProtocolHandler
};
// Takes ownership over |delegate|.
- static scoped_refptr<DevToolsHttpProtocolHandler> Start(
+ CONTENT_EXPORT static scoped_refptr<DevToolsHttpProtocolHandler> Start(
const std::string& ip,
int port,
const std::string& frontend_url,
@@ -58,7 +59,7 @@ class DevToolsHttpProtocolHandler
// Called from the main thread in order to stop protocol handler.
// Will schedule tear down task on IO thread.
- void Stop();
+ CONTENT_EXPORT void Stop();
private:
friend class base::RefCountedThreadSafe<DevToolsHttpProtocolHandler>;
diff --git a/content/browser/debugger/devtools_manager.h b/content/browser/debugger/devtools_manager.h
index 6aa43f9..de7b88a 100644
--- a/content/browser/debugger/devtools_manager.h
+++ b/content/browser/debugger/devtools_manager.h
@@ -11,6 +11,7 @@
#include "content/browser/debugger/devtools_agent_host.h"
#include "content/browser/debugger/devtools_client_host.h"
+#include "content/common/content_export.h"
namespace IPC {
class Message;
@@ -32,8 +33,9 @@ typedef std::map<std::string, std::string> DevToolsRuntimeProperties;
// Methods below that accept inspected RenderViewHost as a parameter are
// just convenience methods that call corresponding methods accepting
// DevToolAgentHost.
-class DevToolsManager : public DevToolsClientHost::CloseListener,
- public DevToolsAgentHost::CloseListener {
+class CONTENT_EXPORT DevToolsManager
+ : public DevToolsClientHost::CloseListener,
+ public DevToolsAgentHost::CloseListener {
public:
static DevToolsManager* GetInstance();
diff --git a/content/browser/disposition_utils.h b/content/browser/disposition_utils.h
index ba8c9e5..a531350 100644
--- a/content/browser/disposition_utils.h
+++ b/content/browser/disposition_utils.h
@@ -6,6 +6,7 @@
#define CONTENT_BROWSER_DISPOSITION_UTILS_H_
#pragma once
+#include "content/common/content_export.h"
#include "webkit/glue/window_open_disposition.h"
namespace disposition_utils {
@@ -13,11 +14,11 @@ namespace disposition_utils {
// Translates event flags from a click on a link into the user's desired
// window disposition. For example, a middle click would mean to open
// a background tab.
-WindowOpenDisposition DispositionFromClick(bool middle_button,
- bool alt_key,
- bool ctrl_key,
- bool meta_key,
- bool shift_key);
+CONTENT_EXPORT WindowOpenDisposition DispositionFromClick(bool middle_button,
+ bool alt_key,
+ bool ctrl_key,
+ bool meta_key,
+ bool shift_key);
}
diff --git a/content/browser/download/base_file.h b/content/browser/download/base_file.h
index 1e45321..7076ef1 100644
--- a/content/browser/download/base_file.h
+++ b/content/browser/download/base_file.h
@@ -12,6 +12,7 @@
#include "base/memory/linked_ptr.h"
#include "base/memory/scoped_ptr.h"
#include "content/browser/power_save_blocker.h"
+#include "content/common/content_export.h"
#include "googleurl/src/gurl.h"
#include "net/base/net_errors.h"
@@ -24,7 +25,7 @@ class FileStream;
// File being downloaded and saved to disk. This is a base class
// for DownloadFile and SaveFile, which keep more state information.
-class BaseFile {
+class CONTENT_EXPORT BaseFile {
public:
BaseFile(const FilePath& full_path,
const GURL& source_url,
diff --git a/content/browser/download/download_file.h b/content/browser/download/download_file.h
index bddeb3e..f42a1af 100644
--- a/content/browser/download/download_file.h
+++ b/content/browser/download/download_file.h
@@ -13,6 +13,7 @@
#include "content/browser/download/base_file.h"
#include "content/browser/download/download_request_handle.h"
#include "content/browser/download/download_types.h"
+#include "content/common/content_export.h"
struct DownloadCreateInfo;
class DownloadManager;
@@ -22,7 +23,7 @@ class ResourceDispatcherHost;
// operations for one download. These objects live only for the duration that
// the download is 'in progress': once the download has been completed or
// cancelled, the DownloadFile is destroyed.
-class DownloadFile : public BaseFile {
+class CONTENT_EXPORT DownloadFile : public BaseFile {
public:
DownloadFile(const DownloadCreateInfo* info,
DownloadManager* download_manager);
diff --git a/content/browser/download/download_file_manager.h b/content/browser/download/download_file_manager.h
index 5b237b1..db5a796 100644
--- a/content/browser/download/download_file_manager.h
+++ b/content/browser/download/download_file_manager.h
@@ -49,6 +49,7 @@
#include "base/memory/ref_counted.h"
#include "base/timer.h"
#include "content/browser/download/download_request_handle.h"
+#include "content/common/content_export.h"
#include "net/base/net_errors.h"
#include "ui/gfx/native_widget_types.h"
@@ -72,7 +73,7 @@ class DownloadFileManager
explicit DownloadFileManager(ResourceDispatcherHost* rdh);
// Called on shutdown on the UI thread.
- void Shutdown();
+ CONTENT_EXPORT void Shutdown();
// Called on the IO or UI threads.
int GetNextId();
diff --git a/content/browser/download/download_item.h b/content/browser/download/download_item.h
index 6e32d08..e9f7d1d 100644
--- a/content/browser/download/download_item.h
+++ b/content/browser/download/download_item.h
@@ -27,6 +27,7 @@
#include "base/timer.h"
#include "content/browser/download/download_request_handle.h"
#include "content/browser/download/download_state_info.h"
+#include "content/common/content_export.h"
#include "googleurl/src/gurl.h"
#include "net/base/net_errors.h"
@@ -40,7 +41,7 @@ struct DownloadPersistentStoreInfo;
// Destination tab's download view, may refer to a given DownloadItem.
//
// This is intended to be used only on the UI thread.
-class DownloadItem {
+class CONTENT_EXPORT DownloadItem {
public:
enum DownloadState {
// Download is actively progressing.
@@ -98,7 +99,7 @@ class DownloadItem {
// Interface that observers of a particular download must implement in order
// to receive updates to the download's status.
- class Observer {
+ class CONTENT_EXPORT Observer {
public:
virtual void OnDownloadUpdated(DownloadItem* download) = 0;
diff --git a/content/browser/download/download_manager.h b/content/browser/download/download_manager.h
index 994db82..2536c93 100644
--- a/content/browser/download/download_manager.h
+++ b/content/browser/download/download_manager.h
@@ -46,6 +46,7 @@
#include "content/browser/download/download_item.h"
#include "content/browser/download/download_request_handle.h"
#include "content/browser/download/download_status_updater_delegate.h"
+#include "content/common/content_export.h"
#include "net/base/net_errors.h"
class DownloadFileManager;
@@ -62,7 +63,7 @@ class BrowserContext;
}
// Browser's download manager: manages all downloads and destination view.
-class DownloadManager
+class CONTENT_EXPORT DownloadManager
: public base::RefCountedThreadSafe<DownloadManager,
BrowserThread::DeleteOnUIThread>,
public DownloadStatusUpdaterDelegate {
@@ -75,7 +76,7 @@ class DownloadManager
// Interface to implement for observers that wish to be informed of changes
// to the DownloadManager's collection of downloads.
- class Observer {
+ class CONTENT_EXPORT Observer {
public:
// New or deleted download, observers should query us for the current set
// of downloads.
@@ -276,6 +277,8 @@ class DownloadManager
friend class DownloadManagerTest;
friend class MockDownloadManager;
+ friend class base::RefCountedThreadSafe<DownloadManager,
+ BrowserThread::DeleteOnUIThread>;
friend struct BrowserThread::DeleteOnThread<BrowserThread::UI>;
friend class DeleteTask<DownloadManager>;
diff --git a/content/browser/download/download_persistent_store_info.h b/content/browser/download/download_persistent_store_info.h
index 7ac0853..948d048 100644
--- a/content/browser/download/download_persistent_store_info.h
+++ b/content/browser/download/download_persistent_store_info.h
@@ -13,13 +13,14 @@
#include "base/file_path.h"
#include "base/time.h"
+#include "content/common/content_export.h"
#include "googleurl/src/gurl.h"
class DownloadItem;
// Contains the information that is stored in the download system's persistent
// store (or refers to it). Managed by the DownloadItem.
-struct DownloadPersistentStoreInfo {
+struct CONTENT_EXPORT DownloadPersistentStoreInfo {
// TODO(ahendrickson) -- Reduce the number of constructors.
DownloadPersistentStoreInfo();
DownloadPersistentStoreInfo(const FilePath& path,
diff --git a/content/browser/download/download_state_info.h b/content/browser/download/download_state_info.h
index 7392e63..85367ca 100644
--- a/content/browser/download/download_state_info.h
+++ b/content/browser/download/download_state_info.h
@@ -7,6 +7,7 @@
#pragma once
#include "base/file_path.h"
+#include "content/common/content_export.h"
#include "content/common/page_transition_types.h"
// Contains information relating to the process of determining what to do with
@@ -25,7 +26,7 @@ struct DownloadStateInfo {
bool dangerous_url);
// Indicates if the download is dangerous.
- bool IsDangerous() const;
+ CONTENT_EXPORT bool IsDangerous() const;
// The original name for a dangerous download, specified by the request.
FilePath target_name;
diff --git a/content/browser/download/download_stats.h b/content/browser/download/download_stats.h
index 0007bcf..7ca7a23 100644
--- a/content/browser/download/download_stats.h
+++ b/content/browser/download/download_stats.h
@@ -11,6 +11,7 @@
#include <string>
#include "base/basictypes.h"
+#include "content/common/content_export.h"
namespace base {
class TimeTicks;
@@ -67,7 +68,7 @@ enum DownloadCountTypes {
};
// Increment one of the above counts.
-void RecordDownloadCount(DownloadCountTypes type);
+CONTENT_EXPORT void RecordDownloadCount(DownloadCountTypes type);
// Record COMPLETED_COUNT and how long the download took.
void RecordDownloadCompleted(const base::TimeTicks& start, int64 download_len);
diff --git a/content/browser/download/download_status_updater.h b/content/browser/download/download_status_updater.h
index 195d68e..410fa2d 100644
--- a/content/browser/download/download_status_updater.h
+++ b/content/browser/download/download_status_updater.h
@@ -10,11 +10,12 @@
#include "base/basictypes.h"
#include "base/gtest_prod_util.h"
#include "base/memory/weak_ptr.h"
+#include "content/common/content_export.h"
class DownloadStatusUpdaterDelegate;
// Keeps track of download progress for the entire browser.
-class DownloadStatusUpdater
+class CONTENT_EXPORT DownloadStatusUpdater
: public base::SupportsWeakPtr<DownloadStatusUpdater> {
public:
DownloadStatusUpdater();
diff --git a/content/browser/download/download_status_updater_delegate.h b/content/browser/download/download_status_updater_delegate.h
index 72c2eda..c80e432 100644
--- a/content/browser/download/download_status_updater_delegate.h
+++ b/content/browser/download/download_status_updater_delegate.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2010 The Chromium Authors. All rights reserved.
+// Copyright (c) 2011 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -6,8 +6,9 @@
#define CONTENT_BROWSER_DOWNLOAD_DOWNLOAD_STATUS_UPDATER_DELEGATE_H_
#include "base/basictypes.h"
+#include "content/common/content_export.h"
-class DownloadStatusUpdaterDelegate {
+class CONTENT_EXPORT DownloadStatusUpdaterDelegate {
public:
// Returns true if the progress is known (i.e. we know the final size
// of all downloads).
diff --git a/content/browser/download/drag_download_file.h b/content/browser/download/drag_download_file.h
index 621a368..18228f08 100644
--- a/content/browser/download/drag_download_file.h
+++ b/content/browser/download/drag_download_file.h
@@ -6,13 +6,16 @@
#define CONTENT_BROWSER_DOWNLOAD_DRAG_DOWNLOAD_FILE_H_
#pragma once
+#include "base/compiler_specific.h"
#include "base/file_path.h"
#include "base/memory/linked_ptr.h"
#include "content/browser/download/download_file.h"
#include "content/browser/download/download_item.h"
#include "content/browser/download/download_manager.h"
+#include "content/common/content_export.h"
#include "googleurl/src/gurl.h"
#include "ui/base/dragdrop/download_file_interface.h"
+#include "ui/base/ui_export.h"
class TabContents;
@@ -20,9 +23,10 @@ namespace net {
class FileStream;
}
-class DragDownloadFile : public ui::DownloadFileProvider,
- public DownloadManager::Observer,
- public DownloadItem::Observer {
+class CONTENT_EXPORT DragDownloadFile
+ : public ui::DownloadFileProvider,
+ public DownloadManager::Observer,
+ public DownloadItem::Observer {
public:
// On Windows, we need to download into a temporary file. Two threads are
// involved: background drag-and-drop thread and UI thread.
diff --git a/content/browser/download/drag_download_util.h b/content/browser/download/drag_download_util.h
index 7eef73f..965c6f2 100644
--- a/content/browser/download/drag_download_util.h
+++ b/content/browser/download/drag_download_util.h
@@ -10,6 +10,7 @@
#include "base/memory/ref_counted.h"
#include "base/string16.h"
#include "content/browser/download/drag_download_file.h"
+#include "content/common/content_export.h"
#include "ui/base/dragdrop/download_file_interface.h"
class FilePath;
@@ -29,10 +30,10 @@ namespace drag_download_util {
// appropriately.
// For example, we can have
// text/plain:example.txt:http://example.com/example.txt
-bool ParseDownloadMetadata(const string16& metadata,
- string16* mime_type,
- FilePath* file_name,
- GURL* url);
+CONTENT_EXPORT bool ParseDownloadMetadata(const string16& metadata,
+ string16* mime_type,
+ FilePath* file_name,
+ GURL* url);
// Create a new file at the specified path. If the file already exists, try to
// insert the sequential unifier to produce a new file, like foo-01.txt.
diff --git a/content/browser/download/mhtml_generation_manager.h b/content/browser/download/mhtml_generation_manager.h
index 49cd8ec..9271327 100644
--- a/content/browser/download/mhtml_generation_manager.h
+++ b/content/browser/download/mhtml_generation_manager.h
@@ -11,12 +11,13 @@
#include "base/platform_file.h"
#include "base/process.h"
#include "content/browser/browser_thread.h"
+#include "content/common/content_export.h"
#include "ipc/ipc_platform_file.h"
class FilePath;
class TabContents;
-class MHTMLGenerationManager
+class CONTENT_EXPORT MHTMLGenerationManager
: public base::RefCountedThreadSafe<MHTMLGenerationManager,
BrowserThread::DeleteOnUIThread> {
public:
diff --git a/content/browser/download/save_file_manager.h b/content/browser/download/save_file_manager.h
index 5f555ed..e8419cf 100644
--- a/content/browser/download/save_file_manager.h
+++ b/content/browser/download/save_file_manager.h
@@ -65,6 +65,7 @@
#include "base/hash_tables.h"
#include "base/memory/ref_counted.h"
#include "content/browser/download/save_types.h"
+#include "content/common/content_export.h"
class FilePath;
class GURL;
@@ -87,7 +88,7 @@ class SaveFileManager
explicit SaveFileManager(ResourceDispatcherHost* rdh);
// Lifetime management.
- void Shutdown();
+ CONTENT_EXPORT void Shutdown();
// Called on the IO thread. This generates unique IDs for
// SaveFileResourceHandler objects (there's one per file in a SavePackage).
diff --git a/content/browser/download/save_package.h b/content/browser/download/save_package.h
index 824a336..4204e30 100644
--- a/content/browser/download/save_package.h
+++ b/content/browser/download/save_package.h
@@ -19,6 +19,7 @@
#include "base/task.h"
#include "content/browser/download/download_manager.h"
#include "content/browser/tab_contents/tab_contents_observer.h"
+#include "content/common/content_export.h"
#include "googleurl/src/gurl.h"
class GURL;
@@ -49,10 +50,11 @@ class Time;
// saved. Each file is represented by a SaveItem, and all SaveItems are owned
// by the SavePackage. SaveItems are created when a user initiates a page
// saving job, and exist for the duration of one tab's life time.
-class SavePackage : public base::RefCountedThreadSafe<SavePackage>,
- public TabContentsObserver,
- public DownloadItem::Observer,
- public base::SupportsWeakPtr<SavePackage> {
+class CONTENT_EXPORT SavePackage
+ : public base::RefCountedThreadSafe<SavePackage>,
+ public TabContentsObserver,
+ public DownloadItem::Observer,
+ public base::SupportsWeakPtr<SavePackage> {
public:
enum SavePackageType {
// The value of the save type before its set by the user.
diff --git a/content/browser/file_system/browser_file_system_helper.h b/content/browser/file_system/browser_file_system_helper.h
index 9af8031..7d8cdce 100644
--- a/content/browser/file_system/browser_file_system_helper.h
+++ b/content/browser/file_system/browser_file_system_helper.h
@@ -7,6 +7,7 @@
#include "base/memory/ref_counted.h"
#include "base/memory/scoped_ptr.h"
+#include "content/common/content_export.h"
#include "webkit/fileapi/file_system_context.h"
namespace quota {
@@ -15,7 +16,8 @@ class SpecialStoragePolicy;
// Helper method that returns FileSystemContext constructed for
// the browser process.
-scoped_refptr<fileapi::FileSystemContext> CreateFileSystemContext(
+CONTENT_EXPORT scoped_refptr<fileapi::FileSystemContext>
+CreateFileSystemContext(
const FilePath& profile_path,
bool is_incognito,
quota::SpecialStoragePolicy* special_storage_policy,
diff --git a/content/browser/font_list_async.h b/content/browser/font_list_async.h
index 9693dfb..e9e9435 100644
--- a/content/browser/font_list_async.h
+++ b/content/browser/font_list_async.h
@@ -8,6 +8,7 @@
#include "base/callback.h"
#include "base/memory/ref_counted.h"
#include "base/memory/scoped_ptr.h"
+#include "content/common/content_export.h"
namespace base {
class ListValue;
@@ -18,7 +19,8 @@ namespace content {
// Wraps ownership of a ListValue so we can send it across threads without
// having ownership problems (for example if the calling thread goes away
// before the callback is executed, we want the ListValue to be destroyed.
-struct FontListResult : public base::RefCountedThreadSafe<FontListResult> {
+struct CONTENT_EXPORT FontListResult
+ : public base::RefCountedThreadSafe<FontListResult> {
FontListResult();
~FontListResult();
@@ -36,7 +38,7 @@ struct FontListResult : public base::RefCountedThreadSafe<FontListResult> {
// If the caller wants to take ownership of the ListValue, it can just do
// FontListResult.list.release() or use scoped_ptr.swap() because this value
// isn't used for anything else.
-void GetFontListAsync(
+CONTENT_EXPORT void GetFontListAsync(
const base::Callback<void(scoped_refptr<FontListResult>)>& callback);
} // namespace content
diff --git a/content/browser/geolocation/access_token_store.h b/content/browser/geolocation/access_token_store.h
index df3ec61..e40bb92 100644
--- a/content/browser/geolocation/access_token_store.h
+++ b/content/browser/geolocation/access_token_store.h
@@ -20,6 +20,7 @@
#include "base/memory/ref_counted.h"
#include "base/string16.h"
#include "content/browser/cancelable_request.h"
+#include "content/common/content_export.h"
#include "googleurl/src/gurl.h"
class GURL;
@@ -52,8 +53,8 @@ class AccessTokenStore : public base::RefCountedThreadSafe<AccessTokenStore>,
protected:
friend class base::RefCountedThreadSafe<AccessTokenStore>;
- AccessTokenStore();
- virtual ~AccessTokenStore();
+ CONTENT_EXPORT AccessTokenStore();
+ CONTENT_EXPORT virtual ~AccessTokenStore();
virtual void DoLoadAccessTokens(
scoped_refptr<CancelableRequest<LoadAccessTokensCallbackType> > req) = 0;
diff --git a/content/browser/geolocation/geolocation_permission_context.h b/content/browser/geolocation/geolocation_permission_context.h
index ff6b7dc..ddbade7 100644
--- a/content/browser/geolocation/geolocation_permission_context.h
+++ b/content/browser/geolocation/geolocation_permission_context.h
@@ -8,13 +8,14 @@
#include "base/basictypes.h"
#include "base/memory/ref_counted.h"
+#include "content/common/content_export.h"
class GURL;
// GeolocationPermissionContext must be implemented by the embedder, to provide
// the policy and logic for the Geolocation permissions flow.
// This includes both prompting the user and persisting results, as required.
-class GeolocationPermissionContext
+class CONTENT_EXPORT GeolocationPermissionContext
: public base::RefCountedThreadSafe<GeolocationPermissionContext> {
public:
// The renderer is requesting permission to use Geolocation.
diff --git a/content/browser/geolocation/geolocation_provider.h b/content/browser/geolocation/geolocation_provider.h
index 0f3db353..c57e692 100644
--- a/content/browser/geolocation/geolocation_provider.h
+++ b/content/browser/geolocation/geolocation_provider.h
@@ -10,6 +10,7 @@
#include "base/threading/thread.h"
#include "content/browser/geolocation/geolocation_observer.h"
+#include "content/common/content_export.h"
#include "content/common/geoposition.h"
#include "googleurl/src/gurl.h"
@@ -41,7 +42,7 @@ class GeolocationProvider : public base::Thread, public GeolocationObserver {
// via AddObserver(). Returns true if the observer was removed.
bool RemoveObserver(GeolocationObserver* delegate);
- void OnPermissionGranted(const GURL& requesting_frame);
+ CONTENT_EXPORT void OnPermissionGranted(const GURL& requesting_frame);
bool HasPermissionBeenGranted() const;
// GeolocationObserver
@@ -50,7 +51,7 @@ class GeolocationProvider : public base::Thread, public GeolocationObserver {
// Gets a pointer to the singleton instance of the location relayer, which
// is in turn bound to the browser's global context objects. Ownership is NOT
// returned.
- static GeolocationProvider* GetInstance();
+ CONTENT_EXPORT static GeolocationProvider* GetInstance();
typedef std::map<GeolocationObserver*, GeolocationObserverOptions>
ObserverMap;
diff --git a/content/browser/gpu/gpu_blacklist.h b/content/browser/gpu/gpu_blacklist.h
index 8020163..c912c67 100644
--- a/content/browser/gpu/gpu_blacklist.h
+++ b/content/browser/gpu/gpu_blacklist.h
@@ -14,6 +14,7 @@
#include "base/memory/ref_counted.h"
#include "base/memory/scoped_ptr.h"
#include "base/values.h"
+#include "content/common/content_export.h"
#include "content/common/gpu/gpu_feature_flags.h"
class Version;
@@ -23,7 +24,7 @@ namespace base {
class DictionaryValue;
}
-class GpuBlacklist {
+class CONTENT_EXPORT GpuBlacklist {
public:
enum OsType {
kOsLinux,
diff --git a/content/browser/gpu/gpu_data_manager.h b/content/browser/gpu/gpu_data_manager.h
index a5a40d0..87d6147 100644
--- a/content/browser/gpu/gpu_data_manager.h
+++ b/content/browser/gpu/gpu_data_manager.h
@@ -15,13 +15,14 @@
#include "base/synchronization/lock.h"
#include "base/task.h"
#include "base/values.h"
+#include "content/common/content_export.h"
#include "content/common/gpu/gpu_feature_flags.h"
#include "content/common/gpu/gpu_info.h"
class CommandLine;
class GpuBlacklist;
-class GpuDataManager {
+class CONTENT_EXPORT GpuDataManager {
public:
// Getter for the singleton. This will return NULL on failure.
static GpuDataManager* GetInstance();
diff --git a/content/browser/gpu/gpu_process_host.h b/content/browser/gpu/gpu_process_host.h
index 08f583d..b337176 100644
--- a/content/browser/gpu/gpu_process_host.h
+++ b/content/browser/gpu/gpu_process_host.h
@@ -13,6 +13,7 @@
#include "base/memory/linked_ptr.h"
#include "base/threading/non_thread_safe.h"
#include "content/browser/browser_child_process_host.h"
+#include "content/common/content_export.h"
#include "content/common/gpu/gpu_info.h"
#include "content/common/gpu/gpu_process_launch_causes.h"
#include "ui/gfx/native_widget_types.h"
@@ -42,9 +43,9 @@ class GpuProcessHost : public BrowserChildProcessHost,
// Helper function to send the given message to the GPU process on the IO
// thread. Calls GetForRenderer and if a host is returned, sends it.
// Can be called from any thread.
- static void SendOnIO(int renderer_id,
- content::CauseForGpuLaunch cause,
- IPC::Message* message);
+ CONTENT_EXPORT static void SendOnIO(int renderer_id,
+ content::CauseForGpuLaunch cause,
+ IPC::Message* message);
// Get the GPU process host for the GPU process with the given ID. Returns
// null if the process no longer exists.
@@ -153,7 +154,7 @@ class GpuProcessHost : public BrowserChildProcessHost,
// Master switch for enabling/disabling GPU acceleration for the current
// browser session. It does not change the acceleration settings for
// existing tabs, just the future ones.
- static bool gpu_enabled_;
+ CONTENT_EXPORT static bool gpu_enabled_;
DISALLOW_COPY_AND_ASSIGN(GpuProcessHost);
};
diff --git a/content/browser/gpu/gpu_process_host_ui_shim.h b/content/browser/gpu/gpu_process_host_ui_shim.h
index 7729fa2..40115ff 100644
--- a/content/browser/gpu/gpu_process_host_ui_shim.h
+++ b/content/browser/gpu/gpu_process_host_ui_shim.h
@@ -18,6 +18,7 @@
#include "base/memory/linked_ptr.h"
#include "base/memory/ref_counted.h"
#include "base/threading/non_thread_safe.h"
+#include "content/common/content_export.h"
#include "content/common/message_router.h"
namespace gfx {
@@ -62,7 +63,7 @@ class GpuProcessHostUIShim
static void Destroy(int host_id);
// Destroy all remaining GpuProcessHostUIShims.
- static void DestroyAll();
+ CONTENT_EXPORT static void DestroyAll();
static GpuProcessHostUIShim* FromID(int host_id);
diff --git a/content/browser/host_zoom_map.h b/content/browser/host_zoom_map.h
index 65b9766..0eb86c4 100644
--- a/content/browser/host_zoom_map.h
+++ b/content/browser/host_zoom_map.h
@@ -17,6 +17,7 @@
#include "base/memory/ref_counted.h"
#include "base/synchronization/lock.h"
#include "content/browser/browser_thread.h"
+#include "content/common/content_export.h"
#include "content/common/notification_observer.h"
#include "content/common/notification_registrar.h"
@@ -28,7 +29,7 @@ class GURL;
// HostZoomMap needs to be deleted on the UI thread because it listens
// to notifications on there (and holds a NotificationRegistrar).
-class HostZoomMap
+class CONTENT_EXPORT HostZoomMap
: public NotificationObserver,
public base::RefCountedThreadSafe<HostZoomMap,
BrowserThread::DeleteOnUIThread> {
@@ -80,6 +81,8 @@ class HostZoomMap
HostZoomMap* GetOriginal() const { return original_; }
private:
+ friend class base::RefCountedThreadSafe<HostZoomMap,
+ BrowserThread::DeleteOnUIThread>;
friend struct BrowserThread::DeleteOnThread<BrowserThread::UI>;
friend class DeleteTask<HostZoomMap>;
diff --git a/content/browser/in_process_webkit/dom_storage_context.h b/content/browser/in_process_webkit/dom_storage_context.h
index a23dc83..09b0ef6 100644
--- a/content/browser/in_process_webkit/dom_storage_context.h
+++ b/content/browser/in_process_webkit/dom_storage_context.h
@@ -14,6 +14,7 @@
#include "base/memory/ref_counted.h"
#include "base/string16.h"
#include "base/time.h"
+#include "content/common/content_export.h"
class DOMStorageArea;
class DOMStorageMessageFilter;
@@ -31,7 +32,7 @@ class SpecialStoragePolicy;
// on the WebKit thread unless noted otherwise.
//
// NOTE: Virtual methods facilitate mocking functions for testing.
-class DOMStorageContext {
+class CONTENT_EXPORT DOMStorageContext {
public:
DOMStorageContext(WebKitContext* webkit_context,
quota::SpecialStoragePolicy* special_storage_policy);
diff --git a/content/browser/in_process_webkit/indexed_db_context.h b/content/browser/in_process_webkit/indexed_db_context.h
index 92c614b..4094109 100644
--- a/content/browser/in_process_webkit/indexed_db_context.h
+++ b/content/browser/in_process_webkit/indexed_db_context.h
@@ -16,6 +16,7 @@
#include "base/memory/ref_counted.h"
#include "base/memory/scoped_ptr.h"
#include "content/browser/browser_thread.h"
+#include "content/common/content_export.h"
#include "googleurl/src/gurl.h"
class GURL;
@@ -35,7 +36,8 @@ class QuotaManagerProxy;
class SpecialStoragePolicy;
}
-class IndexedDBContext : public base::RefCountedThreadSafe<IndexedDBContext> {
+class CONTENT_EXPORT IndexedDBContext
+ : public base::RefCountedThreadSafe<IndexedDBContext> {
public:
IndexedDBContext(WebKitContext* webkit_context,
quota::SpecialStoragePolicy* special_storage_policy,
diff --git a/content/browser/in_process_webkit/indexed_db_key_utility_client.h b/content/browser/in_process_webkit/indexed_db_key_utility_client.h
index c822775..d8bebc6 100644
--- a/content/browser/in_process_webkit/indexed_db_key_utility_client.h
+++ b/content/browser/in_process_webkit/indexed_db_key_utility_client.h
@@ -10,6 +10,7 @@
#include "base/memory/ref_counted.h"
#include "base/string16.h"
+#include "content/common/content_export.h"
class IndexedDBKey;
class SerializedScriptValue;
@@ -39,7 +40,7 @@ class IndexedDBKeyUtilityClient {
const string16& key_path);
// Shut down the underlying implementation. Must be called on the IO thread.
- static void Shutdown();
+ CONTENT_EXPORT static void Shutdown();
private:
friend struct base::DefaultLazyInstanceTraits<IndexedDBKeyUtilityClient>;
diff --git a/content/browser/in_process_webkit/session_storage_namespace.h b/content/browser/in_process_webkit/session_storage_namespace.h
index b801bc2..47e6f32 100644
--- a/content/browser/in_process_webkit/session_storage_namespace.h
+++ b/content/browser/in_process_webkit/session_storage_namespace.h
@@ -8,6 +8,7 @@
#include "base/basictypes.h"
#include "base/memory/ref_counted.h"
+#include "content/common/content_export.h"
class WebKitContext;
@@ -32,7 +33,7 @@ class SessionStorageNamespace
SessionStorageNamespace(WebKitContext* webkit_context, int64 id);
friend class base::RefCountedThreadSafe<SessionStorageNamespace>;
- ~SessionStorageNamespace();
+ CONTENT_EXPORT ~SessionStorageNamespace();
scoped_refptr<WebKitContext> webkit_context_;
diff --git a/content/browser/in_process_webkit/webkit_context.h b/content/browser/in_process_webkit/webkit_context.h
index 8d404ce..c2f21a5 100644
--- a/content/browser/in_process_webkit/webkit_context.h
+++ b/content/browser/in_process_webkit/webkit_context.h
@@ -14,6 +14,7 @@
#include "base/time.h"
#include "content/browser/in_process_webkit/dom_storage_context.h"
#include "content/browser/in_process_webkit/indexed_db_context.h"
+#include "content/common/content_export.h"
namespace base {
class MessageLoopProxy;
@@ -31,7 +32,8 @@ class SpecialStoragePolicy;
//
// This class is created on the UI thread and accessed on the UI, IO, and WebKit
// threads.
-class WebKitContext : public base::RefCountedThreadSafe<WebKitContext> {
+class CONTENT_EXPORT WebKitContext
+ : public base::RefCountedThreadSafe<WebKitContext> {
public:
WebKitContext(bool is_incognito, const FilePath& data_path,
quota::SpecialStoragePolicy* special_storage_policy,
diff --git a/content/browser/javascript_dialogs.h b/content/browser/javascript_dialogs.h
index cc17a71..997c599 100644
--- a/content/browser/javascript_dialogs.h
+++ b/content/browser/javascript_dialogs.h
@@ -7,6 +7,7 @@
#pragma once
#include "base/string16.h"
+#include "content/common/content_export.h"
#include "ui/gfx/native_widget_types.h"
class GURL;
@@ -18,7 +19,7 @@ class Message;
namespace content {
-class DialogDelegate {
+class CONTENT_EXPORT DialogDelegate {
public:
// Returns the root native window with which to associate the dialog.
virtual gfx::NativeWindow GetDialogRootWindow() = 0;
@@ -32,7 +33,7 @@ class DialogDelegate {
// A class that invokes a JavaScript dialog must implement this interface to
// allow the dialog implementation to get needed information and return results.
-class JavaScriptDialogDelegate : public DialogDelegate {
+class CONTENT_EXPORT JavaScriptDialogDelegate : public DialogDelegate {
public:
// This callback is invoked when the dialog is closed.
virtual void OnDialogClosed(IPC::Message* reply_msg,
diff --git a/content/browser/net/browser_online_state_observer.h b/content/browser/net/browser_online_state_observer.h
index 1e5e71a..9a5b62b 100644
--- a/content/browser/net/browser_online_state_observer.h
+++ b/content/browser/net/browser_online_state_observer.h
@@ -7,11 +7,12 @@
#pragma once
#include "base/basictypes.h"
+#include "content/common/content_export.h"
#include "net/base/network_change_notifier.h"
// Listens for changes to the online state and manages sending
// updates to each RenderProcess via RenderProcessHost IPC.
-class BrowserOnlineStateObserver
+class CONTENT_EXPORT BrowserOnlineStateObserver
: public net::NetworkChangeNotifier::OnlineStateObserver {
public:
BrowserOnlineStateObserver();
diff --git a/content/browser/net/url_request_failed_dns_job.h b/content/browser/net/url_request_failed_dns_job.h
index 55d1bac..852371f 100644
--- a/content/browser/net/url_request_failed_dns_job.h
+++ b/content/browser/net/url_request_failed_dns_job.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2010 The Chromium Authors. All rights reserved.
+// Copyright (c) 2011 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// This class simulates what wininet does when a dns lookup fails.
@@ -8,6 +8,7 @@
#pragma once
#include "base/task.h"
+#include "content/common/content_export.h"
#include "net/url_request/url_request_job.h"
class URLRequestFailedDnsJob : public net::URLRequestJob {
@@ -23,7 +24,7 @@ class URLRequestFailedDnsJob : public net::URLRequestJob {
static const char kTestUrl[];
// Adds the testing URLs to the net::URLRequestFilter.
- static void AddUrlHandler();
+ CONTENT_EXPORT static void AddUrlHandler();
private:
virtual ~URLRequestFailedDnsJob();
diff --git a/content/browser/net/url_request_mock_http_job.h b/content/browser/net/url_request_mock_http_job.h
index 8c6b5fb..e2c68f8 100644
--- a/content/browser/net/url_request_mock_http_job.h
+++ b/content/browser/net/url_request_mock_http_job.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2010 The Chromium Authors. All rights reserved.
+// Copyright (c) 2011 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
@@ -10,11 +10,12 @@
#include <string>
+#include "content/common/content_export.h"
#include "net/url_request/url_request_file_job.h"
class FilePath;
-class URLRequestMockHTTPJob : public net::URLRequestFileJob {
+class CONTENT_EXPORT URLRequestMockHTTPJob : public net::URLRequestFileJob {
public:
URLRequestMockHTTPJob(net::URLRequest* request, const FilePath& file_path);
diff --git a/content/browser/net/url_request_slow_download_job.h b/content/browser/net/url_request_slow_download_job.h
index cef2adc..9cbde81 100644
--- a/content/browser/net/url_request_slow_download_job.h
+++ b/content/browser/net/url_request_slow_download_job.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2010 The Chromium Authors. All rights reserved.
+// Copyright (c) 2011 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// This class simulates a slow download. This used in a UI test to test the
@@ -13,6 +13,7 @@
#include <vector>
#include "base/task.h"
+#include "content/common/content_export.h"
#include "net/url_request/url_request_job.h"
class URLRequestSlowDownloadJob : public net::URLRequestJob {
@@ -38,7 +39,7 @@ class URLRequestSlowDownloadJob : public net::URLRequestJob {
static const char kFinishDownloadUrl[];
// Adds the testing URLs to the net::URLRequestFilter.
- static void AddUrlHandler();
+ CONTENT_EXPORT static void AddUrlHandler();
private:
virtual ~URLRequestSlowDownloadJob();
diff --git a/content/browser/net/url_request_slow_http_job.h b/content/browser/net/url_request_slow_http_job.h
index cc0458b..06d7ce6 100644
--- a/content/browser/net/url_request_slow_http_job.h
+++ b/content/browser/net/url_request_slow_http_job.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2010 The Chromium Authors. All rights reserved.
+// Copyright (c) 2011 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
@@ -10,6 +10,7 @@
#include "base/timer.h"
#include "content/browser/net/url_request_mock_http_job.h"
+#include "content/common/content_export.h"
class URLRequestSlowHTTPJob : public URLRequestMockHTTPJob {
public:
@@ -20,7 +21,7 @@ class URLRequestSlowHTTPJob : public URLRequestMockHTTPJob {
static net::URLRequest::ProtocolFactory Factory;
// Adds the testing URLs to the net::URLRequestFilter.
- static void AddUrlHandler(const FilePath& base_path);
+ CONTENT_EXPORT static void AddUrlHandler(const FilePath& base_path);
// Given the path to a file relative to base_path_, construct a mock URL.
static GURL GetMockUrl(const FilePath& path);
diff --git a/content/browser/plugin_service.h b/content/browser/plugin_service.h
index c75f467..23ef03b 100644
--- a/content/browser/plugin_service.h
+++ b/content/browser/plugin_service.h
@@ -20,6 +20,7 @@
#include "content/browser/plugin_process_host.h"
#include "content/browser/ppapi_plugin_process_host.h"
#include "content/browser/ppapi_broker_process_host.h"
+#include "content/common/content_export.h"
#include "content/common/notification_observer.h"
#include "content/common/notification_registrar.h"
#include "googleurl/src/gurl.h"
@@ -45,7 +46,7 @@ class PluginServiceFilter;
// This must be created on the main thread but it's only called on the IO/file
// thread.
-class PluginService
+class CONTENT_EXPORT PluginService
: public base::WaitableEventWatcher::Delegate,
public NotificationObserver {
public:
diff --git a/content/browser/renderer_host/backing_store_manager.h b/content/browser/renderer_host/backing_store_manager.h
index 26dcd1c..0ea14b8 100644
--- a/content/browser/renderer_host/backing_store_manager.h
+++ b/content/browser/renderer_host/backing_store_manager.h
@@ -10,6 +10,7 @@
#include "base/basictypes.h"
#include "base/process.h"
+#include "content/common/content_export.h"
#include "ui/gfx/rect.h"
#include "ui/gfx/size.h"
#include "ui/gfx/surface/transport_dib.h"
@@ -59,7 +60,7 @@ class BackingStoreManager {
static void RemoveBackingStore(RenderWidgetHost* host);
// Removes all backing stores.
- static void RemoveAllBackingStores();
+ CONTENT_EXPORT static void RemoveAllBackingStores();
// Expires the given backing store. This emulates something getting evicted
// from the cache for the purpose of testing. Returns true if the host was
@@ -67,7 +68,7 @@ class BackingStoreManager {
static bool ExpireBackingStoreForTest(RenderWidgetHost* host);
// Current size in bytes of the backing store cache.
- static size_t MemorySize();
+ CONTENT_EXPORT static size_t MemorySize();
private:
// Not intended for instantiation.
diff --git a/content/browser/renderer_host/backing_store_skia.h b/content/browser/renderer_host/backing_store_skia.h
index 57ff118a..c1d5169 100644
--- a/content/browser/renderer_host/backing_store_skia.h
+++ b/content/browser/renderer_host/backing_store_skia.h
@@ -8,6 +8,7 @@
#include "base/memory/scoped_ptr.h"
#include "content/browser/renderer_host/backing_store.h"
+#include "content/common/content_export.h"
#include "third_party/skia/include/core/SkBitmap.h"
class SkCanvas;
@@ -22,10 +23,14 @@ class Canvas;
// RWHVV, and then this backing store will be removed.
class BackingStoreSkia : public BackingStore {
public:
- BackingStoreSkia(RenderWidgetHost* widget, const gfx::Size& size);
+ CONTENT_EXPORT BackingStoreSkia(
+ RenderWidgetHost* widget,
+ const gfx::Size& size);
+
virtual ~BackingStoreSkia();
- void SkiaShowRect(const gfx::Point& point, gfx::Canvas* canvas);
+ CONTENT_EXPORT void SkiaShowRect(const gfx::Point& point,
+ gfx::Canvas* canvas);
// BackingStore implementation.
virtual size_t MemorySize();
diff --git a/content/browser/renderer_host/render_process_host.h b/content/browser/renderer_host/render_process_host.h
index 2262024..2164634 100644
--- a/content/browser/renderer_host/render_process_host.h
+++ b/content/browser/renderer_host/render_process_host.h
@@ -13,6 +13,7 @@
#include "base/process.h"
#include "base/process_util.h"
#include "base/time.h"
+#include "content/common/content_export.h"
#include "ipc/ipc_channel_proxy.h"
#include "ui/gfx/native_widget_types.h"
#include "ui/gfx/surface/transport_dib.h"
@@ -38,8 +39,8 @@ class URLRequestContextGetter;
// The concrete implementation of this class for normal use is the
// BrowserRenderProcessHost. It may also be implemented by a testing interface
// for mocking purposes.
-class RenderProcessHost : public IPC::Channel::Sender,
- public IPC::Channel::Listener {
+class CONTENT_EXPORT RenderProcessHost : public IPC::Channel::Sender,
+ public IPC::Channel::Listener {
public:
typedef IDMap<RenderProcessHost>::iterator iterator;
diff --git a/content/browser/renderer_host/render_view_host.h b/content/browser/renderer_host/render_view_host.h
index 1771256..ef02a82 100644
--- a/content/browser/renderer_host/render_view_host.h
+++ b/content/browser/renderer_host/render_view_host.h
@@ -14,6 +14,7 @@
#include "base/observer_list.h"
#include "base/process_util.h"
#include "content/browser/renderer_host/render_widget_host.h"
+#include "content/common/content_export.h"
#include "content/common/window_container_type.h"
#include "net/base/load_states.h"
#include "third_party/WebKit/Source/WebKit/chromium/public/WebConsoleMessage.h"
@@ -94,7 +95,7 @@ class URLRequestContextGetter;
// if we want to bring that and other functionality down into this object so
// it can be shared by others.
//
-class RenderViewHost : public RenderWidgetHost {
+class CONTENT_EXPORT RenderViewHost : public RenderWidgetHost {
public:
// Returns the RenderViewHost given its ID and the ID of its render process.
// Returns NULL if the IDs do not correspond to a live RenderViewHost.
diff --git a/content/browser/renderer_host/render_view_host_delegate.h b/content/browser/renderer_host/render_view_host_delegate.h
index e46a5dc..428a5bf 100644
--- a/content/browser/renderer_host/render_view_host_delegate.h
+++ b/content/browser/renderer_host/render_view_host_delegate.h
@@ -15,6 +15,7 @@
#include "base/process_util.h"
#include "base/string16.h"
#include "base/values.h"
+#include "content/common/content_export.h"
#include "content/common/view_types.h"
#include "content/common/window_container_type.h"
#include "ipc/ipc_channel.h"
@@ -64,11 +65,11 @@ class Size;
// exposing a more generic Send function on RenderViewHost and a response
// listener here to serve that need.
//
-class RenderViewHostDelegate : public IPC::Channel::Listener {
+class CONTENT_EXPORT RenderViewHostDelegate : public IPC::Channel::Listener {
public:
// View ----------------------------------------------------------------------
// Functions that can be routed directly to a view-specific class.
- class View {
+ class CONTENT_EXPORT View {
public:
// The page is trying to open a new page (e.g. a popup window). The window
// should be created associated with the given route, but it should not be
diff --git a/content/browser/renderer_host/render_view_host_factory.h b/content/browser/renderer_host/render_view_host_factory.h
index 5d0f58d..267dcf2 100644
--- a/content/browser/renderer_host/render_view_host_factory.h
+++ b/content/browser/renderer_host/render_view_host_factory.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2009 The Chromium Authors. All rights reserved.
+// Copyright (c) 2011 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -7,6 +7,7 @@
#pragma once
#include "base/basictypes.h"
+#include "content/common/content_export.h"
class RenderViewHost;
class RenderViewHostDelegate;
@@ -59,7 +60,7 @@ class RenderViewHostFactory {
private:
// The current globally registered factory. This is NULL when we should
// create the default RenderViewHosts.
- static RenderViewHostFactory* factory_;
+ CONTENT_EXPORT static RenderViewHostFactory* factory_;
DISALLOW_COPY_AND_ASSIGN(RenderViewHostFactory);
};
diff --git a/content/browser/renderer_host/render_view_host_observer.h b/content/browser/renderer_host/render_view_host_observer.h
index 2c3b7492..21e0c70 100644
--- a/content/browser/renderer_host/render_view_host_observer.h
+++ b/content/browser/renderer_host/render_view_host_observer.h
@@ -6,14 +6,15 @@
#define CONTENT_BROWSER_RENDERER_HOST_RENDER_VIEW_HOST_OBSERVER_H_
#include "ipc/ipc_channel.h"
+#include "content/common/content_export.h"
class RenderViewHost;
struct ViewMsg_Navigate_Params;
// An observer API implemented by classes which want to filter IPC messages from
// RenderViewHost.
-class RenderViewHostObserver : public IPC::Channel::Listener,
- public IPC::Message::Sender {
+class CONTENT_EXPORT RenderViewHostObserver : public IPC::Channel::Listener,
+ public IPC::Message::Sender {
public:
protected:
diff --git a/content/browser/renderer_host/render_widget_fullscreen_host.h b/content/browser/renderer_host/render_widget_fullscreen_host.h
index fce2200..63b7070 100644
--- a/content/browser/renderer_host/render_widget_fullscreen_host.h
+++ b/content/browser/renderer_host/render_widget_fullscreen_host.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2010 The Chromium Authors. All rights reserved.
+// Copyright (c) 2011 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -6,8 +6,9 @@
#define CONTENT_BROWSER_RENDERER_HOST_RENDER_WIDGET_FULLSCREEN_HOST_H_
#include "content/browser/renderer_host/render_widget_host.h"
+#include "content/common/content_export.h"
-class RenderWidgetFullscreenHost : public RenderWidgetHost {
+class CONTENT_EXPORT RenderWidgetFullscreenHost : public RenderWidgetHost {
public:
RenderWidgetFullscreenHost(RenderProcessHost* process, int routing_id);
};
diff --git a/content/browser/renderer_host/render_widget_host.h b/content/browser/renderer_host/render_widget_host.h
index 776bbc6..16cfd97 100644
--- a/content/browser/renderer_host/render_widget_host.h
+++ b/content/browser/renderer_host/render_widget_host.h
@@ -15,6 +15,7 @@
#include "base/process_util.h"
#include "base/string16.h"
#include "base/timer.h"
+#include "content/common/content_export.h"
#include "content/common/native_web_keyboard_event.h"
#include "content/common/property_bag.h"
#include "ipc/ipc_channel.h"
@@ -123,8 +124,8 @@ struct ViewHostMsg_UpdateRect_Params;
// anything else. When the view is live, these messages are forwarded to it by
// the RenderWidgetHost's IPC message map.
//
-class RenderWidgetHost : public IPC::Channel::Listener,
- public IPC::Channel::Sender {
+class CONTENT_EXPORT RenderWidgetHost : public IPC::Channel::Listener,
+ public IPC::Channel::Sender {
public:
// Used as the details object for a
// RENDER_WIDGET_HOST_DID_RECEIVE_PAINT_AT_SIZE_ACK notification.
diff --git a/content/browser/renderer_host/render_widget_host_view.h b/content/browser/renderer_host/render_widget_host_view.h
index 3a85148..08b500f 100644
--- a/content/browser/renderer_host/render_widget_host_view.h
+++ b/content/browser/renderer_host/render_widget_host_view.h
@@ -14,6 +14,7 @@
#include <vector>
#include "base/process_util.h"
+#include "content/common/content_export.h"
#include "third_party/skia/include/core/SkBitmap.h"
#include "third_party/skia/include/core/SkColor.h"
#include "third_party/WebKit/Source/WebKit/chromium/public/WebInputEvent.h"
@@ -64,7 +65,7 @@ struct WebScreenInfo;
// changes.
class RenderWidgetHostView {
public:
- virtual ~RenderWidgetHostView();
+ CONTENT_EXPORT virtual ~RenderWidgetHostView();
// Platform-specific creator. Use this to construct new RenderWidgetHostViews
// rather than using RenderWidgetHostViewWin & friends.
@@ -315,7 +316,7 @@ class RenderWidgetHostView {
// Subclasses should override this method to do what is appropriate to set
// the custom background for their platform.
- virtual void SetBackground(const SkBitmap& background);
+ CONTENT_EXPORT virtual void SetBackground(const SkBitmap& background);
const SkBitmap& background() const { return background_; }
virtual void OnAccessibilityNotifications(
diff --git a/content/browser/renderer_host/render_widget_host_view_win.h b/content/browser/renderer_host/render_widget_host_view_win.h
index 0f68b42..a1656a6 100644
--- a/content/browser/renderer_host/render_widget_host_view_win.h
+++ b/content/browser/renderer_host/render_widget_host_view_win.h
@@ -13,12 +13,14 @@
#include <vector>
+#include "base/compiler_specific.h"
#include "base/memory/scoped_ptr.h"
#include "base/memory/scoped_vector.h"
#include "base/task.h"
#include "base/win/scoped_comptr.h"
#include "content/browser/accessibility/browser_accessibility_manager.h"
#include "content/browser/renderer_host/render_widget_host_view.h"
+#include "content/common/content_export.h"
#include "content/common/notification_observer.h"
#include "content/common/notification_registrar.h"
#include "ui/base/win/ime_input.h"
@@ -44,7 +46,7 @@ class ViewProp;
typedef CWinTraits<WS_CHILD | WS_CLIPCHILDREN | WS_CLIPSIBLINGS, 0>
RenderWidgetHostHWNDTraits;
-extern const wchar_t kRenderWidgetHostHWNDClass[];
+CONTENT_EXPORT extern const wchar_t kRenderWidgetHostHWNDClass[];
///////////////////////////////////////////////////////////////////////////////
// RenderWidgetHostViewWin
@@ -70,14 +72,14 @@ class RenderWidgetHostViewWin
public BrowserAccessibilityDelegate {
public:
// The view will associate itself with the given widget.
- explicit RenderWidgetHostViewWin(RenderWidgetHost* widget);
+ CONTENT_EXPORT explicit RenderWidgetHostViewWin(RenderWidgetHost* widget);
virtual ~RenderWidgetHostViewWin();
- void CreateWnd(HWND parent);
+ CONTENT_EXPORT void CreateWnd(HWND parent);
void ScheduleComposite();
- IAccessible* GetIAccessible();
+ CONTENT_EXPORT IAccessible* GetIAccessible();
DECLARE_WND_CLASS_EX(kRenderWidgetHostHWNDClass, CS_DBLCLKS, 0);
diff --git a/content/browser/renderer_host/resource_dispatcher_host.h b/content/browser/renderer_host/resource_dispatcher_host.h
index 731657f..2bbde89 100644
--- a/content/browser/renderer_host/resource_dispatcher_host.h
+++ b/content/browser/renderer_host/resource_dispatcher_host.h
@@ -24,6 +24,7 @@
#include "base/timer.h"
#include "content/browser/renderer_host/resource_queue.h"
#include "content/common/child_process_info.h"
+#include "content/common/content_export.h"
#include "content/common/content_notification_types.h"
#include "ipc/ipc_message.h"
#include "net/url_request/url_request.h"
@@ -59,7 +60,7 @@ namespace webkit_blob {
class DeletableFileReference;
}
-class ResourceDispatcherHost : public net::URLRequest::Delegate {
+class CONTENT_EXPORT ResourceDispatcherHost : public net::URLRequest::Delegate {
public:
explicit ResourceDispatcherHost(
const ResourceQueue::DelegateSet& resource_queue_delegates);
diff --git a/content/browser/renderer_host/resource_dispatcher_host_login_delegate.h b/content/browser/renderer_host/resource_dispatcher_host_login_delegate.h
index e0e63c3..ba60db3 100644
--- a/content/browser/renderer_host/resource_dispatcher_host_login_delegate.h
+++ b/content/browser/renderer_host/resource_dispatcher_host_login_delegate.h
@@ -8,11 +8,12 @@
#include "base/basictypes.h"
#include "base/memory/ref_counted.h"
+#include "content/common/content_export.h"
// Interface for getting login credentials for HTTP auth requests. When the
// implementation has the credentials, it shoudl call the Requests's SetAuth
// method.
-class ResourceDispatcherHostLoginDelegate
+class CONTENT_EXPORT ResourceDispatcherHostLoginDelegate
: public base::RefCountedThreadSafe<ResourceDispatcherHostLoginDelegate> {
public:
ResourceDispatcherHostLoginDelegate();
diff --git a/content/browser/renderer_host/resource_dispatcher_host_request_info.h b/content/browser/renderer_host/resource_dispatcher_host_request_info.h
index 0867c6c..5a0e0a2 100644
--- a/content/browser/renderer_host/resource_dispatcher_host_request_info.h
+++ b/content/browser/renderer_host/resource_dispatcher_host_request_info.h
@@ -11,6 +11,7 @@
#include "base/basictypes.h"
#include "base/time.h"
#include "content/common/child_process_info.h"
+#include "content/common/content_export.h"
#include "content/common/page_transition_types.h"
#include "net/base/load_states.h"
#include "net/url_request/url_request.h"
@@ -71,7 +72,8 @@ class ResourceDispatcherHostRequestInfo : public net::URLRequest::UserData {
ResourceDispatcherHostLoginDelegate* login_delegate() const {
return login_delegate_.get();
}
- void set_login_delegate(ResourceDispatcherHostLoginDelegate* ld);
+ CONTENT_EXPORT void set_login_delegate(
+ ResourceDispatcherHostLoginDelegate* ld);
// Pointer to the SSL auth, or NULL if there is none for this request.
SSLClientAuthHandler* ssl_client_auth_handler() const {
diff --git a/content/browser/renderer_host/resource_queue.h b/content/browser/renderer_host/resource_queue.h
index 835b367..9ad148df 100644
--- a/content/browser/renderer_host/resource_queue.h
+++ b/content/browser/renderer_host/resource_queue.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2009 The Chromium Authors. All rights reserved.
+// Copyright (c) 2011 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -10,6 +10,7 @@
#include <set>
#include "base/basictypes.h"
+#include "content/common/content_export.h"
namespace net {
class URLRequest;
@@ -39,7 +40,7 @@ class ResourceQueueDelegate {
virtual void WillShutdownResourceQueue() = 0;
protected:
- virtual ~ResourceQueueDelegate();
+ CONTENT_EXPORT virtual ~ResourceQueueDelegate();
};
// Makes it easy to delay starting URL requests until specified conditions are
@@ -76,8 +77,8 @@ class ResourceQueue {
// A delegate should call StartDelayedRequest when it wants to allow the
// request to start. If it was the last delegate that demanded the request
// to be delayed, the request will be started.
- void StartDelayedRequest(ResourceQueueDelegate* delegate,
- const GlobalRequestID& request_id);
+ CONTENT_EXPORT void StartDelayedRequest(ResourceQueueDelegate* delegate,
+ const GlobalRequestID& request_id);
private:
typedef std::map<GlobalRequestID, net::URLRequest*> RequestMap;
diff --git a/content/browser/resource_context.h b/content/browser/resource_context.h
index f2ac4c5..f53de50 100644
--- a/content/browser/resource_context.h
+++ b/content/browser/resource_context.h
@@ -10,6 +10,7 @@
#include "base/basictypes.h"
#include "base/callback.h"
#include "base/memory/ref_counted.h"
+#include "content/common/content_export.h"
class ChromeAppCacheService;
class ChromeBlobStorageContext;
@@ -39,7 +40,7 @@ namespace content {
// resource loading. It lives on the IO thread, although it is constructed on
// the UI thread. ResourceContext doesn't own anything it points to, it just
// holds pointers to relevant objects to resource loading.
-class ResourceContext {
+class CONTENT_EXPORT ResourceContext {
public:
virtual ~ResourceContext();
diff --git a/content/browser/site_instance.h b/content/browser/site_instance.h
index 84a0bdc..6ff2588 100644
--- a/content/browser/site_instance.h
+++ b/content/browser/site_instance.h
@@ -7,6 +7,7 @@
#pragma once
#include "content/browser/renderer_host/render_process_host.h"
+#include "content/common/content_export.h"
#include "content/common/notification_observer.h"
#include "content/common/notification_registrar.h"
#include "googleurl/src/gurl.h"
@@ -51,8 +52,8 @@ class BrowserContext;
// tabs with no NavigationEntries or in NavigationEntries in the history.
//
///////////////////////////////////////////////////////////////////////////////
-class SiteInstance : public base::RefCounted<SiteInstance>,
- public NotificationObserver {
+class CONTENT_EXPORT SiteInstance : public base::RefCounted<SiteInstance>,
+ public NotificationObserver {
public:
// Returns a unique ID for this SiteInstance.
int32 id() { return id_; }
diff --git a/content/browser/speech/speech_input_manager.h b/content/browser/speech/speech_input_manager.h
index dbfcf1f..a68e790 100644
--- a/content/browser/speech/speech_input_manager.h
+++ b/content/browser/speech/speech_input_manager.h
@@ -6,6 +6,7 @@
#define CONTENT_BROWSER_SPEECH_SPEECH_INPUT_MANAGER_H_
#include "base/basictypes.h"
+#include "content/common/content_export.h"
#include "content/common/speech_input_result.h"
#include "ui/gfx/rect.h"
@@ -30,13 +31,13 @@ class SpeechInputManager {
virtual ~Delegate() {}
};
- SpeechInputManager();
+ CONTENT_EXPORT SpeechInputManager();
// Invokes the platform provided microphone settings UI in a non-blocking way,
// via the BrowserThread::FILE thread.
static void ShowAudioInputSettings();
- virtual ~SpeechInputManager();
+ CONTENT_EXPORT virtual ~SpeechInputManager();
// Handlers for requests from render views.
diff --git a/content/browser/speech/speech_recognizer.h b/content/browser/speech/speech_recognizer.h
index 264194d..f109e92 100644
--- a/content/browser/speech/speech_recognizer.h
+++ b/content/browser/speech/speech_recognizer.h
@@ -14,6 +14,7 @@
#include "content/browser/speech/audio_encoder.h"
#include "content/browser/speech/endpointer/endpointer.h"
#include "content/browser/speech/speech_recognition_request.h"
+#include "content/common/content_export.h"
#include "media/audio/audio_input_controller.h"
namespace speech_input {
@@ -78,27 +79,27 @@ class SpeechRecognizer
virtual ~Delegate() {}
};
- SpeechRecognizer(Delegate* delegate,
- int caller_id,
- const std::string& language,
- const std::string& grammar,
- bool censor_results,
- const std::string& hardware_info,
- const std::string& origin_url);
+ CONTENT_EXPORT SpeechRecognizer(Delegate* delegate,
+ int caller_id,
+ const std::string& language,
+ const std::string& grammar,
+ bool censor_results,
+ const std::string& hardware_info,
+ const std::string& origin_url);
virtual ~SpeechRecognizer();
// Starts audio recording and does recognition after recording ends. The same
// SpeechRecognizer instance can be used multiple times for speech recognition
// though each recognition request can be made only after the previous one
// completes (i.e. after receiving Delegate::DidCompleteRecognition).
- bool StartRecording();
+ CONTENT_EXPORT bool StartRecording();
// Stops recording audio and starts recognition.
- void StopRecording();
+ CONTENT_EXPORT void StopRecording();
// Stops recording audio and cancels recognition. Any audio recorded so far
// gets discarded.
- void CancelRecognition();
+ CONTENT_EXPORT void CancelRecognition();
// AudioInputController::EventHandler methods.
virtual void OnCreated(media::AudioInputController* controller) { }
diff --git a/content/browser/ssl/ssl_client_auth_handler.h b/content/browser/ssl/ssl_client_auth_handler.h
index 4657c84..9905a68 100644
--- a/content/browser/ssl/ssl_client_auth_handler.h
+++ b/content/browser/ssl/ssl_client_auth_handler.h
@@ -9,6 +9,7 @@
#include "base/basictypes.h"
#include "base/memory/ref_counted.h"
#include "content/browser/browser_thread.h"
+#include "content/common/content_export.h"
#include "content/common/notification_observer.h"
#include "content/common/notification_registrar.h"
#include "net/base/ssl_cert_request_info.h"
@@ -22,7 +23,7 @@ class X509Certificate;
// authentication by the user.
// It is self-owned and deletes itself when the UI reports the user selection or
// when the net::URLRequest is cancelled.
-class SSLClientAuthHandler
+class CONTENT_EXPORT SSLClientAuthHandler
: public base::RefCountedThreadSafe<SSLClientAuthHandler,
BrowserThread::DeleteOnIOThread> {
public:
@@ -54,6 +55,8 @@ class SSLClientAuthHandler
virtual ~SSLClientAuthHandler();
private:
+ friend class base::RefCountedThreadSafe<SSLClientAuthHandler,
+ BrowserThread::DeleteOnIOThread>;
friend class BrowserThread;
friend class DeleteTask<SSLClientAuthHandler>;
@@ -74,7 +77,7 @@ class SSLClientAuthHandler
DISALLOW_COPY_AND_ASSIGN(SSLClientAuthHandler);
};
-class SSLClientAuthObserver : public NotificationObserver {
+class CONTENT_EXPORT SSLClientAuthObserver : public NotificationObserver {
public:
SSLClientAuthObserver(net::SSLCertRequestInfo* cert_request_info,
SSLClientAuthHandler* handler);
diff --git a/content/browser/ssl/ssl_error_handler.h b/content/browser/ssl/ssl_error_handler.h
index b0084d3..d5a360a 100644
--- a/content/browser/ssl/ssl_error_handler.h
+++ b/content/browser/ssl/ssl_error_handler.h
@@ -12,6 +12,7 @@
#include "base/memory/ref_counted.h"
#include "content/browser/renderer_host/global_request_id.h"
#include "content/browser/ssl/ssl_manager.h"
+#include "content/common/content_export.h"
#include "googleurl/src/gurl.h"
#include "webkit/glue/resource_type.h"
@@ -55,7 +56,7 @@ class SSLErrorHandler : public base::RefCountedThreadSafe<SSLErrorHandler> {
// Cancels the associated net::URLRequest.
// This method can be called from OnDispatchFailed and OnDispatched.
- void CancelRequest();
+ CONTENT_EXPORT void CancelRequest();
// Continue the net::URLRequest ignoring any previous errors. Note that some
// errors cannot be ignored, in which case this will result in the request
diff --git a/content/browser/ssl/ssl_host_state.h b/content/browser/ssl/ssl_host_state.h
index 943f44e..7bceaa7 100644
--- a/content/browser/ssl/ssl_host_state.h
+++ b/content/browser/ssl/ssl_host_state.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2010 The Chromium Authors. All rights reserved.
+// Copyright (c) 2011 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -10,8 +10,10 @@
#include <map>
#include <set>
+#include "base/compiler_specific.h"
#include "base/basictypes.h"
#include "base/threading/non_thread_safe.h"
+#include "content/common/content_export.h"
#include "googleurl/src/gurl.h"
#include "net/base/x509_certificate.h"
@@ -23,7 +25,8 @@
// from the SSLManager because this state is shared across many navigation
// controllers.
-class SSLHostState : public base::NonThreadSafe {
+class CONTENT_EXPORT SSLHostState
+ : NON_EXPORTED_BASE(public base::NonThreadSafe) {
public:
SSLHostState();
~SSLHostState();
diff --git a/content/browser/ssl/ssl_manager.h b/content/browser/ssl/ssl_manager.h
index 07e3a57..1e59e7b 100644
--- a/content/browser/ssl/ssl_manager.h
+++ b/content/browser/ssl/ssl_manager.h
@@ -11,6 +11,7 @@
#include "base/basictypes.h"
#include "base/memory/scoped_ptr.h"
#include "content/browser/ssl/ssl_policy_backend.h"
+#include "content/common/content_export.h"
#include "content/common/notification_observer.h"
#include "content/common/notification_registrar.h"
#include "googleurl/src/gurl.h"
@@ -59,11 +60,11 @@ class SSLManager : public NotificationObserver {
int cert_status,
int security_bits,
int connection_status);
- static bool DeserializeSecurityInfo(const std::string& state,
- int* cert_id,
- int* cert_status,
- int* security_bits,
- int* connection_status);
+ CONTENT_EXPORT static bool DeserializeSecurityInfo(const std::string& state,
+ int* cert_id,
+ int* cert_status,
+ int* security_bits,
+ int* connection_status);
// Construct an SSLManager for the specified tab.
// If |delegate| is NULL, SSLPolicy::GetDefaultPolicy() is used.
@@ -86,7 +87,7 @@ class SSLManager : public NotificationObserver {
void DidRunInsecureContent(const std::string& security_origin);
// Called to determine if there were any processed SSL errors from request.
- bool ProcessedSSLErrorFromRequest() const;
+ CONTENT_EXPORT bool ProcessedSSLErrorFromRequest() const;
// Entry point for navigation. This function begins the process of updating
// the security UI when the main frame navigates to a new URL.
diff --git a/content/browser/tab_contents/interstitial_page.h b/content/browser/tab_contents/interstitial_page.h
index 8be72fd..d3b4c70 100644
--- a/content/browser/tab_contents/interstitial_page.h
+++ b/content/browser/tab_contents/interstitial_page.h
@@ -12,6 +12,7 @@
#include "base/memory/scoped_ptr.h"
#include "base/process_util.h"
#include "content/browser/renderer_host/render_view_host_delegate.h"
+#include "content/common/content_export.h"
#include "content/common/notification_observer.h"
#include "content/common/notification_registrar.h"
#include "content/common/renderer_preferences.h"
@@ -40,8 +41,8 @@ enum ResourceRequestAction {
CANCEL
};
-class InterstitialPage : public NotificationObserver,
- public RenderViewHostDelegate {
+class CONTENT_EXPORT InterstitialPage : public NotificationObserver,
+ public RenderViewHostDelegate {
public:
// The different state of actions the user can take in an interstitial.
enum ActionState {
diff --git a/content/browser/tab_contents/navigation_controller.h b/content/browser/tab_contents/navigation_controller.h
index 62aa198..d63a1ed 100644
--- a/content/browser/tab_contents/navigation_controller.h
+++ b/content/browser/tab_contents/navigation_controller.h
@@ -15,6 +15,7 @@
#include "base/time.h"
#include "googleurl/src/gurl.h"
#include "content/browser/ssl/ssl_manager.h"
+#include "content/common/content_export.h"
#include "content/common/navigation_types.h"
#include "content/common/page_transition_types.h"
@@ -34,7 +35,7 @@ struct LoadCommittedDetails;
//
// The NavigationController also owns all TabContents for the tab. This is to
// make sure that we have at most one TabContents instance per type.
-class NavigationController {
+class CONTENT_EXPORT NavigationController {
public:
enum ReloadType {
diff --git a/content/browser/tab_contents/navigation_details.h b/content/browser/tab_contents/navigation_details.h
index ba121ae..7ed97ae 100644
--- a/content/browser/tab_contents/navigation_details.h
+++ b/content/browser/tab_contents/navigation_details.h
@@ -8,6 +8,7 @@
#include <string>
#include "content/common/navigation_types.h"
+#include "content/common/content_export.h"
#include "googleurl/src/gurl.h"
class NavigationEntry;
@@ -18,7 +19,7 @@ namespace content {
// Provides the details for a NOTIFY_NAV_ENTRY_COMMITTED notification.
// TODO(brettw) this mostly duplicates ProvisionalLoadDetails, it would be
// nice to unify these somehow.
-struct LoadCommittedDetails {
+struct CONTENT_EXPORT LoadCommittedDetails {
// By default, the entry will be filled according to a new main frame
// navigation.
LoadCommittedDetails();
diff --git a/content/browser/tab_contents/navigation_entry.h b/content/browser/tab_contents/navigation_entry.h
index c86e75d..2ed55b8 100644
--- a/content/browser/tab_contents/navigation_entry.h
+++ b/content/browser/tab_contents/navigation_entry.h
@@ -10,6 +10,7 @@
#include "base/basictypes.h"
#include "base/memory/ref_counted.h"
+#include "content/common/content_export.h"
#include "content/common/page_transition_types.h"
#include "content/common/page_type.h"
#include "content/common/security_style.h"
@@ -28,7 +29,7 @@ class SiteInstance;
// URL which is used for our user interface.
//
////////////////////////////////////////////////////////////////////////////////
-class NavigationEntry {
+class CONTENT_EXPORT NavigationEntry {
public:
// SSL -----------------------------------------------------------------------
@@ -50,7 +51,7 @@ class NavigationEntry {
RAN_INSECURE_CONTENT = 1 << 1,
};
- SSLStatus();
+ CONTENT_EXPORT SSLStatus();
bool Equals(const SSLStatus& status) const {
return security_style_ == status.security_style_ &&
diff --git a/content/browser/tab_contents/page_navigator.h b/content/browser/tab_contents/page_navigator.h
index 64ac29d..a1bccd8 100644
--- a/content/browser/tab_contents/page_navigator.h
+++ b/content/browser/tab_contents/page_navigator.h
@@ -12,13 +12,14 @@
#include <string>
+#include "content/common/content_export.h"
#include "content/common/page_transition_types.h"
#include "googleurl/src/gurl.h"
#include "webkit/glue/window_open_disposition.h"
class TabContents;
-struct OpenURLParams {
+struct CONTENT_EXPORT OpenURLParams {
OpenURLParams(const GURL& url,
const GURL& referrer,
WindowOpenDisposition disposition,
@@ -43,7 +44,7 @@ class TabContents;
OpenURLParams();
};
-class PageNavigator {
+class CONTENT_EXPORT PageNavigator {
public:
// Deprecated. Please use the one-argument variant instead.
// TODO(adriansc): Remove this method when refactoring changed all call sites.
diff --git a/content/browser/tab_contents/render_view_host_manager.h b/content/browser/tab_contents/render_view_host_manager.h
index d074546..1fe6a4f 100644
--- a/content/browser/tab_contents/render_view_host_manager.h
+++ b/content/browser/tab_contents/render_view_host_manager.h
@@ -10,6 +10,7 @@
#include "base/logging.h"
#include "base/memory/scoped_ptr.h"
#include "content/browser/renderer_host/render_view_host_delegate.h"
+#include "content/common/content_export.h"
#include "content/common/notification_observer.h"
#include "content/common/notification_registrar.h"
#include "content/browser/site_instance.h"
@@ -41,7 +42,7 @@ class RenderViewHostManager
// There is additional complexity that some of the functions we need in
// TabContents are inherited and non-virtual. These are named with
// "RenderManager" so that the duplicate implementation of them will be clear.
- class Delegate {
+ class CONTENT_EXPORT Delegate {
public:
// See tab_contents.h's implementation for more.
virtual bool CreateRenderViewForRenderManager(
diff --git a/content/browser/tab_contents/tab_contents.h b/content/browser/tab_contents/tab_contents.h
index 8b8e4ed..1146cd8 100644
--- a/content/browser/tab_contents/tab_contents.h
+++ b/content/browser/tab_contents/tab_contents.h
@@ -25,6 +25,7 @@
#include "content/browser/tab_contents/render_view_host_manager.h"
#include "content/browser/tab_contents/tab_contents_observer.h"
#include "content/browser/webui/web_ui.h"
+#include "content/common/content_export.h"
#include "content/common/property_bag.h"
#include "content/common/renderer_preferences.h"
#include "net/base/load_states.h"
@@ -58,10 +59,10 @@ struct ViewHostMsg_RunFileChooser_Params;
// Describes what goes in the main content area of a tab. TabContents is
// the only type of TabContents, and these should be merged together.
-class TabContents : public PageNavigator,
- public RenderViewHostDelegate,
- public RenderViewHostManager::Delegate,
- public content::JavaScriptDialogDelegate {
+class CONTENT_EXPORT TabContents : public PageNavigator,
+ public RenderViewHostDelegate,
+ public RenderViewHostManager::Delegate,
+ public content::JavaScriptDialogDelegate {
public:
// Flags passed to the TabContentsDelegate.NavigationStateChanged to tell it
// what has changed. Combine them to update more than one thing.
diff --git a/content/browser/tab_contents/tab_contents_delegate.h b/content/browser/tab_contents/tab_contents_delegate.h
index 5a69298a..c9a5b77 100644
--- a/content/browser/tab_contents/tab_contents_delegate.h
+++ b/content/browser/tab_contents/tab_contents_delegate.h
@@ -11,6 +11,7 @@
#include "base/basictypes.h"
#include "content/browser/tab_contents/navigation_entry.h"
+#include "content/common/content_export.h"
#include "content/common/navigation_types.h"
#include "content/common/page_transition_types.h"
#include "ui/gfx/native_widget_types.h"
@@ -44,7 +45,7 @@ class FilePath;
// Objects implement this interface to get notified about changes in the
// TabContents and to provide necessary functionality.
-class TabContentsDelegate {
+class CONTENT_EXPORT TabContentsDelegate {
public:
TabContentsDelegate();
diff --git a/content/browser/tab_contents/tab_contents_observer.h b/content/browser/tab_contents/tab_contents_observer.h
index e3d0405..72db868 100644
--- a/content/browser/tab_contents/tab_contents_observer.h
+++ b/content/browser/tab_contents/tab_contents_observer.h
@@ -6,6 +6,7 @@
#define CONTENT_BROWSER_TAB_CONTENTS_TAB_CONTENTS_OBSERVER_H_
#include "content/browser/tab_contents/navigation_controller.h"
+#include "content/common/content_export.h"
#include "content/common/page_transition_types.h"
#include "ipc/ipc_channel.h"
#include "webkit/glue/window_open_disposition.h"
@@ -15,8 +16,8 @@ struct ViewHostMsg_FrameNavigate_Params;
// An observer API implemented by classes which are interested in various page
// load events from TabContents. They also get a chance to filter IPC messages.
-class TabContentsObserver : public IPC::Channel::Listener,
- public IPC::Message::Sender {
+class CONTENT_EXPORT TabContentsObserver : public IPC::Channel::Listener,
+ public IPC::Message::Sender {
public:
virtual void RenderViewCreated(RenderViewHost* render_view_host);
virtual void NavigateToPendingEntry(
diff --git a/content/browser/tab_contents/tab_contents_view.h b/content/browser/tab_contents/tab_contents_view.h
index 0726150..8134ac5 100644
--- a/content/browser/tab_contents/tab_contents_view.h
+++ b/content/browser/tab_contents/tab_contents_view.h
@@ -10,6 +10,7 @@
#include "base/basictypes.h"
#include "content/browser/renderer_host/render_view_host_delegate.h"
+#include "content/common/content_export.h"
#include "ui/gfx/native_widget_types.h"
#include "ui/gfx/rect.h"
#include "ui/gfx/size.h"
@@ -23,7 +24,7 @@ class TabContents;
// dependent web contents views. The TabContents uses this interface to talk to
// them. View-related messages will also get forwarded directly to this class
// from RenderViewHost via RenderViewHostDelegate::View.
-class TabContentsView : public RenderViewHostDelegate::View {
+class CONTENT_EXPORT TabContentsView : public RenderViewHostDelegate::View {
public:
virtual ~TabContentsView();
diff --git a/content/browser/trace_controller.h b/content/browser/trace_controller.h
index 4c3d9f3..1e7d41b 100644
--- a/content/browser/trace_controller.h
+++ b/content/browser/trace_controller.h
@@ -13,6 +13,7 @@
#include "base/memory/ref_counted.h"
#include "base/memory/singleton.h"
#include "base/task.h"
+#include "content/common/content_export.h"
class TraceMessageFilter;
@@ -36,7 +37,7 @@ class TraceSubscriber {
// trace status and collect trace data. Only the browser UI thread is allowed
// to interact with the TraceController object. All calls on the TraceSubscriber
// happen on the UI thread.
-class TraceController {
+class CONTENT_EXPORT TraceController {
public:
static TraceController* GetInstance();
diff --git a/content/browser/user_metrics.h b/content/browser/user_metrics.h
index 7c322b1..ae04af3 100644
--- a/content/browser/user_metrics.h
+++ b/content/browser/user_metrics.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2010 The Chromium Authors. All rights reserved.
+// Copyright (c) 2011 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -8,6 +8,8 @@
#include <string>
+#include "content/common/content_export.h"
+
// This module provides some helper functions for logging actions tracked by
// the user metrics system.
@@ -21,7 +23,7 @@ struct UserMetricsAction {
};
-class UserMetrics {
+class CONTENT_EXPORT UserMetrics {
public:
// Record that the user performed an action.
// "Action" here means a user-generated event:
diff --git a/content/browser/utility_process_host.h b/content/browser/utility_process_host.h
index 1f68c2f..9018818 100644
--- a/content/browser/utility_process_host.h
+++ b/content/browser/utility_process_host.h
@@ -13,6 +13,7 @@
#include "base/memory/ref_counted.h"
#include "content/browser/browser_child_process_host.h"
#include "content/browser/browser_thread.h"
+#include "content/common/content_export.h"
// This class acts as the browser-side host to a utility child process. A
// utility process is a short-lived sandboxed process that is created to run
@@ -21,12 +22,12 @@
// If you need multiple batches of work to be done in the sandboxed process,
// use StartBatchMode(), then multiple calls to StartFooBar(p),
// then finish with EndBatchMode().
-class UtilityProcessHost : public BrowserChildProcessHost {
+class CONTENT_EXPORT UtilityProcessHost : public BrowserChildProcessHost {
public:
// An interface to be implemented by consumers of the utility process to
// get results back. All functions are called on the thread passed along
// to UtilityProcessHost.
- class Client : public base::RefCountedThreadSafe<Client> {
+ class CONTENT_EXPORT Client : public base::RefCountedThreadSafe<Client> {
public:
Client();
diff --git a/content/browser/webui/web_ui.h b/content/browser/webui/web_ui.h
index 377df55..80f0342 100644
--- a/content/browser/webui/web_ui.h
+++ b/content/browser/webui/web_ui.h
@@ -13,6 +13,7 @@
#include "base/callback_old.h"
#include "base/compiler_specific.h"
#include "base/string16.h"
+#include "content/common/content_export.h"
#include "content/common/page_transition_types.h"
#include "ipc/ipc_channel.h"
@@ -32,7 +33,7 @@ class Value;
//
// NOTE: If you're creating a new WebUI for Chrome code, make sure you extend
// ChromeWebUI.
-class WebUI : public IPC::Channel::Listener {
+class CONTENT_EXPORT WebUI : public IPC::Channel::Listener {
public:
explicit WebUI(TabContents* contents);
virtual ~WebUI();
@@ -198,7 +199,7 @@ class WebUI : public IPC::Channel::Listener {
// Messages sent from the DOM are forwarded via the WebUI to handler
// classes. These objects are owned by WebUI and destroyed when the
// host is destroyed.
-class WebUIMessageHandler {
+class CONTENT_EXPORT WebUIMessageHandler {
public:
WebUIMessageHandler();
virtual ~WebUIMessageHandler();
diff --git a/content/common/child_process.h b/content/common/child_process.h
index e3786ae..53b77a5 100644
--- a/content/common/child_process.h
+++ b/content/common/child_process.h
@@ -10,12 +10,13 @@
#include "base/memory/scoped_ptr.h"
#include "base/threading/thread.h"
#include "base/synchronization/waitable_event.h"
+#include "content/common/content_export.h"
class ChildThread;
// Base class for child processes of the browser process (i.e. renderer and
// plugin host). This is a singleton object for each child process.
-class ChildProcess {
+class CONTENT_EXPORT ChildProcess {
public:
// Child processes should have an object that derives from this class.
// Normally you would immediately call set_main_thread after construction.
diff --git a/content/common/child_process_host.h b/content/common/child_process_host.h
index 20708c2..5ffb8d9 100644
--- a/content/common/child_process_host.h
+++ b/content/common/child_process_host.h
@@ -17,6 +17,7 @@
#include "base/basictypes.h"
#include "base/memory/scoped_ptr.h"
+#include "content/common/content_export.h"
#include "content/common/content_notification_types.h"
#include "ipc/ipc_channel_proxy.h"
@@ -30,8 +31,8 @@ class Message;
// Provides common functionality for hosting a child process and processing IPC
// messages between the host and the child process. Subclasses are responsible
// for the actual launching and terminating of the child processes.
-class ChildProcessHost : public IPC::Channel::Listener,
- public IPC::Message::Sender {
+class CONTENT_EXPORT ChildProcessHost : public IPC::Channel::Listener,
+ public IPC::Message::Sender {
public:
// These flags may be passed to GetChildPath in order to alter its behavior,
diff --git a/content/common/child_process_info.h b/content/common/child_process_info.h
index a0c8c27..a0f6e10 100644
--- a/content/common/child_process_info.h
+++ b/content/common/child_process_info.h
@@ -10,9 +10,10 @@
#include "base/process.h"
#include "base/string16.h"
+#include "content/common/content_export.h"
// Holds information about a child process.
-class ChildProcessInfo {
+class CONTENT_EXPORT ChildProcessInfo {
public:
// NOTE: Do not remove or reorder the elements in this enum, and only add new
// items at the end. We depend on these specific values in a histogram.
diff --git a/content/common/child_process_messages.h b/content/common/child_process_messages.h
index b48275d..a503423 100644
--- a/content/common/child_process_messages.h
+++ b/content/common/child_process_messages.h
@@ -5,9 +5,13 @@
// Common IPC messages used for child processes.
// Multiply-included message file, hence no include guard.
+#include "content/common/content_export.h"
#include "googleurl/src/gurl.h"
#include "ipc/ipc_message_macros.h"
+#undef IPC_MESSAGE_EXPORT
+#define IPC_MESSAGE_EXPORT CONTENT_EXPORT
+
#define IPC_MESSAGE_START ChildProcessMsgStart
// Messages sent from the browser to the child process.
diff --git a/content/common/child_thread.h b/content/common/child_thread.h
index e1d34e8..8956ff2 100644
--- a/content/common/child_thread.h
+++ b/content/common/child_thread.h
@@ -8,6 +8,7 @@
#include "base/basictypes.h"
#include "base/memory/scoped_ptr.h"
+#include "content/common/content_export.h"
#include "content/common/message_router.h"
#include "webkit/glue/resource_loader_bridge.h"
@@ -24,8 +25,8 @@ class SyncMessageFilter;
}
// The main thread of a child process derives from this class.
-class ChildThread : public IPC::Channel::Listener,
- public IPC::Message::Sender {
+class CONTENT_EXPORT ChildThread : public IPC::Channel::Listener,
+ public IPC::Message::Sender {
public:
// Creates the thread.
ChildThread();
diff --git a/content/common/common_param_traits.h b/content/common/common_param_traits.h
index 077d734..916f67b 100644
--- a/content/common/common_param_traits.h
+++ b/content/common/common_param_traits.h
@@ -16,6 +16,7 @@
#include "base/memory/ref_counted.h"
#include "base/platform_file.h"
+#include "content/common/content_export.h"
#include "content/common/dom_storage_common.h"
#include "googleurl/src/gurl.h"
#include "ipc/ipc_message_utils.h"
@@ -46,7 +47,7 @@ class Range;
namespace IPC {
template <>
-struct ParamTraits<GURL> {
+struct CONTENT_EXPORT ParamTraits<GURL> {
typedef GURL param_type;
static void Write(Message* m, const param_type& p);
static bool Read(const Message* m, void** iter, param_type* p);
@@ -62,7 +63,7 @@ struct ParamTraits<ResourceType::Type> {
};
template <>
-struct ParamTraits<net::URLRequestStatus> {
+struct CONTENT_EXPORT ParamTraits<net::URLRequestStatus> {
typedef net::URLRequestStatus param_type;
static void Write(Message* m, const param_type& p);
static bool Read(const Message* m, void** iter, param_type* r);
@@ -70,7 +71,7 @@ struct ParamTraits<net::URLRequestStatus> {
};
template <>
-struct ParamTraits<scoped_refptr<net::UploadData> > {
+struct CONTENT_EXPORT ParamTraits<scoped_refptr<net::UploadData> > {
typedef scoped_refptr<net::UploadData> param_type;
static void Write(Message* m, const param_type& p);
static bool Read(const Message* m, void** iter, param_type* r);
@@ -78,7 +79,7 @@ struct ParamTraits<scoped_refptr<net::UploadData> > {
};
template<>
-struct ParamTraits<net::HostPortPair> {
+struct CONTENT_EXPORT ParamTraits<net::HostPortPair> {
typedef net::HostPortPair param_type;
static void Write(Message* m, const param_type& p);
static bool Read(const Message* m, void** iter, param_type* r);
@@ -110,7 +111,7 @@ struct ParamTraits<base::PlatformFileInfo> {
};
template <>
-struct ParamTraits<gfx::Point> {
+struct CONTENT_EXPORT ParamTraits<gfx::Point> {
typedef gfx::Point param_type;
static void Write(Message* m, const param_type& p);
static bool Read(const Message* m, void** iter, param_type* r);
@@ -118,7 +119,7 @@ struct ParamTraits<gfx::Point> {
};
template <>
-struct ParamTraits<gfx::Size> {
+struct CONTENT_EXPORT ParamTraits<gfx::Size> {
typedef gfx::Size param_type;
static void Write(Message* m, const param_type& p);
static bool Read(const Message* m, void** iter, param_type* r);
@@ -126,7 +127,7 @@ struct ParamTraits<gfx::Size> {
};
template <>
-struct ParamTraits<gfx::Rect> {
+struct CONTENT_EXPORT ParamTraits<gfx::Rect> {
typedef gfx::Rect param_type;
static void Write(Message* m, const param_type& p);
static bool Read(const Message* m, void** iter, param_type* r);
@@ -166,7 +167,7 @@ struct ParamTraits<gfx::NativeWindow> {
};
template <>
-struct ParamTraits<ui::Range> {
+struct CONTENT_EXPORT ParamTraits<ui::Range> {
typedef ui::Range param_type;
static void Write(Message* m, const param_type& p);
static bool Read(const Message* m, void** iter, param_type* r);
@@ -214,7 +215,7 @@ struct ParamTraits<TransportDIB::Id> {
#endif
template <>
-struct ParamTraits<SkBitmap> {
+struct CONTENT_EXPORT ParamTraits<SkBitmap> {
typedef SkBitmap param_type;
static void Write(Message* m, const param_type& p);
diff --git a/content/common/content_client.h b/content/common/content_client.h
index dc2d7901..9f5521f 100644
--- a/content/common/content_client.h
+++ b/content/common/content_client.h
@@ -12,6 +12,7 @@
#include "base/basictypes.h"
#include "base/string16.h"
#include "build/build_config.h"
+#include "content/common/content_export.h"
class CommandLine;
class GURL;
@@ -40,11 +41,11 @@ class ContentUtilityClient;
// Setter and getter for the client. The client should be set early, before any
// content code is called.
-void SetContentClient(ContentClient* client);
-ContentClient* GetContentClient();
+CONTENT_EXPORT void SetContentClient(ContentClient* client);
+CONTENT_EXPORT ContentClient* GetContentClient();
// Interface that the embedder implements.
-class ContentClient {
+class CONTENT_EXPORT ContentClient {
public:
ContentClient();
virtual ~ContentClient();
diff --git a/content/common/content_constants.h b/content/common/content_constants.h
index ad900d0..dd3a9d4 100644
--- a/content/common/content_constants.h
+++ b/content/common/content_constants.h
@@ -10,6 +10,8 @@
#include <stddef.h> // For size_t
+#include "content/common/content_export.h"
+
namespace content {
extern const unsigned int kMaxRendererProcessCount;
@@ -28,12 +30,12 @@ extern const size_t kMaxTitleChars;
// a data: URI may be legitimately massive, but the full URI would kill all
// known operating systems if you dropped it into a UI control.
extern const size_t kMaxURLChars;
-extern const size_t kMaxURLDisplayChars;
+CONTENT_EXPORT extern const size_t kMaxURLDisplayChars;
// The render view and render process id associated with the default plugin
// instance.
-extern const char kDefaultPluginRenderViewId[];
-extern const char kDefaultPluginRenderProcessId[];
+CONTENT_EXPORT extern const char kDefaultPluginRenderViewId[];
+CONTENT_EXPORT extern const char kDefaultPluginRenderProcessId[];
extern const char kStatsFilename[];
extern const int kStatsMaxThreads;
diff --git a/content/common/content_counters.h b/content/common/content_counters.h
index 16dc638..11ccee3 100644
--- a/content/common/content_counters.h
+++ b/content/common/content_counters.h
@@ -8,6 +8,8 @@
#define CONTENT_COMMON_CONTENT_COUNTERS_H_
#pragma once
+#include "content/common/content_export.h"
+
namespace base {
class StatsCounter;
class StatsCounterTimer;
@@ -19,7 +21,7 @@ namespace content {
class Counters {
public:
// The amount of time spent in chrome initialization.
- static base::StatsCounterTimer& chrome_main();
+ CONTENT_EXPORT static base::StatsCounterTimer& chrome_main();
// The amount of time spent in renderer initialization.
static base::StatsCounterTimer& renderer_main();
diff --git a/content/common/content_export.h b/content/common/content_export.h
index dd76009..fc91b72c 100644
--- a/content/common/content_export.h
+++ b/content/common/content_export.h
@@ -6,8 +6,7 @@
#define CONTENT_COMMON_CONTENT_EXPORT_H_
#pragma once
-// TODO(dpranke): Uncomment to enable component build of content.
-#if 0 // defined(COMPONENT_BUILD)
+#if 0 // TODO(dpranke): Uncomment: defined(COMPONENT_BUILD).
#if defined(WIN32)
#if defined(CONTENT_IMPLEMENTATION)
diff --git a/content/common/content_paths.h b/content/common/content_paths.h
index cdf07a7..b2f4cce 100644
--- a/content/common/content_paths.h
+++ b/content/common/content_paths.h
@@ -6,6 +6,8 @@
#define CONTENT_COMMON_CONTENT_PATHS_H_
#pragma once
+#include "content/common/content_export.h"
+
// This file declares path keys for the content module. These can be used with
// the PathService to access various special directories and files.
@@ -24,7 +26,7 @@ enum {
};
// Call once to register the provider for the path keys defined above.
-void RegisterPathProvider();
+CONTENT_EXPORT void RegisterPathProvider();
} // namespace content
diff --git a/content/common/content_switches.h b/content/common/content_switches.h
index 478b9b8..eef89e0 100644
--- a/content/common/content_switches.h
+++ b/content/common/content_switches.h
@@ -9,48 +9,49 @@
#pragma once
#include "build/build_config.h"
+#include "content/common/content_export.h"
namespace switches {
-extern const char kAllowFileAccessFromFiles[];
-extern const char kAllowRunningInsecureContent[];
+CONTENT_EXPORT extern const char kAllowFileAccessFromFiles[];
+CONTENT_EXPORT extern const char kAllowRunningInsecureContent[];
extern const char kAllowSandboxDebugging[];
extern const char kBrowserAssertTest[];
extern const char kBrowserCrashTest[];
extern const char kBrowserSubprocessPath[];
// TODO(jam): this doesn't belong in content.
-extern const char kChromeFrame[];
-extern const char kDisable3DAPIs[];
-extern const char kDisableAccelerated2dCanvas[];
-extern const char kDisableAcceleratedCompositing[];
-extern const char kDisableAcceleratedLayers[];
-extern const char kDisableAcceleratedPlugins[];
-extern const char kDisableAcceleratedVideo[];
-extern const char kDisableAltWinstation[];
-extern const char kDisableApplicationCache[];
+CONTENT_EXPORT extern const char kChromeFrame[];
+CONTENT_EXPORT extern const char kDisable3DAPIs[];
+CONTENT_EXPORT extern const char kDisableAccelerated2dCanvas[];
+CONTENT_EXPORT extern const char kDisableAcceleratedCompositing[];
+CONTENT_EXPORT extern const char kDisableAcceleratedLayers[];
+CONTENT_EXPORT extern const char kDisableAcceleratedPlugins[];
+CONTENT_EXPORT extern const char kDisableAcceleratedVideo[];
+CONTENT_EXPORT extern const char kDisableAltWinstation[];
+CONTENT_EXPORT extern const char kDisableApplicationCache[];
extern const char kDisableAudio[];
extern const char kDisableBackingStoreLimit[];
-extern const char kDisableDatabases[];
+CONTENT_EXPORT extern const char kDisableDatabases[];
extern const char kDisableDataTransferItems[];
extern const char kDisableDesktopNotifications[];
extern const char kDisableDeviceOrientation[];
-extern const char kDisableExperimentalWebGL[];
+CONTENT_EXPORT extern const char kDisableExperimentalWebGL[];
extern const char kDisableFileSystem[];
extern const char kDisableGeolocation[];
-extern const char kDisableGLMultisampling[];
+CONTENT_EXPORT extern const char kDisableGLMultisampling[];
extern const char kDisableGLSLTranslator[];
extern const char kDisableGpuSandbox[];
extern const char kDisableGpuWatchdog[];
-extern const char kDisableHangMonitor[];
+CONTENT_EXPORT extern const char kDisableHangMonitor[];
extern const char kDisableIndexedDatabase[];
-extern const char kDisableJava[];
-extern const char kDisableJavaScript[];
+CONTENT_EXPORT extern const char kDisableJava[];
+CONTENT_EXPORT extern const char kDisableJavaScript[];
extern const char kDisableJavaScriptI18NAPI[];
-extern const char kDisableLocalStorage[];
-extern const char kDisableLogging[];
-extern const char kDisableSmoothScrolling[];
-extern const char kDisablePlugins[];
-extern const char kDisablePopupBlocking[];
+CONTENT_EXPORT extern const char kDisableLocalStorage[];
+CONTENT_EXPORT extern const char kDisableLogging[];
+CONTENT_EXPORT extern const char kDisableSmoothScrolling[];
+CONTENT_EXPORT extern const char kDisablePlugins[];
+CONTENT_EXPORT extern const char kDisablePopupBlocking[];
extern const char kDisableRendererAccessibility[];
extern const char kDisableSSLFalseStart[];
extern const char kDisableSeccompSandbox[];
@@ -58,18 +59,18 @@ extern const char kDisableSessionStorage[];
extern const char kDisableSharedWorkers[];
extern const char kDisableSpeechInput[];
extern const char kDisableSpellcheckAPI[];
-extern const char kDisableWebAudio[];
+CONTENT_EXPORT extern const char kDisableWebAudio[];
extern const char kDisableWebSockets[];
extern const char kEnableAccelerated2dCanvas[];
-extern const char kEnableAcceleratedDrawing[];
+CONTENT_EXPORT extern const char kEnableAcceleratedDrawing[];
extern const char kEnableAccessibility[];
extern const char kEnableAccessibilityLogging[];
-extern const char kEnableBenchmarking[];
-extern const char kEnableDNSCertProvenanceChecking[];
-extern const char kEnableDeviceMotion[];
-extern const char kDisableFullScreen[];
+CONTENT_EXPORT extern const char kEnableBenchmarking[];
+CONTENT_EXPORT extern const char kEnableDNSCertProvenanceChecking[];
+CONTENT_EXPORT extern const char kEnableDeviceMotion[];
+CONTENT_EXPORT extern const char kDisableFullScreen[];
extern const char kEnableGPUPlugin[];
-extern const char kEnableLogging[];
+CONTENT_EXPORT extern const char kEnableLogging[];
extern const char kEnableMediaStream[];
extern const char kEnableMonitorProfile[];
extern const char kEnableOriginBoundCerts[];
@@ -78,80 +79,85 @@ extern const char kEnableSSLCachedInfo[];
extern const char kEnableSandboxLogging[];
extern const char kEnableSeccompSandbox[];
extern const char kEnableStatsTable[];
-extern const char kEnableTcpFastOpen[];
+CONTENT_EXPORT extern const char kEnableStatsTable[];
+CONTENT_EXPORT extern const char kEnableTcpFastOpen[];
extern const char kEnableVideoFullscreen[];
extern const char kEnableVideoLogging[];
-extern const char kEnableWebIntents[];
-extern const char kExperimentalLocationFeatures[];
+CONTENT_EXPORT extern const char kEnableWebIntents[];
+CONTENT_EXPORT extern const char kExperimentalLocationFeatures[];
// TODO(jam): this doesn't belong in content.
-extern const char kExtensionProcess[];
+CONTENT_EXPORT extern const char kExtensionProcess[];
extern const char kExtraPluginDir[];
extern const char kForceFieldTestNameAndValue[];
extern const char kForceRendererAccessibility[];
extern const char kGpuLauncher[];
-extern const char kGpuProcess[];
+CONTENT_EXPORT extern const char kGpuProcess[];
extern const char kGpuStartupDialog[];
-extern const char kIgnoreGpuBlacklist[];
+CONTENT_EXPORT extern const char kIgnoreGpuBlacklist[];
extern const char kInProcessGPU[];
extern const char kInProcessPlugins[];
-extern const char kInProcessWebGL[];
+CONTENT_EXPORT extern const char kInProcessWebGL[];
extern const char kJavaScriptFlags[];
extern const char kLoadPlugin[];
-extern const char kLoggingLevel[];
+CONTENT_EXPORT extern const char kLoggingLevel[];
extern const char kLogPluginMessages[];
extern const char kLowLatencyAudio[];
// TODO(jam): this doesn't belong in content.
-extern const char kNaClBrokerProcess[];
-extern const char kNaClLoaderProcess[];
-extern const char kNoDisplayingInsecureContent[];
+CONTENT_EXPORT extern const char kNaClBrokerProcess[];
+CONTENT_EXPORT extern const char kNaClLoaderProcess[];
+// TODO(bradchen): remove kNaClLinuxHelper switch.
+// This switch enables the experimental lightweight nacl_helper for Linux.
+// It will be going away soon, when the helper is enabled permanently.
+extern const char kNaClLinuxHelper[];
+CONTENT_EXPORT extern const char kNoDisplayingInsecureContent[];
extern const char kNoJsRandomness[];
-extern const char kNoReferrers[];
-extern const char kNoSandbox[];
-extern const char kPlaybackMode[];
+CONTENT_EXPORT extern const char kNoReferrers[];
+CONTENT_EXPORT extern const char kNoSandbox[];
+CONTENT_EXPORT extern const char kPlaybackMode[];
extern const char kPluginLauncher[];
-extern const char kPluginPath[];
-extern const char kPluginProcess[];
+CONTENT_EXPORT extern const char kPluginPath[];
+CONTENT_EXPORT extern const char kPluginProcess[];
extern const char kPluginStartupDialog[];
-extern const char kPpapiBrokerProcess[];
-extern const char kPpapiFlashArgs[];
-extern const char kPpapiFlashPath[];
-extern const char kPpapiFlashVersion[];
+CONTENT_EXPORT extern const char kPpapiBrokerProcess[];
+CONTENT_EXPORT extern const char kPpapiFlashArgs[];
+CONTENT_EXPORT extern const char kPpapiFlashPath[];
+CONTENT_EXPORT extern const char kPpapiFlashVersion[];
extern const char kPpapiOutOfProcess[];
extern const char kPpapiPluginLauncher[];
-extern const char kPpapiPluginProcess[];
+CONTENT_EXPORT extern const char kPpapiPluginProcess[];
extern const char kPpapiStartupDialog[];
extern const char kProcessPerSite[];
-extern const char kProcessPerTab[];
-extern const char kProcessType[];
+CONTENT_EXPORT extern const char kProcessPerTab[];
+CONTENT_EXPORT extern const char kProcessType[];
// TODO(jam): this doesn't belong in content.
extern const char kProfileImportProcess[];
-extern const char kRecordMode[];
+CONTENT_EXPORT extern const char kRecordMode[];
extern const char kRegisterPepperPlugins[];
-extern const char kRemoteShellPort[];
+CONTENT_EXPORT extern const char kRemoteShellPort[];
extern const char kRendererAssertTest[];
extern const char kRendererCmdPrefix[];
extern const char kRendererCrashTest[];
-extern const char kRendererProcess[];
+CONTENT_EXPORT extern const char kRendererProcess[];
extern const char kRendererStartupDialog[];
// TODO(jam): this doesn't belong in content.
-extern const char kServiceProcess[];
+CONTENT_EXPORT extern const char kServiceProcess[];
extern const char kShowPaintRects[];
extern const char kSimpleDataSource[];
-extern const char kSingleProcess[];
+CONTENT_EXPORT extern const char kSingleProcess[];
extern const char kSQLiteIndexedDatabase[];
extern const char kTestSandbox[];
extern const char kUnlimitedQuotaForFiles[];
-extern const char kUserAgent[];
+CONTENT_EXPORT extern const char kUserAgent[];
extern const char kUtilityCmdPrefix[];
-extern const char kUtilityProcess[];
+CONTENT_EXPORT extern const char kUtilityProcess[];
extern const char kUtilityProcessAllowedDir[];
-extern const char kWaitForDebuggerChildren[];
+CONTENT_EXPORT extern const char kWaitForDebuggerChildren[];
extern const char kWebCoreLogChannels[];
extern const char kWebWorkerProcessPerCore[];
extern const char kWebWorkerShareProcesses[];
-extern const char kWorkerProcess[];
-extern const char kZygoteCmdPrefix[];
-extern const char kZygoteProcess[];
+CONTENT_EXPORT extern const char kWorkerProcess[];
+CONTENT_EXPORT extern const char kZygoteCmdPrefix[];
+CONTENT_EXPORT extern const char kZygoteProcess[];
#if defined(OS_WIN)
extern const char kAuditHandles[];
diff --git a/content/common/devtools_messages.h b/content/common/devtools_messages.h
index 6536f40..5f09147 100644
--- a/content/common/devtools_messages.h
+++ b/content/common/devtools_messages.h
@@ -42,6 +42,7 @@
#include <map>
#include <string>
+#include "content/common/content_export.h"
#include "ipc/ipc_message_macros.h"
// Singly-included section.
@@ -52,6 +53,9 @@ typedef std::map<std::string, std::string> DevToolsRuntimeProperties;
#endif // CONTENT_COMMON_DEVTOOLS_MESSAGES_H_
+#undef IPC_MESSAGE_EXPORT
+#define IPC_MESSAGE_EXPORT CONTENT_EXPORT
+
#define IPC_MESSAGE_START DevToolsMsgStart
// These are messages sent from DevToolsAgent to DevToolsClient through the
diff --git a/content/common/gpu/gpu_feature_flags.h b/content/common/gpu/gpu_feature_flags.h
index 99c6576..47ec196 100644
--- a/content/common/gpu/gpu_feature_flags.h
+++ b/content/common/gpu/gpu_feature_flags.h
@@ -12,6 +12,7 @@
#include <string>
#include "base/basictypes.h"
+#include "content/common/content_export.h"
class GpuFeatureFlags {
public:
@@ -33,7 +34,7 @@ class GpuFeatureFlags {
// flags are OR combination of GpuFeatureType.
void set_flags(uint32 flags);
- uint32 flags() const;
+ CONTENT_EXPORT uint32 flags() const;
// Resets each flag by OR with the corresponding flag in "other".
void Combine(const GpuFeatureFlags& other);
diff --git a/content/common/hi_res_timer_manager.h b/content/common/hi_res_timer_manager.h
index 5c3ae38..ff2ff1f 100644
--- a/content/common/hi_res_timer_manager.h
+++ b/content/common/hi_res_timer_manager.h
@@ -7,10 +7,12 @@
#pragma once
#include "base/system_monitor/system_monitor.h"
+#include "content/common/content_export.h"
// Ensures that the Windows high resolution timer is only used
// when not running on battery power.
-class HighResolutionTimerManager : public base::SystemMonitor::PowerObserver {
+class CONTENT_EXPORT HighResolutionTimerManager
+ : public base::SystemMonitor::PowerObserver {
public:
HighResolutionTimerManager();
virtual ~HighResolutionTimerManager();
diff --git a/content/common/json_value_serializer.h b/content/common/json_value_serializer.h
index afb18f8..4b11e52 100644
--- a/content/common/json_value_serializer.h
+++ b/content/common/json_value_serializer.h
@@ -11,8 +11,9 @@
#include "base/basictypes.h"
#include "base/file_path.h"
#include "base/values.h"
+#include "content/common/content_export.h"
-class JSONStringValueSerializer : public base::ValueSerializer {
+class CONTENT_EXPORT JSONStringValueSerializer : public base::ValueSerializer {
public:
// json_string is the string that will be source of the deserialization
// or the destination of the serialization. The caller of the constructor
@@ -66,7 +67,7 @@ class JSONStringValueSerializer : public base::ValueSerializer {
DISALLOW_COPY_AND_ASSIGN(JSONStringValueSerializer);
};
-class JSONFileValueSerializer : public base::ValueSerializer {
+class CONTENT_EXPORT JSONFileValueSerializer : public base::ValueSerializer {
public:
// json_file_patch is the path of a file that will be source of the
// deserialization or the destination of the serialization.
diff --git a/content/common/native_web_keyboard_event.h b/content/common/native_web_keyboard_event.h
index 7de71a4..631273e 100644
--- a/content/common/native_web_keyboard_event.h
+++ b/content/common/native_web_keyboard_event.h
@@ -7,7 +7,9 @@
#pragma once
#include "base/basictypes.h"
+#include "base/compiler_specific.h"
#include "build/build_config.h"
+#include "content/common/content_export.h"
#include "third_party/WebKit/Source/WebKit/chromium/public/WebInputEvent.h"
#if defined(OS_WIN)
@@ -24,7 +26,8 @@ typedef struct _GdkEventKey GdkEventKey;
// Owns a platform specific event; used to pass own and pass event through
// platform independent code.
-struct NativeWebKeyboardEvent : public WebKit::WebKeyboardEvent {
+struct CONTENT_EXPORT NativeWebKeyboardEvent :
+ NON_EXPORTED_BASE(public WebKit::WebKeyboardEvent) {
NativeWebKeyboardEvent();
#if defined(OS_WIN)
diff --git a/content/common/net/url_fetcher.h b/content/common/net/url_fetcher.h
index 00ff56f..0d73d64 100644
--- a/content/common/net/url_fetcher.h
+++ b/content/common/net/url_fetcher.h
@@ -22,6 +22,7 @@
#include "base/message_loop.h"
#include "base/platform_file.h"
#include "base/time.h"
+#include "content/common/content_export.h"
class FilePath;
class GURL;
@@ -68,7 +69,7 @@ typedef std::vector<std::string> ResponseCookies;
// NOTE: By default URLFetcher requests are NOT intercepted, except when
// interception is explicitly enabled in tests.
-class URLFetcher {
+class CONTENT_EXPORT URLFetcher {
public:
enum RequestType {
GET,
@@ -80,7 +81,7 @@ class URLFetcher {
// was received.
static const int kInvalidHttpResponseCode;
- class Delegate {
+ class CONTENT_EXPORT Delegate {
public:
// TODO(skerner): This will be removed in favor of the |source|-only
// version below. Leaving this for now to make the initial code review
diff --git a/content/common/notification_details.h b/content/common/notification_details.h
index 1e822a9..50c7b23 100644
--- a/content/common/notification_details.h
+++ b/content/common/notification_details.h
@@ -10,11 +10,12 @@
#pragma once
#include "base/basictypes.h"
+#include "content/common/content_export.h"
// Do not declare a NotificationDetails directly--use either
// "Details<detailsclassname>(detailsclasspointer)" or
// NotificationService::NoDetails().
-class NotificationDetails {
+class CONTENT_EXPORT NotificationDetails {
public:
NotificationDetails();
NotificationDetails(const NotificationDetails& other);
diff --git a/content/common/notification_observer.h b/content/common/notification_observer.h
index 49f74de..5fa0cb9 100644
--- a/content/common/notification_observer.h
+++ b/content/common/notification_observer.h
@@ -6,12 +6,14 @@
#define CONTENT_COMMON_NOTIFICATION_OBSERVER_H_
#pragma once
+#include "content/common/content_export.h"
+
class NotificationDetails;
class NotificationSource;
// This is the base class for notification observers. When a matching
// notification is posted to the notification service, Observe is called.
-class NotificationObserver {
+class CONTENT_EXPORT NotificationObserver {
public:
NotificationObserver();
virtual ~NotificationObserver();
diff --git a/content/common/notification_registrar.h b/content/common/notification_registrar.h
index 9d054bf..912958d 100644
--- a/content/common/notification_registrar.h
+++ b/content/common/notification_registrar.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2010 The Chromium Authors. All rights reserved.
+// Copyright (c) 2011 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -9,6 +9,7 @@
#include <vector>
#include "base/basictypes.h"
+#include "content/common/content_export.h"
#include "content/common/content_notification_types.h"
class NotificationObserver;
@@ -21,7 +22,7 @@ class NotificationSource;
// class and use it to register your notifications instead of going through the
// notification service directly. It will automatically unregister them for
// you.
-class NotificationRegistrar {
+class CONTENT_EXPORT NotificationRegistrar {
public:
// This class must not be derived from (we don't have a virtual destructor so
// it won't work). Instead, use it as a member in your class.
diff --git a/content/common/notification_service.h b/content/common/notification_service.h
index a9cd210..b8192e0 100644
--- a/content/common/notification_service.h
+++ b/content/common/notification_service.h
@@ -13,13 +13,14 @@
#include <map>
#include "base/observer_list.h"
+#include "content/common/content_export.h"
#include "content/common/content_notification_types.h"
#include "content/common/notification_details.h"
#include "content/common/notification_source.h"
class NotificationObserver;
-class NotificationService {
+class CONTENT_EXPORT NotificationService {
public:
// Returns the NotificationService object for the current thread, or NULL if
// none.
diff --git a/content/common/notification_source.h b/content/common/notification_source.h
index db5977b..791b4d0 100644
--- a/content/common/notification_source.h
+++ b/content/common/notification_source.h
@@ -10,11 +10,12 @@
#pragma once
#include "base/basictypes.h"
+#include "content/common/content_export.h"
// Do not declare a NotificationSource directly--use either
// "Source<sourceclassname>(sourceclasspointer)" or
// NotificationService::AllSources().
-class NotificationSource {
+class CONTENT_EXPORT NotificationSource {
public:
NotificationSource(const NotificationSource& other);
~NotificationSource();
diff --git a/content/common/page_transition_types.h b/content/common/page_transition_types.h
index 1bd6ec9..5aaeeac 100644
--- a/content/common/page_transition_types.h
+++ b/content/common/page_transition_types.h
@@ -7,9 +7,10 @@
#pragma once
#include "base/basictypes.h"
+#include "content/common/content_export.h"
// This class is for scoping only.
-class PageTransition {
+class CONTENT_EXPORT PageTransition {
public:
// Types of transitions between pages. These are stored in the history
// database to separate visits, and are reported by the renderer for page
diff --git a/content/common/pepper_plugin_registry.h b/content/common/pepper_plugin_registry.h
index d714e2f..ee2404a4 100644
--- a/content/common/pepper_plugin_registry.h
+++ b/content/common/pepper_plugin_registry.h
@@ -12,12 +12,13 @@
#include <vector>
#include "base/file_path.h"
+#include "content/common/content_export.h"
#include "ppapi/proxy/proxy_channel.h"
#include "webkit/plugins/ppapi/plugin_delegate.h"
#include "webkit/plugins/ppapi/plugin_module.h"
#include "webkit/plugins/webplugininfo.h"
-struct PepperPluginInfo {
+struct CONTENT_EXPORT PepperPluginInfo {
PepperPluginInfo();
~PepperPluginInfo();
@@ -71,7 +72,8 @@ class PepperPluginRegistry
// has no need to load the pepper plugin modules. It will re-compute the
// plugin list every time it is called. Generally, code in the registry should
// be using the cached plugin_list_ instead.
- static void ComputeList(std::vector<PepperPluginInfo>* plugins);
+ CONTENT_EXPORT static void ComputeList(
+ std::vector<PepperPluginInfo>* plugins);
// Loads the (native) libraries but does not initialize them (i.e., does not
// call PPP_InitializeModule). This is needed by the zygote on Linux to get
diff --git a/content/common/plugin_messages.h b/content/common/plugin_messages.h
index c3c7ed1..2dc4959 100644
--- a/content/common/plugin_messages.h
+++ b/content/common/plugin_messages.h
@@ -6,6 +6,7 @@
#include "build/build_config.h"
#include "content/common/common_param_traits.h"
+#include "content/common/content_export.h"
#include "content/common/webkit_param_traits.h"
#include "ipc/ipc_channel_handle.h"
#include "ipc/ipc_message_macros.h"
@@ -17,6 +18,9 @@
#include "base/file_descriptor_posix.h"
#endif
+#undef IPC_MESSAGE_EXPORT
+#define IPC_MESSAGE_EXPORT CONTENT_EXPORT
+
#define IPC_MESSAGE_START PluginMsgStart
IPC_STRUCT_BEGIN(PluginMsg_Init_Params)
diff --git a/content/common/property_bag.h b/content/common/property_bag.h
index 0e2e204..b83cc58 100644
--- a/content/common/property_bag.h
+++ b/content/common/property_bag.h
@@ -9,6 +9,7 @@
#include <map>
#include "base/basictypes.h"
+#include "content/common/content_export.h"
template <typename T>
class linked_ptr;
@@ -42,7 +43,7 @@ class PropertyAccessorBase;
//
// accessor->SetProperty(object, 22);
// }
-class PropertyBag {
+class CONTENT_EXPORT PropertyBag {
public:
// The type that uniquely identifies a property type.
typedef int PropID;
@@ -93,7 +94,7 @@ class PropertyBag {
// Manages getting the unique IDs to identify a property. Callers should use
// PropertyAccessor below instead.
-class PropertyAccessorBase {
+class CONTENT_EXPORT PropertyAccessorBase {
public:
PropertyAccessorBase();
virtual ~PropertyAccessorBase() {}
diff --git a/content/common/renderer_preferences.h b/content/common/renderer_preferences.h
index 9d5cb0a..e622464 100644
--- a/content/common/renderer_preferences.h
+++ b/content/common/renderer_preferences.h
@@ -13,6 +13,7 @@
#define CONTENT_COMMON_RENDERER_PREFERENCES_H_
#pragma once
+#include "content/common/content_export.h"
#include "third_party/skia/include/core/SkColor.h"
enum RendererPreferencesHintingEnum {
@@ -32,7 +33,7 @@ enum RendererPreferencesSubpixelRenderingEnum {
RENDERER_PREFERENCES_SUBPIXEL_RENDERING_VBGR,
};
-struct RendererPreferences {
+struct CONTENT_EXPORT RendererPreferences {
RendererPreferences();
// Whether the renderer's current browser context accept drops from the OS
diff --git a/content/common/resource_dispatcher_delegate.h b/content/common/resource_dispatcher_delegate.h
index e973dd7..c19ed57 100644
--- a/content/common/resource_dispatcher_delegate.h
+++ b/content/common/resource_dispatcher_delegate.h
@@ -6,11 +6,12 @@
#define CONTENT_COMMON_RESOURCE_DISPATCHER_DELEGATE_H_
#pragma once
+#include "content/common/content_export.h"
#include "webkit/glue/resource_loader_bridge.h"
// Interface that allows observing request events and optionally replacing the
// peer.
-class ResourceDispatcherDelegate {
+class CONTENT_EXPORT ResourceDispatcherDelegate {
public:
ResourceDispatcherDelegate();
virtual ~ResourceDispatcherDelegate();
diff --git a/content/common/resource_response.h b/content/common/resource_response.h
index 0473e32..8c949a3 100644
--- a/content/common/resource_response.h
+++ b/content/common/resource_response.h
@@ -11,6 +11,7 @@
#include <string>
#include "base/memory/ref_counted.h"
+#include "content/common/content_export.h"
#include "googleurl/src/gurl.h"
#include "net/url_request/url_request_status.h"
#include "webkit/glue/resource_loader_bridge.h"
@@ -31,7 +32,8 @@ struct SyncLoadResult : ResourceResponseHead {
};
// Simple wrapper that refcounts ResourceResponseHead.
-struct ResourceResponse : public base::RefCounted<ResourceResponse> {
+struct CONTENT_EXPORT ResourceResponse
+ : public base::RefCounted<ResourceResponse> {
ResourceResponse();
ResourceResponseHead response_head;
diff --git a/content/common/sandbox_init_wrapper.h b/content/common/sandbox_init_wrapper.h
index c144992..fcc096a 100644
--- a/content/common/sandbox_init_wrapper.h
+++ b/content/common/sandbox_init_wrapper.h
@@ -15,6 +15,8 @@
#include <string>
#include "base/basictypes.h"
+#include "content/common/content_export.h"
+
#if defined(OS_WIN)
#include "sandbox/src/sandbox.h"
#endif
@@ -23,7 +25,7 @@ class CommandLine;
#if defined(OS_WIN)
-class SandboxInitWrapper {
+class CONTENT_EXPORT SandboxInitWrapper {
public:
SandboxInitWrapper() : broker_services_(), target_services_() { }
// SetServices() needs to be called before InitializeSandbox() on Win32 with
diff --git a/content/common/sandbox_policy.h b/content/common/sandbox_policy.h
index 55dc0c5..4d87717 100644
--- a/content/common/sandbox_policy.h
+++ b/content/common/sandbox_policy.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2010 The Chromium Authors. All rights reserved.
+// Copyright (c) 2011 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -7,6 +7,7 @@
#pragma once
#include "base/process.h"
+#include "content/common/content_export.h"
class CommandLine;
class FilePath;
@@ -15,12 +16,14 @@ namespace sandbox {
class BrokerServices;
-void InitBrokerServices(sandbox::BrokerServices* broker_services);
+CONTENT_EXPORT void InitBrokerServices(
+ sandbox::BrokerServices* broker_services);
// Starts a sandboxed process with the given directory unsandboxed
// and returns a handle to it.
-base::ProcessHandle StartProcessWithAccess(CommandLine* cmd_line,
- const FilePath& exposed_dir);
+CONTENT_EXPORT base::ProcessHandle StartProcessWithAccess(
+ CommandLine* cmd_line,
+ const FilePath& exposed_dir);
} // namespace sandbox
diff --git a/content/common/section_util_win.h b/content/common/section_util_win.h
index b07239a..fa08df9 100644
--- a/content/common/section_util_win.h
+++ b/content/common/section_util_win.h
@@ -8,6 +8,8 @@
#include <windows.h>
+#include "content/common/content_export.h"
+
namespace chrome {
// Duplicates a section handle from another process to the current process.
@@ -16,7 +18,10 @@ HANDLE GetSectionFromProcess(HANDLE section, HANDLE process, bool read_only);
// Duplicates a section handle from the current process for use in another
// process. Returns the new valid handle or NULL on failure.
-HANDLE GetSectionForProcess(HANDLE section, HANDLE process, bool read_only);
+CONTENT_EXPORT HANDLE GetSectionForProcess(
+ HANDLE section,
+ HANDLE process,
+ bool read_only);
} // namespace chrome
diff --git a/content/common/url_constants.h b/content/common/url_constants.h
index 726ec7d..78f7e2f 100644
--- a/content/common/url_constants.h
+++ b/content/common/url_constants.h
@@ -8,6 +8,8 @@
#define CONTENT_COMMON_URL_CONSTANTS_H_
#pragma once
+#include "content/common/content_export.h"
+
namespace chrome {
// Null terminated list of schemes that are savable.
@@ -16,29 +18,29 @@ extern const char* kSavableSchemes[];
// Canonical schemes you can use as input to GURL.SchemeIs().
// TODO(jam): some of these don't below in the content layer, but are accessed
// from there.
-extern const char kAboutScheme[];
-extern const char kBlobScheme[];
-extern const char kChromeDevToolsScheme[];
-extern const char kChromeInternalScheme[];
-extern const char kChromeUIScheme[]; // The scheme used for WebUIs.
-extern const char kCrosScheme[]; // The scheme used for ChromeOS.
-extern const char kDataScheme[];
-extern const char kExtensionScheme[];
-extern const char kFileScheme[];
-extern const char kFileSystemScheme[];
-extern const char kFtpScheme[];
-extern const char kHttpScheme[];
-extern const char kHttpsScheme[];
-extern const char kJavaScriptScheme[];
-extern const char kMailToScheme[];
-extern const char kMetadataScheme[];
-extern const char kViewSourceScheme[];
+CONTENT_EXPORT extern const char kAboutScheme[];
+CONTENT_EXPORT extern const char kBlobScheme[];
+CONTENT_EXPORT extern const char kChromeDevToolsScheme[];
+CONTENT_EXPORT extern const char kChromeInternalScheme[];
+CONTENT_EXPORT extern const char kChromeUIScheme[]; // Used for WebUIs.
+CONTENT_EXPORT extern const char kCrosScheme[]; // Used for ChromeOS.
+CONTENT_EXPORT extern const char kDataScheme[];
+CONTENT_EXPORT extern const char kExtensionScheme[];
+CONTENT_EXPORT extern const char kFileScheme[];
+CONTENT_EXPORT extern const char kFileSystemScheme[];
+CONTENT_EXPORT extern const char kFtpScheme[];
+CONTENT_EXPORT extern const char kHttpScheme[];
+CONTENT_EXPORT extern const char kHttpsScheme[];
+CONTENT_EXPORT extern const char kJavaScriptScheme[];
+CONTENT_EXPORT extern const char kMailToScheme[];
+CONTENT_EXPORT extern const char kMetadataScheme[];
+CONTENT_EXPORT extern const char kViewSourceScheme[];
// Used to separate a standard scheme and the hostname: "://".
-extern const char kStandardSchemeSeparator[];
+CONTENT_EXPORT extern const char kStandardSchemeSeparator[];
// About URLs (including schemes).
-extern const char kAboutBlankURL[];
+CONTENT_EXPORT extern const char kAboutBlankURL[];
extern const char kAboutCrashURL[];
// Special URL used to start a navigation to an error page.
diff --git a/content/common/view_messages.h b/content/common/view_messages.h
index d127d71..25ca41b 100644
--- a/content/common/view_messages.h
+++ b/content/common/view_messages.h
@@ -8,6 +8,7 @@
#include "base/process.h"
#include "base/shared_memory.h"
#include "content/common/common_param_traits.h"
+#include "content/common/content_export.h"
#include "content/common/css_colors.h"
#include "content/common/edit_command.h"
#include "content/common/navigation_gesture.h"
@@ -195,6 +196,9 @@ struct ViewMsg_StopFinding_Params {
#endif // CONTENT_COMMON_VIEW_MESSAGES_H_
+#undef IPC_MESSAGE_EXPORT
+#define IPC_MESSAGE_EXPORT CONTENT_EXPORT
+
#define IPC_MESSAGE_START ViewMsgStart
IPC_ENUM_TRAITS(CSSColors::CSSColorName)
diff --git a/content/common/view_types.h b/content/common/view_types.h
index ae82e4f..6859180 100644
--- a/content/common/view_types.h
+++ b/content/common/view_types.h
@@ -7,9 +7,10 @@
#pragma once
#include "base/basictypes.h"
+#include "content/common/content_export.h"
// Indicates different types of views
-class ViewType {
+class CONTENT_EXPORT ViewType {
public:
enum Type {
INVALID,
diff --git a/content/common/webkit_param_traits.h b/content/common/webkit_param_traits.h
index a937581..8fce34e 100644
--- a/content/common/webkit_param_traits.h
+++ b/content/common/webkit_param_traits.h
@@ -17,6 +17,7 @@
#include <string>
#include "base/memory/ref_counted.h"
+#include "content/common/content_export.h"
#include "ipc/ipc_message_utils.h"
#include "third_party/WebKit/Source/WebKit/chromium/public/WebInputEvent.h"
#include "third_party/WebKit/Source/WebKit/chromium/public/WebTextDirection.h"
@@ -227,7 +228,7 @@ struct SimilarTypeTraits<WindowOpenDisposition> {
};
template <>
-struct ParamTraits<webkit_glue::PasswordForm> {
+struct CONTENT_EXPORT ParamTraits<webkit_glue::PasswordForm> {
typedef webkit_glue::PasswordForm param_type;
static void Write(Message* m, const param_type& p);
static bool Read(const Message* m, void** iter, param_type* p);
diff --git a/content/renderer/p2p/host_address_request.h b/content/renderer/p2p/host_address_request.h
index 72789aa..9a3de71 100644
--- a/content/renderer/p2p/host_address_request.h
+++ b/content/renderer/p2p/host_address_request.h
@@ -9,6 +9,7 @@
#include "base/callback.h"
#include "base/memory/ref_counted.h"
+#include "content/common/content_export.h"
#include "net/base/net_util.h"
namespace base {
@@ -24,8 +25,8 @@ class P2PSocketDispatcher;
//
// TODO(sergeyu): Name of this class may be confusing. Rename it to
// something else, e.g. P2PHostnameResolver.
-class P2PHostAddressRequest :
- public base::RefCountedThreadSafe<P2PHostAddressRequest> {
+class CONTENT_EXPORT P2PHostAddressRequest
+ : public base::RefCountedThreadSafe<P2PHostAddressRequest> {
public:
typedef base::Callback<void(const net::IPAddressNumber&)> DoneCallback;
diff --git a/content/renderer/p2p/ipc_network_manager.h b/content/renderer/p2p/ipc_network_manager.h
index 3fa1705..83d236a 100644
--- a/content/renderer/p2p/ipc_network_manager.h
+++ b/content/renderer/p2p/ipc_network_manager.h
@@ -9,6 +9,7 @@
#include "base/task.h"
#include "base/compiler_specific.h"
+#include "content/common/content_export.h"
#include "content/renderer/p2p/socket_dispatcher.h"
#include "net/base/net_util.h"
#include "third_party/libjingle/source/talk/base/network.h"
@@ -21,7 +22,7 @@ class IpcNetworkManager : public talk_base::NetworkManagerBase,
public P2PSocketDispatcher::NetworkListObserver {
public:
// Constructor doesn't take ownership of the |socket_dispatcher|.
- IpcNetworkManager(P2PSocketDispatcher* socket_dispatcher);
+ CONTENT_EXPORT IpcNetworkManager(P2PSocketDispatcher* socket_dispatcher);
virtual ~IpcNetworkManager();
virtual void StartUpdating() OVERRIDE;
diff --git a/content/renderer/p2p/ipc_socket_factory.h b/content/renderer/p2p/ipc_socket_factory.h
index 035e178..9c20fbb 100644
--- a/content/renderer/p2p/ipc_socket_factory.h
+++ b/content/renderer/p2p/ipc_socket_factory.h
@@ -6,6 +6,7 @@
#define CONTENT_RENDERER_P2P_IPC_SOCKET_FACTORY_H_
#include "base/basictypes.h"
+#include "content/common/content_export.h"
#include "third_party/libjingle/source/talk/base/packetsocketfactory.h"
namespace content {
@@ -20,7 +21,8 @@ class P2PSocketDispatcher;
// created on.
class IpcPacketSocketFactory : public talk_base::PacketSocketFactory {
public:
- explicit IpcPacketSocketFactory(P2PSocketDispatcher* socket_dispatcher);
+ CONTENT_EXPORT explicit IpcPacketSocketFactory(
+ P2PSocketDispatcher* socket_dispatcher);
virtual ~IpcPacketSocketFactory();
virtual talk_base::AsyncPacketSocket* CreateUdpSocket(
diff --git a/content/renderer/pepper_plugin_delegate_impl.h b/content/renderer/pepper_plugin_delegate_impl.h
index b254488..ca2b3fd 100644
--- a/content/renderer/pepper_plugin_delegate_impl.h
+++ b/content/renderer/pepper_plugin_delegate_impl.h
@@ -14,6 +14,7 @@
#include "base/id_map.h"
#include "base/memory/ref_counted.h"
#include "base/memory/weak_ptr.h"
+#include "content/common/content_export.h"
#include "ppapi/proxy/broker_dispatcher.h"
#include "ppapi/proxy/proxy_channel.h"
#include "webkit/plugins/ppapi/plugin_delegate.h"
@@ -128,7 +129,8 @@ class PepperPluginDelegateImpl
// the second is that the plugin failed to initialize. In this case,
// |*pepper_plugin_was_registered| will be set to true and the caller should
// not fall back on any other plugin types.
- scoped_refptr<webkit::ppapi::PluginModule> CreatePepperPluginModule(
+ CONTENT_EXPORT scoped_refptr<webkit::ppapi::PluginModule>
+ CreatePepperPluginModule(
const webkit::WebPluginInfo& webplugin_info,
bool* pepper_plugin_was_registered);
@@ -303,7 +305,7 @@ class PepperPluginDelegateImpl
OVERRIDE;
virtual ::ppapi::Preferences GetPreferences() OVERRIDE;
- int GetRoutingId() const;
+ CONTENT_EXPORT int GetRoutingId() const;
private:
void PublishInitialPolicy(
diff --git a/content/renderer/render_process_observer.h b/content/renderer/render_process_observer.h
index 2850170..2652017 100644
--- a/content/renderer/render_process_observer.h
+++ b/content/renderer/render_process_observer.h
@@ -8,12 +8,13 @@
#include "base/basictypes.h"
#include "ipc/ipc_message.h"
+#include "content/common/content_export.h"
class GURL;
// Base class for objects that want to filter control IPC messages and get
// notified of events.
-class RenderProcessObserver : public IPC::Message::Sender {
+class CONTENT_EXPORT RenderProcessObserver : public IPC::Message::Sender {
public:
RenderProcessObserver();
virtual ~RenderProcessObserver();
diff --git a/content/renderer/render_thread.h b/content/renderer/render_thread.h
index 893e4ce..da651ef 100644
--- a/content/renderer/render_thread.h
+++ b/content/renderer/render_thread.h
@@ -16,6 +16,7 @@
#include "base/timer.h"
#include "build/build_config.h"
#include "content/common/child_thread.h"
+#include "content/common/content_export.h"
#include "content/common/css_colors.h"
#include "content/common/gpu/gpu_process_launch_causes.h"
#include "ipc/ipc_channel_proxy.h"
@@ -91,7 +92,7 @@ class Extension;
// understand by moving everything to the abstract interface and saying that
// there should never be a NULL RenderThread::current(). Tests would be
// responsible for setting up the mock one.
-class RenderThreadBase {
+class CONTENT_EXPORT RenderThreadBase {
public:
virtual ~RenderThreadBase() {}
@@ -119,8 +120,8 @@ class RenderThreadBase {
// Most of the communication occurs in the form of IPC messages. They are
// routed to the RenderThread according to the routing IDs of the messages.
// The routing IDs correspond to RenderView instances.
-class RenderThread : public RenderThreadBase,
- public ChildThread {
+class CONTENT_EXPORT RenderThread : public RenderThreadBase,
+ public ChildThread {
public:
// Grabs the IPC channel name from the command line.
RenderThread();
diff --git a/content/renderer/render_view.h b/content/renderer/render_view.h
index cadbc81..9c8d31e 100644
--- a/content/renderer/render_view.h
+++ b/content/renderer/render_view.h
@@ -23,6 +23,7 @@
#include "build/build_config.h"
#include "content/renderer/render_view_selection.h"
#include "content/renderer/renderer_webcookiejar_impl.h"
+#include "content/common/content_export.h"
#include "content/common/edit_command.h"
#include "content/common/navigation_gesture.h"
#include "content/common/page_zoom.h"
@@ -189,16 +190,16 @@ class RenderView : public RenderWidget,
// Visit all RenderViews with a live WebView (i.e., RenderViews that have
// been closed but not yet destroyed are excluded).
- static void ForEach(RenderViewVisitor* visitor);
+ CONTENT_EXPORT static void ForEach(RenderViewVisitor* visitor);
// Returns the RenderView containing the given WebView.
- static RenderView* FromWebView(WebKit::WebView* webview);
+ CONTENT_EXPORT static RenderView* FromWebView(WebKit::WebView* webview);
// Sets the "next page id" counter.
static void SetNextPageID(int32 next_page_id);
// May return NULL when the view is closing.
- WebKit::WebView* webview() const;
+ CONTENT_EXPORT WebKit::WebView* webview() const;
// Called by a GraphicsContext associated with this view when swapbuffers
// is posted, completes or is aborted.
@@ -241,10 +242,10 @@ class RenderView : public RenderWidget,
void RemoveObserver(RenderViewObserver* observer);
// Evaluates a string of JavaScript in a particular frame.
- void EvaluateScript(const string16& frame_xpath,
- const string16& jscript,
- int id,
- bool notify_result);
+ CONTENT_EXPORT void EvaluateScript(const string16& frame_xpath,
+ const string16& jscript,
+ int id,
+ bool notify_result);
// Adds the given file chooser request to the file_chooser_completion_ queue
// (see that var for more) and requests the chooser be displayed if there are
@@ -259,17 +260,18 @@ class RenderView : public RenderWidget,
void SetReportLoadProgressEnabled(bool enabled);
// Gets the focused node. If no such node exists then the node will be isNull.
- WebKit::WebNode GetFocusedNode() const;
+ CONTENT_EXPORT WebKit::WebNode GetFocusedNode() const;
// Returns true if the parameter node is a textfield, text area or a content
// editable div.
- bool IsEditableNode(const WebKit::WebNode& node);
+ CONTENT_EXPORT bool IsEditableNode(const WebKit::WebNode& node);
- void LoadNavigationErrorPage(WebKit::WebFrame* frame,
- const WebKit::WebURLRequest& failed_request,
- const WebKit::WebURLError& error,
- const std::string& html,
- bool replace);
+ CONTENT_EXPORT void LoadNavigationErrorPage(
+ WebKit::WebFrame* frame,
+ const WebKit::WebURLRequest& failed_request,
+ const WebKit::WebURLError& error,
+ const std::string& html,
+ bool replace);
// Plugin-related functions --------------------------------------------------
// (See also WebPluginPageDelegate implementation.)
@@ -278,13 +280,14 @@ class RenderView : public RenderWidget,
void PluginCrashed(const FilePath& plugin_path);
// Create a new NPAPI plugin.
- WebKit::WebPlugin* CreateNPAPIPlugin(WebKit::WebFrame* frame,
- const WebKit::WebPluginParams& params,
- const FilePath& path,
- const std::string& mime_type);
+ CONTENT_EXPORT WebKit::WebPlugin* CreateNPAPIPlugin(
+ WebKit::WebFrame* frame,
+ const WebKit::WebPluginParams& params,
+ const FilePath& path,
+ const std::string& mime_type);
// Create a new Pepper plugin.
- WebKit::WebPlugin* CreatePepperPlugin(
+ CONTENT_EXPORT WebKit::WebPlugin* CreatePepperPlugin(
WebKit::WebFrame* frame,
const WebKit::WebPluginParams& params,
const FilePath& path,
@@ -295,8 +298,9 @@ class RenderView : public RenderWidget,
webkit::ppapi::PluginInstance* plugin);
// Create a new plugin without checking the content settings.
- WebKit::WebPlugin* CreatePluginNoCheck(WebKit::WebFrame* frame,
- const WebKit::WebPluginParams& params);
+ CONTENT_EXPORT WebKit::WebPlugin* CreatePluginNoCheck(
+ WebKit::WebFrame* frame,
+ const WebKit::WebPluginParams& params);
// Informs the render view that a PPAPI plugin has gained or lost focus.
void PpapiPluginFocusChanged();
diff --git a/content/renderer/render_view_observer.h b/content/renderer/render_view_observer.h
index 78ce58f..de5dda5 100644
--- a/content/renderer/render_view_observer.h
+++ b/content/renderer/render_view_observer.h
@@ -7,6 +7,7 @@
#pragma once
#include "base/basictypes.h"
+#include "content/common/content_export.h"
#include "ipc/ipc_channel.h"
#include "third_party/WebKit/Source/WebKit/chromium/public/WebIconURL.h"
@@ -26,8 +27,8 @@ struct WebURLError;
// Base class for objects that want to filter incoming IPCs, and also get
// notified of changes to the frame.
-class RenderViewObserver : public IPC::Channel::Listener,
- public IPC::Message::Sender {
+class CONTENT_EXPORT RenderViewObserver : public IPC::Channel::Listener,
+ public IPC::Message::Sender {
public:
// By default, observers will be deleted when the RenderView goes away. If
// they want to outlive it, they can override this function.
diff --git a/content/renderer/v8_value_converter.h b/content/renderer/v8_value_converter.h
index 6c3c6a9..4c74f2f 100644
--- a/content/renderer/v8_value_converter.h
+++ b/content/renderer/v8_value_converter.h
@@ -5,6 +5,7 @@
#ifndef CHROME_RENDERER_V8_VALUE_CONVERTER_H_
#define CHROME_RENDERER_V8_VALUE_CONVERTER_H_
+#include "content/common/content_export.h"
#include "v8/include/v8.h"
namespace base {
@@ -20,7 +21,7 @@ class Value;
// Only the JSON types (null, boolean, string, number, array, and object) are
// supported by default. Additional types can be allowed with e.g.
// set_allow_date(), set_allow_regexp().
-class V8ValueConverter {
+class CONTENT_EXPORT V8ValueConverter {
public:
V8ValueConverter();
diff --git a/content/renderer/web_ui_bindings.h b/content/renderer/web_ui_bindings.h
index 0d49c96..b8f8c81 100644
--- a/content/renderer/web_ui_bindings.h
+++ b/content/renderer/web_ui_bindings.h
@@ -6,6 +6,7 @@
#define CONTENT_RENDERER_WEB_UI_BINDINGS_H_
#pragma once
+#include "content/common/content_export.h"
#include "ipc/ipc_message.h"
#include "webkit/glue/cpp_bound_class.h"
@@ -14,8 +15,8 @@
// in the browser process.
class DOMBoundBrowserObject : public CppBoundClass {
public:
- DOMBoundBrowserObject();
- virtual ~DOMBoundBrowserObject();
+ CONTENT_EXPORT DOMBoundBrowserObject();
+ CONTENT_EXPORT virtual ~DOMBoundBrowserObject();
// Set the message channel back to the browser.
void set_message_sender(IPC::Message::Sender* sender) {
diff --git a/content/utility/utility_thread.h b/content/utility/utility_thread.h
index 18605d8..bc19482 100644
--- a/content/utility/utility_thread.h
+++ b/content/utility/utility_thread.h
@@ -13,6 +13,7 @@
#include "base/compiler_specific.h"
#include "base/string16.h"
#include "content/common/child_thread.h"
+#include "content/common/content_export.h"
class IndexedDBKey;
class SerializedScriptValue;
@@ -28,7 +29,7 @@ class UtilityThread : public ChildThread {
virtual ~UtilityThread();
// Releases the process if we are not (or no longer) in batch mode.
- void ReleaseProcessIfNeeded();
+ CONTENT_EXPORT void ReleaseProcessIfNeeded();
// Returns the one utility thread.
static UtilityThread* current() {