diff options
author | dpranke@chromium.org <dpranke@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-10-04 17:16:16 +0000 |
---|---|---|
committer | dpranke@chromium.org <dpranke@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-10-04 17:16:16 +0000 |
commit | 97efb8e4233980eaa78be2b9e92e29602ab55c03 (patch) | |
tree | af0d0591af481eaab30b3c486a371feccde52036 | |
parent | 413ff204295280c8d54b93f1eded372b07e34015 (diff) | |
download | chromium_src-97efb8e4233980eaa78be2b9e92e29602ab55c03.zip chromium_src-97efb8e4233980eaa78be2b9e92e29602ab55c03.tar.gz chromium_src-97efb8e4233980eaa78be2b9e92e29602ab55c03.tar.bz2 |
Export some unix-specific content symbols.
R=jam@chromium.org
BUG=90442
TEST=
Review URL: http://codereview.chromium.org/8113027
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@103929 0039d316-1c4b-4281-b951-d872f2087c98
24 files changed, 64 insertions, 38 deletions
diff --git a/chrome/renderer/chrome_ppb_pdf_impl.cc b/chrome/renderer/chrome_ppb_pdf_impl.cc index 842878e..c28603b 100644 --- a/chrome/renderer/chrome_ppb_pdf_impl.cc +++ b/chrome/renderer/chrome_ppb_pdf_impl.cc @@ -8,6 +8,7 @@ #include "base/utf_string_conversions.h" #include "build/build_config.h" #include "chrome/common/render_messages.h" +#include "content/common/child_process_sandbox_support_linux.h" #include "content/renderer/pepper_plugin_delegate_impl.h" #include "content/renderer/render_thread.h" #include "grit/webkit_resources.h" @@ -23,7 +24,6 @@ #include "ui/base/l10n/l10n_util.h" #include "ui/base/resource/resource_bundle.h" #include "unicode/usearch.h" -#include "webkit/glue/webkit_glue.h" #include "webkit/plugins/ppapi/plugin_delegate.h" #include "webkit/plugins/ppapi/plugin_module.h" #include "webkit/plugins/ppapi/ppapi_plugin_instance.h" @@ -44,7 +44,7 @@ class PrivateFontFile : public ppapi::Resource { void* output, uint32_t* output_length) { size_t temp_size = static_cast<size_t>(*output_length); - bool rv = webkit_glue::GetFontTable( + bool rv = child_process_sandbox_support::GetFontTable( fd_, table, static_cast<uint8_t*>(output), &temp_size); *output_length = static_cast<uint32_t>(temp_size); return rv; @@ -187,7 +187,7 @@ PP_Resource GetFontFileWithFallback( if (!face_name) return 0; - int fd = webkit_glue::MatchFontWithFallback( + int fd = child_process_sandbox_support::MatchFontWithFallback( face_name->value().c_str(), description->weight >= PP_FONTWEIGHT_BOLD, description->italic, diff --git a/content/browser/cancelable_request.h b/content/browser/cancelable_request.h index f614cbc..0e51a9e 100644 --- a/content/browser/cancelable_request.h +++ b/content/browser/cancelable_request.h @@ -210,7 +210,8 @@ class CancelableRequestConsumerBase { // The type T should be small and easily copyable (like a pointer // or an integer). template<class T> -class CancelableRequestConsumerTSimple : public CancelableRequestConsumerBase { +class CONTENT_EXPORT CancelableRequestConsumerTSimple + : public CancelableRequestConsumerBase { public: CancelableRequestConsumerTSimple(); @@ -451,7 +452,8 @@ void CancelableRequestConsumerTSimple<T>::DidExecute( // See CancelableRequestConsumerTSimple. The default value for T // is given in |initial_t|. template<class T, T initial_t> -class CancelableRequestConsumerT : public CancelableRequestConsumerTSimple<T> { +class CONTENT_EXPORT CancelableRequestConsumerT + : public CancelableRequestConsumerTSimple<T> { public: CancelableRequestConsumerT(); virtual ~CancelableRequestConsumerT(); diff --git a/content/browser/download/drag_download_util.h b/content/browser/download/drag_download_util.h index 965c6f2..df8bde0 100644 --- a/content/browser/download/drag_download_util.h +++ b/content/browser/download/drag_download_util.h @@ -38,10 +38,10 @@ CONTENT_EXPORT bool ParseDownloadMetadata(const string16& metadata, // 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. // Return a FileStream if successful. -net::FileStream* CreateFileStreamForDrop(FilePath* file_path); +CONTENT_EXPORT net::FileStream* CreateFileStreamForDrop(FilePath* file_path); // Implementation of DownloadFileObserver to finalize the download process. -class PromiseFileFinalizer : public ui::DownloadFileObserver { +class CONTENT_EXPORT PromiseFileFinalizer : public ui::DownloadFileObserver { public: explicit PromiseFileFinalizer(DragDownloadFile* drag_file_downloader); virtual ~PromiseFileFinalizer(); diff --git a/content/browser/geolocation/gps_location_provider_linux.h b/content/browser/geolocation/gps_location_provider_linux.h index bea8eb4..7778620 100644 --- a/content/browser/geolocation/gps_location_provider_linux.h +++ b/content/browser/geolocation/gps_location_provider_linux.h @@ -14,6 +14,7 @@ #include "base/memory/scoped_ptr.h" #include "base/task.h" #include "content/browser/geolocation/location_provider.h" +#include "content/common/content_export.h" #include "content/common/geoposition.h" class LibGps; @@ -23,7 +24,7 @@ class LibGps; // IO thread). As the older libgps API is not designed to support polling, // there's a chance it could block, so better move this into its own worker // thread. -class GpsLocationProviderLinux : public LocationProviderBase { +class CONTENT_EXPORT GpsLocationProviderLinux : public LocationProviderBase { public: typedef LibGps* (*LibGpsFactory)(); // |factory| will be used to create the gpsd client library wrapper. (Note diff --git a/content/browser/geolocation/libgps_wrapper_linux.h b/content/browser/geolocation/libgps_wrapper_linux.h index 5a9f428..6ed6c40 100644 --- a/content/browser/geolocation/libgps_wrapper_linux.h +++ b/content/browser/geolocation/libgps_wrapper_linux.h @@ -17,11 +17,12 @@ #include "base/memory/scoped_ptr.h" #include "base/time.h" +#include "content/common/content_export.h" struct Geoposition; class LibGpsLibraryWrapper; -class LibGps { +class CONTENT_EXPORT LibGps { public: virtual ~LibGps(); // Attempts to dynamically load the libgps.so library, and creates and @@ -65,7 +66,7 @@ struct gps_data_t; // Wraps the low-level shared object, binding C++ member functions onto the // underlying C functions obtained from the library. -class LibGpsLibraryWrapper { +class CONTENT_EXPORT LibGpsLibraryWrapper { public: typedef gps_data_t* (*gps_open_fn)(const char*, const char*); typedef int (*gps_close_fn)(gps_data_t*); diff --git a/content/browser/geolocation/wifi_data_provider_linux.h b/content/browser/geolocation/wifi_data_provider_linux.h index 434e6e5..fa92ce9 100644 --- a/content/browser/geolocation/wifi_data_provider_linux.h +++ b/content/browser/geolocation/wifi_data_provider_linux.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,12 +7,13 @@ #pragma once #include "content/browser/geolocation/wifi_data_provider_common.h" +#include "content/common/content_export.h" namespace dbus { class Bus; }; -class WifiDataProviderLinux : public WifiDataProviderCommon { +class CONTENT_EXPORT WifiDataProviderLinux : public WifiDataProviderCommon { public: WifiDataProviderLinux(); diff --git a/content/browser/renderer_host/backing_store_gtk.h b/content/browser/renderer_host/backing_store_gtk.h index f502bc3..60e8c80 100644 --- a/content/browser/renderer_host/backing_store_gtk.h +++ b/content/browser/renderer_host/backing_store_gtk.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 "base/basictypes.h" #include "build/build_config.h" #include "content/browser/renderer_host/backing_store.h" +#include "content/common/content_export.h" #include "ui/base/x/x11_util.h" namespace gfx { @@ -19,7 +20,7 @@ class Rect; typedef struct _GdkDrawable GdkDrawable; class SkBitmap; -class BackingStoreGtk : public BackingStore { +class CONTENT_EXPORT BackingStoreGtk : public BackingStore { public: // Create a backing store on the X server. The visual is an Xlib Visual // describing the format of the target window and the depth is the color diff --git a/content/browser/renderer_host/backing_store_manager.h b/content/browser/renderer_host/backing_store_manager.h index 0ea14b8..74c1575 100644 --- a/content/browser/renderer_host/backing_store_manager.h +++ b/content/browser/renderer_host/backing_store_manager.h @@ -65,7 +65,7 @@ class BackingStoreManager { // Expires the given backing store. This emulates something getting evicted // from the cache for the purpose of testing. Returns true if the host was // removed, false if it wasn't found. - static bool ExpireBackingStoreForTest(RenderWidgetHost* host); + CONTENT_EXPORT static bool ExpireBackingStoreForTest(RenderWidgetHost* host); // Current size in bytes of the backing store cache. CONTENT_EXPORT static size_t MemorySize(); diff --git a/content/browser/renderer_host/gtk_key_bindings_handler.h b/content/browser/renderer_host/gtk_key_bindings_handler.h index 9b7d6dc..665241b 100644 --- a/content/browser/renderer_host/gtk_key_bindings_handler.h +++ b/content/browser/renderer_host/gtk_key_bindings_handler.h @@ -11,6 +11,7 @@ #include <string> #include "content/common/edit_command.h" +#include "content/common/content_export.h" #include "ui/base/gtk/owned_widget_gtk.h" struct NativeWebKeyboardEvent; @@ -34,7 +35,7 @@ struct NativeWebKeyboardEvent; // definition of webkit edit commands. // See webkit/glue/editor_client_impl.cc for key bindings predefined in our // webkit glue. -class GtkKeyBindingsHandler { +class CONTENT_EXPORT GtkKeyBindingsHandler { public: explicit GtkKeyBindingsHandler(GtkWidget* parent_widget); ~GtkKeyBindingsHandler(); diff --git a/content/browser/renderer_host/render_sandbox_host_linux.h b/content/browser/renderer_host/render_sandbox_host_linux.h index 8a4d0aa11..c43278b 100644 --- a/content/browser/renderer_host/render_sandbox_host_linux.h +++ b/content/browser/renderer_host/render_sandbox_host_linux.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. @@ -11,12 +11,13 @@ #include <string> #include "base/logging.h" +#include "content/common/content_export.h" template <typename T> struct DefaultSingletonTraits; // This is a singleton object which handles sandbox requests from the // renderers. -class RenderSandboxHostLinux { +class CONTENT_EXPORT RenderSandboxHostLinux { public: // Returns the singleton instance. static RenderSandboxHostLinux* GetInstance(); diff --git a/content/browser/renderer_host/render_widget_host_view.h b/content/browser/renderer_host/render_widget_host_view.h index 3d302ed..a60f461 100644 --- a/content/browser/renderer_host/render_widget_host_view.h +++ b/content/browser/renderer_host/render_widget_host_view.h @@ -78,7 +78,8 @@ class RenderWidgetHostView { // // The RenderWidgetHost must already be created (because we can't know if it's // going to be a regular RenderWidgetHost or a RenderViewHost (a subclass). - static RenderWidgetHostView* CreateViewForWidget(RenderWidgetHost* widget); + CONTENT_EXPORT static RenderWidgetHostView* CreateViewForWidget( + RenderWidgetHost* widget); // Perform all the initialization steps necessary for this object to represent // a popup (such as a <select> dropdown), then shows the popup at |pos|. diff --git a/content/browser/renderer_host/render_widget_host_view_gtk.h b/content/browser/renderer_host/render_widget_host_view_gtk.h index 93925f4..2322dd8 100644 --- a/content/browser/renderer_host/render_widget_host_view_gtk.h +++ b/content/browser/renderer_host/render_widget_host_view_gtk.h @@ -14,6 +14,7 @@ #include "base/memory/scoped_ptr.h" #include "base/time.h" #include "content/browser/renderer_host/render_widget_host_view.h" +#include "content/common/content_export.h" #include "ui/base/animation/animation_delegate.h" #include "ui/base/animation/slide_animation.h" #include "ui/base/gtk/gtk_signal.h" @@ -41,8 +42,8 @@ typedef struct _GtkSelectionData GtkSelectionData; // ----------------------------------------------------------------------------- // See comments in render_widget_host_view.h about this class and its members. // ----------------------------------------------------------------------------- -class RenderWidgetHostViewGtk : public RenderWidgetHostView, - public ui::AnimationDelegate { +class CONTENT_EXPORT RenderWidgetHostViewGtk : public RenderWidgetHostView, + public ui::AnimationDelegate { public: explicit RenderWidgetHostViewGtk(RenderWidgetHost* widget); virtual ~RenderWidgetHostViewGtk(); diff --git a/content/browser/renderer_host/resource_queue.h b/content/browser/renderer_host/resource_queue.h index 3f867ee..d8cecec 100644 --- a/content/browser/renderer_host/resource_queue.h +++ b/content/browser/renderer_host/resource_queue.h @@ -22,7 +22,7 @@ struct GlobalRequestID; // Makes decisions about delaying or not each net::URLRequest in the queue. // All methods are called on the IO thread. -class ResourceQueueDelegate { +class CONTENT_EXPORT ResourceQueueDelegate { public: // Gives the delegate a pointer to the queue object. virtual void Initialize(ResourceQueue* resource_queue) = 0; @@ -40,7 +40,7 @@ class ResourceQueueDelegate { virtual void WillShutdownResourceQueue() = 0; protected: - CONTENT_EXPORT virtual ~ResourceQueueDelegate(); + virtual ~ResourceQueueDelegate(); }; // Makes it easy to delay starting URL requests until specified conditions are diff --git a/content/browser/speech/speech_input_dispatcher_host.cc b/content/browser/speech/speech_input_dispatcher_host.cc index 54fd4ee..ad1089d 100644 --- a/content/browser/speech/speech_input_dispatcher_host.cc +++ b/content/browser/speech/speech_input_dispatcher_host.cc @@ -105,6 +105,10 @@ int SpeechInputDispatcherHost::SpeechInputCallers::request_id(int id) { SpeechInputManager* SpeechInputDispatcherHost::manager_; +void SpeechInputDispatcherHost::set_manager(SpeechInputManager* manager) { + manager_ = manager; +} + SpeechInputDispatcherHost::SpeechInputDispatcherHost( int render_process_id, net::URLRequestContextGetter* context_getter, diff --git a/content/browser/speech/speech_input_dispatcher_host.h b/content/browser/speech/speech_input_dispatcher_host.h index 8dbb65e..7fea90d 100644 --- a/content/browser/speech/speech_input_dispatcher_host.h +++ b/content/browser/speech/speech_input_dispatcher_host.h @@ -39,9 +39,7 @@ class SpeechInputDispatcherHost : public BrowserMessageFilter, bool* message_was_ok); // Singleton manager setter useful for tests. - CONTENT_EXPORT static void set_manager(SpeechInputManager* manager) { - manager_ = manager; - } + CONTENT_EXPORT static void set_manager(SpeechInputManager* manager); private: virtual ~SpeechInputDispatcherHost(); diff --git a/content/browser/zygote_host_linux.h b/content/browser/zygote_host_linux.h index facabbb..e655b6e 100644 --- a/content/browser/zygote_host_linux.h +++ b/content/browser/zygote_host_linux.h @@ -15,6 +15,7 @@ #include "base/process.h" #include "base/process_util.h" #include "base/synchronization/lock.h" +#include "content/common/content_export.h" template<typename Type> struct DefaultSingletonTraits; @@ -25,7 +26,7 @@ static const char kZygoteMagic[] = "ZYGOTE_OK"; // The zygote host is the interface, in the browser process, to the zygote // process. -class ZygoteHost { +class CONTENT_EXPORT ZygoteHost { public: // Returns the singleton instance. static ZygoteHost* GetInstance(); diff --git a/content/common/child_process_sandbox_support_linux.h b/content/common/child_process_sandbox_support_linux.h index 4e7b4fb..a7537c2 100644 --- a/content/common/child_process_sandbox_support_linux.h +++ b/content/common/child_process_sandbox_support_linux.h @@ -10,6 +10,8 @@ #include <string> +#include "content/common/content_export.h" + namespace WebKit { struct WebFontRenderStyle; } @@ -34,14 +36,15 @@ void getRenderStyleForStrike(const char* family, int sizeAndStyle, // Returns a file descriptor for a shared memory segment. // The second argument is ignored because SHM segments are always // mappable with PROT_EXEC on Linux. -int MakeSharedMemorySegmentViaIPC(size_t length, bool executable); +CONTENT_EXPORT int MakeSharedMemorySegmentViaIPC(size_t length, + bool executable); // Return a read-only file descriptor to the font which best matches the given // properties or -1 on failure. // charset: specifies the language(s) that the font must cover. See // render_sandbox_host_linux.cc for more information. -int MatchFontWithFallback(const std::string& face, bool bold, - bool italic, int charset); +CONTENT_EXPORT int MatchFontWithFallback(const std::string& face, bool bold, + bool italic, int charset); // GetFontTable loads a specified font table from an open SFNT file. // fd: a file descriptor to the SFNT file. The position doesn't matter. @@ -51,8 +54,8 @@ int MatchFontWithFallback(const std::string& face, bool bold, // output_length: size of output, if it's not 0. // // returns: true on success. -bool GetFontTable(int fd, uint32_t table, uint8_t* output, - size_t* output_length); +CONTENT_EXPORT bool GetFontTable(int fd, uint32_t table, uint8_t* output, + size_t* output_length); }; // namespace child_process_sandbox_support diff --git a/content/common/content_constants.h b/content/common/content_constants.h index 20d4840..6c8b66d 100644 --- a/content/common/content_constants.h +++ b/content/common/content_constants.h @@ -29,7 +29,7 @@ extern const size_t kMaxTitleChars; // We have different values for "max accepted" and "max displayed" because // 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; +CONTENT_EXPORT extern const size_t kMaxURLChars; CONTENT_EXPORT extern const size_t kMaxURLDisplayChars; // The render view and render process id associated with the default plugin diff --git a/content/common/pepper_messages.h b/content/common/pepper_messages.h index b89705e..f702ee6 100644 --- a/content/common/pepper_messages.h +++ b/content/common/pepper_messages.h @@ -3,11 +3,14 @@ // found in the LICENSE file. // Multiply-included message file, no traditional include guard +#include "content/common/content_export.h" #include "ipc/ipc_message_macros.h" #include "ipc/ipc_platform_file.h" #include "ppapi/c/private/ppb_flash_net_connector.h" #include "ppapi/proxy/ppapi_param_traits.h" +#undef IPC_MESSAGE_EXPORT +#define IPC_MESSAGE_EXPORT CONTENT_EXPORT #define IPC_MESSAGE_START PepperMsgStart // Pepper (non-file-system) messages sent from the browser to the renderer. diff --git a/content/common/process_watcher.h b/content/common/process_watcher.h index 2a134be..f8ad6fbc 100644 --- a/content/common/process_watcher.h +++ b/content/common/process_watcher.h @@ -1,4 +1,4 @@ -// Copyright (c) 2006-2008 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,9 @@ #include "base/basictypes.h" #include "base/process.h" +#include "content/common/content_export.h" -class ProcessWatcher { +class CONTENT_EXPORT ProcessWatcher { public: // This method ensures that the specified process eventually terminates, and // then it closes the given process handle. diff --git a/content/common/unix_domain_socket_posix.h b/content/common/unix_domain_socket_posix.h index 182cc45..055fb0f 100644 --- a/content/common/unix_domain_socket_posix.h +++ b/content/common/unix_domain_socket_posix.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,9 +10,11 @@ #include <sys/types.h> #include <vector> +#include "content/common/content_export.h" + class Pickle; -class UnixDomainSocket { +class CONTENT_EXPORT UnixDomainSocket { public: // Use sendmsg to write the given msg and include a vector of file // descriptors. Returns true if successful. diff --git a/content/content_shell.gypi b/content/content_shell.gypi index 2634d77..44607357 100644 --- a/content/content_shell.gypi +++ b/content/content_shell.gypi @@ -27,6 +27,7 @@ '../ipc/ipc.gyp:ipc', '../net/net.gyp:net', '../skia/skia.gyp:skia', + '../third_party/WebKit/Source/WebKit/chromium/WebKit.gyp:webkit', '../ui/ui.gyp:ui', '../v8/tools/gyp/v8.gyp:v8', '../webkit/support/webkit_support.gyp:appcache', diff --git a/content/content_tests.gypi b/content/content_tests.gypi index 7fd04a5..a692f16 100644 --- a/content/content_tests.gypi +++ b/content/content_tests.gypi @@ -14,6 +14,7 @@ '../skia/skia.gyp:skia', '../testing/gmock.gyp:gmock', '../testing/gtest.gyp:gtest', + '../third_party/WebKit/Source/WebKit/chromium/WebKit.gyp:webkit', '../ui/gfx/surface/surface.gyp:surface', '../ui/ui.gyp:ui_test_support', '../webkit/support/webkit_support.gyp:appcache', @@ -97,6 +98,7 @@ '../testing/gmock.gyp:gmock', '../testing/gtest.gyp:gtest', '../third_party/libjingle/libjingle.gyp:libjingle', + '../third_party/WebKit/Source/WebKit/chromium/WebKit.gyp:webkit', '../ui/gfx/gl/gl.gyp:gl', '../ui/ui.gyp:ui', '../webkit/support/webkit_support.gyp:glue', diff --git a/content/renderer/render_view.h b/content/renderer/render_view.h index fe293aa..1b16fa6 100644 --- a/content/renderer/render_view.h +++ b/content/renderer/render_view.h @@ -353,7 +353,8 @@ class RenderView : public RenderWidget, // Asks the host to create a block of shared memory for the renderer. // The shared memory handle allocated by the host is returned back. - base::SharedMemoryHandle HostAllocateSharedMemoryBuffer(uint32 buffer_size); + CONTENT_EXPORT base::SharedMemoryHandle HostAllocateSharedMemoryBuffer( + uint32 buffer_size); // IPC::Channel::Listener implementation ------------------------------------- |