From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Jeremy Apthorp <nornagon@nornagon.net>
Date: Thu, 20 Sep 2018 17:48:31 -0700
Subject: libgtkui_export.patch

Export libgtkui symbols for the GN component build.

diff --git a/chrome/browser/ui/libgtkui/gtk_util.h b/chrome/browser/ui/libgtkui/gtk_util.h
index adea4a859d96e219acc92c9178574f089a57944c..df615a91c00d22cabafffebe151728010fe9c1c4 100644
--- a/chrome/browser/ui/libgtkui/gtk_util.h
+++ b/chrome/browser/ui/libgtkui/gtk_util.h
@@ -11,6 +11,7 @@
 #include "ui/base/glib/scoped_gobject.h"
 #include "ui/native_theme/native_theme.h"
 #include "ui/views/window/frame_buttons.h"
+#include "chrome/browser/ui/libgtkui/libgtkui_export.h"
 
 namespace aura {
 class Window;
@@ -33,10 +34,10 @@ namespace libgtkui {
 
 extern const color_utils::HSL kDefaultTintFrameIncognito;
 
-void GtkInitFromCommandLine(const base::CommandLine& command_line);
+LIBGTKUI_EXPORT void GtkInitFromCommandLine(const base::CommandLine& command_line);
 
 // Returns the name of the ".desktop" file associated with our running process.
-std::string GetDesktopName(base::Environment* env);
+LIBGTKUI_EXPORT std::string GetDesktopName(base::Environment* env);
 
 guint GetGdkKeyCodeForAccelerator(const ui::Accelerator& accelerator);
 
@@ -51,7 +52,7 @@ void TurnButtonBlue(GtkWidget* button);
 
 // Sets |dialog| as transient for |parent|, which will keep it on top and center
 // it above |parent|. Do nothing if |parent| is nullptr.
-void SetGtkTransientForAura(GtkWidget* dialog, aura::Window* parent);
+LIBGTKUI_EXPORT void SetGtkTransientForAura(GtkWidget* dialog, aura::Window* parent);
 
 // Gets the transient parent aura window for |dialog|.
 aura::Window* GetAuraTransientParent(GtkWidget* dialog);
@@ -157,7 +158,7 @@ void ApplyCssToContext(GtkStyleContext* context, const std::string& css);
 
 // Get the 'color' property from the style context created by
 // GetStyleContextFromCss(|css_selector|).
-SkColor GetFgColor(const std::string& css_selector);
+LIBGTKUI_EXPORT SkColor GetFgColor(const std::string& css_selector);
 
 ScopedCssProvider GetCssProvider(const std::string& css);
 
@@ -170,7 +171,7 @@ void RenderBackground(const gfx::Size& size,
 // Renders a background from the style context created by
 // GetStyleContextFromCss(|css_selector|) into a 24x24 bitmap and
 // returns the average color.
-SkColor GetBgColor(const std::string& css_selector);
+LIBGTKUI_EXPORT SkColor GetBgColor(const std::string& css_selector);
 
 // Renders the border from the style context created by
 // GetStyleContextFromCss(|css_selector|) into a 24x24 bitmap and
diff --git a/chrome/browser/ui/libgtkui/skia_utils_gtk.h b/chrome/browser/ui/libgtkui/skia_utils_gtk.h
index bd6ed68a11b0b6c08962f688c799bd0f6b8a8d0e..b1184475e0ab9f381dc3c78b1092e2e0ec59d60b 100644
--- a/chrome/browser/ui/libgtkui/skia_utils_gtk.h
+++ b/chrome/browser/ui/libgtkui/skia_utils_gtk.h
@@ -8,6 +8,7 @@
 #include <gtk/gtk.h>
 #include <stdint.h>
 
+#include "chrome/browser/ui/libgtkui/libgtkui_export.h"
 #include "third_party/skia/include/core/SkColor.h"
 
 #if !GTK_CHECK_VERSION(3, 90, 0)
@@ -48,7 +49,7 @@ const SkBitmap GdkPixbufToImageSkia(GdkPixbuf* pixbuf);
 // Convert and copy a SkBitmap to a GdkPixbuf. NOTE: this uses BGRAToRGBA, so
 // it is an expensive operation.  The returned GdkPixbuf will have a refcount of
 // 1, and the caller is responsible for unrefing it when done.
-GdkPixbuf* GdkPixbufFromSkBitmap(const SkBitmap& bitmap);
+LIBGTKUI_EXPORT GdkPixbuf* GdkPixbufFromSkBitmap(const SkBitmap& bitmap);
 
 }  // namespace libgtkui
 
diff --git a/chrome/browser/ui/libgtkui/unity_service.h b/chrome/browser/ui/libgtkui/unity_service.h
index 8d67e1460837c7f8adb151adea131cc6440659a3..95fbb27b6a81e4d73d239e94f5105078a936b5af 100644
--- a/chrome/browser/ui/libgtkui/unity_service.h
+++ b/chrome/browser/ui/libgtkui/unity_service.h
@@ -5,18 +5,20 @@
 #ifndef CHROME_BROWSER_UI_LIBGTKUI_UNITY_SERVICE_H_
 #define CHROME_BROWSER_UI_LIBGTKUI_UNITY_SERVICE_H_
 
+#include "chrome/browser/ui/libgtkui/libgtkui_export.h"
+
 namespace unity {
 
 // Returns whether unity is currently running.
-bool IsRunning();
+LIBGTKUI_EXPORT bool IsRunning();
 
 // If unity is running, sets the download counter in the dock icon. Any value
 // other than 0 displays the badge.
-void SetDownloadCount(int count);
+LIBGTKUI_EXPORT void SetDownloadCount(int count);
 
 // If unity is running, sets the download progress bar in the dock icon. Any
 // value between 0.0 and 1.0 (exclusive) shows the progress bar.
-void SetProgressFraction(float percentage);
+LIBGTKUI_EXPORT void SetProgressFraction(float percentage);
 
 }  // namespace unity