diff options
Diffstat (limited to 'chrome')
-rw-r--r-- | chrome/browser/gtk/bookmark_bar_gtk.cc | 2 | ||||
-rw-r--r-- | chrome/browser/gtk/bookmark_manager_gtk.cc | 2 | ||||
-rw-r--r-- | chrome/browser/gtk/bookmark_menu_controller_gtk.cc | 2 | ||||
-rw-r--r-- | chrome/browser/gtk/bookmark_utils_gtk.cc | 2 | ||||
-rw-r--r-- | chrome/browser/gtk/browser_toolbar_gtk.cc | 2 | ||||
-rw-r--r-- | chrome/browser/gtk/gtk_dnd_util.cc | 151 | ||||
-rw-r--r-- | chrome/browser/gtk/gtk_dnd_util.h | 70 | ||||
-rw-r--r-- | chrome/browser/gtk/tab_contents_drag_source.cc | 2 | ||||
-rw-r--r-- | chrome/browser/gtk/tabs/tab_gtk.cc | 2 | ||||
-rw-r--r-- | chrome/browser/gtk/tabs/tab_strip_gtk.cc | 2 | ||||
-rw-r--r-- | chrome/browser/tab_contents/tab_contents_view_gtk.cc | 2 | ||||
-rw-r--r-- | chrome/chrome.gyp | 4 |
12 files changed, 9 insertions, 234 deletions
diff --git a/chrome/browser/gtk/bookmark_bar_gtk.cc b/chrome/browser/gtk/bookmark_bar_gtk.cc index 36456c9..a739131 100644 --- a/chrome/browser/gtk/bookmark_bar_gtk.cc +++ b/chrome/browser/gtk/bookmark_bar_gtk.cc @@ -7,6 +7,7 @@ #include <vector> #include "app/gfx/text_elider.h" +#include "app/gtk_dnd_util.h" #include "app/l10n_util.h" #include "app/resource_bundle.h" #include "base/gfx/gtk_util.h" @@ -22,7 +23,6 @@ #include "chrome/browser/gtk/browser_window_gtk.h" #include "chrome/browser/gtk/custom_button.h" #include "chrome/browser/gtk/gtk_chrome_button.h" -#include "chrome/browser/gtk/gtk_dnd_util.h" #include "chrome/browser/gtk/gtk_theme_provider.h" #include "chrome/browser/gtk/tabs/tab_strip_gtk.h" #include "chrome/browser/gtk/view_id_util.h" diff --git a/chrome/browser/gtk/bookmark_manager_gtk.cc b/chrome/browser/gtk/bookmark_manager_gtk.cc index 5bf9159..5d9cf43 100644 --- a/chrome/browser/gtk/bookmark_manager_gtk.cc +++ b/chrome/browser/gtk/bookmark_manager_gtk.cc @@ -7,6 +7,7 @@ #include <gdk/gdkkeysyms.h> #include <vector> +#include "app/gtk_dnd_util.h" #include "app/l10n_util.h" #include "app/resource_bundle.h" #include "base/path_service.h" @@ -19,7 +20,6 @@ #include "chrome/browser/browser_process.h" #include "chrome/browser/gtk/bookmark_tree_model.h" #include "chrome/browser/gtk/bookmark_utils_gtk.h" -#include "chrome/browser/gtk/gtk_dnd_util.h" #include "chrome/browser/importer/importer.h" #include "chrome/browser/profile.h" #include "chrome/common/chrome_paths.h" diff --git a/chrome/browser/gtk/bookmark_menu_controller_gtk.cc b/chrome/browser/gtk/bookmark_menu_controller_gtk.cc index b5dd5af..b059fc8 100644 --- a/chrome/browser/gtk/bookmark_menu_controller_gtk.cc +++ b/chrome/browser/gtk/bookmark_menu_controller_gtk.cc @@ -6,6 +6,7 @@ #include <gtk/gtk.h> +#include "app/gtk_dnd_util.h" #include "app/l10n_util.h" #include "app/resource_bundle.h" #include "base/gfx/gtk_util.h" @@ -14,7 +15,6 @@ #include "chrome/browser/gtk/bookmark_context_menu.h" #include "chrome/browser/gtk/bookmark_utils_gtk.h" #include "chrome/browser/gtk/gtk_chrome_button.h" -#include "chrome/browser/gtk/gtk_dnd_util.h" #include "chrome/browser/gtk/gtk_theme_provider.h" #include "chrome/browser/gtk/menu_gtk.h" #include "chrome/browser/profile.h" diff --git a/chrome/browser/gtk/bookmark_utils_gtk.cc b/chrome/browser/gtk/bookmark_utils_gtk.cc index 4dd7297..b08f4ff 100644 --- a/chrome/browser/gtk/bookmark_utils_gtk.cc +++ b/chrome/browser/gtk/bookmark_utils_gtk.cc @@ -4,6 +4,7 @@ #include "chrome/browser/gtk/bookmark_utils_gtk.h" +#include "app/gtk_dnd_util.h" #include "app/resource_bundle.h" #include "base/gfx/gtk_util.h" #include "base/pickle.h" @@ -12,7 +13,6 @@ #include "chrome/browser/bookmarks/bookmark_model.h" #include "chrome/browser/bookmarks/bookmark_utils.h" #include "chrome/browser/gtk/gtk_chrome_button.h" -#include "chrome/browser/gtk/gtk_dnd_util.h" #include "chrome/browser/gtk/gtk_theme_provider.h" #include "chrome/browser/profile.h" #include "chrome/common/gtk_util.h" diff --git a/chrome/browser/gtk/browser_toolbar_gtk.cc b/chrome/browser/gtk/browser_toolbar_gtk.cc index 61fbcea..4397220 100644 --- a/chrome/browser/gtk/browser_toolbar_gtk.cc +++ b/chrome/browser/gtk/browser_toolbar_gtk.cc @@ -7,6 +7,7 @@ #include <gdk/gdkkeysyms.h> #include <X11/XF86keysym.h> +#include "app/gtk_dnd_util.h" #include "app/l10n_util.h" #include "app/resource_bundle.h" #include "base/base_paths_linux.h" @@ -22,7 +23,6 @@ #include "chrome/browser/gtk/custom_button.h" #include "chrome/browser/gtk/go_button_gtk.h" #include "chrome/browser/gtk/gtk_chrome_button.h" -#include "chrome/browser/gtk/gtk_dnd_util.h" #include "chrome/browser/gtk/gtk_theme_provider.h" #include "chrome/browser/gtk/location_bar_view_gtk.h" #include "chrome/browser/gtk/standard_menus.h" diff --git a/chrome/browser/gtk/gtk_dnd_util.cc b/chrome/browser/gtk/gtk_dnd_util.cc deleted file mode 100644 index e3c20b5..0000000 --- a/chrome/browser/gtk/gtk_dnd_util.cc +++ /dev/null @@ -1,151 +0,0 @@ -// Copyright (c) 2009 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. - -#include "chrome/browser/gtk/gtk_dnd_util.h" - -#include "base/string_util.h" -#include "base/logging.h" -#include "base/pickle.h" -#include "googleurl/src/gurl.h" - -// static -GdkAtom GtkDndUtil::GetAtomForTarget(int target) { - switch (target) { - case CHROME_TAB: - static GdkAtom tab_atom = gdk_atom_intern( - const_cast<char*>("application/x-chrome-tab"), false); - return tab_atom; - - case TEXT_HTML: - static GdkAtom html_atom = gdk_atom_intern( - const_cast<char*>("text/html"), false); - return html_atom; - - case CHROME_BOOKMARK_ITEM: - static GdkAtom bookmark_atom = gdk_atom_intern( - const_cast<char*>("application/x-chrome-bookmark-item"), false); - return bookmark_atom; - - case TEXT_PLAIN: - static GdkAtom text_atom = gdk_atom_intern( - const_cast<char*>("text/plain"), false); - return text_atom; - - case TEXT_URI_LIST: - static GdkAtom uris_atom = gdk_atom_intern( - const_cast<char*>("text/uri-list"), false); - return uris_atom; - - case CHROME_NAMED_URL: - static GdkAtom named_url = gdk_atom_intern( - const_cast<char*>("application/x-chrome-named-url"), false); - return named_url; - - default: - NOTREACHED(); - } - - return NULL; -} - -// static -GtkTargetList* GtkDndUtil::GetTargetListFromCodeMask(int code_mask) { - GtkTargetList* targets = gtk_target_list_new(NULL, 0); - - for (size_t i = 1; i < INVALID_TARGET; i = i << 1) { - if (i == CHROME_WEBDROP_FILE_CONTENTS) - continue; - - if (i & code_mask) - AddTargetToList(targets, i); - } - - return targets; -} - -// static -void GtkDndUtil::SetSourceTargetListFromCodeMask(GtkWidget* source, - int code_mask) { - GtkTargetList* targets = GetTargetListFromCodeMask(code_mask); - gtk_drag_source_set_target_list(source, targets); - gtk_target_list_unref(targets); -} - -// static -void GtkDndUtil::SetDestTargetList(GtkWidget* dest, const int* target_codes) { - GtkTargetList* targets = gtk_target_list_new(NULL, 0); - - for (size_t i = 0; target_codes[i] != -1; ++i) { - AddTargetToList(targets, target_codes[i]); - } - - gtk_drag_dest_set_target_list(dest, targets); - gtk_target_list_unref(targets); -} - -// static -void GtkDndUtil::AddTargetToList(GtkTargetList* targets, int target_code) { - switch (target_code) { - case TEXT_PLAIN: - gtk_target_list_add_text_targets(targets, TEXT_PLAIN); - break; - - case TEXT_URI_LIST: - gtk_target_list_add_uri_targets(targets, TEXT_URI_LIST); - break; - - case TEXT_HTML: - gtk_target_list_add(targets, GetAtomForTarget(TEXT_PLAIN), 0, TEXT_HTML); - break; - - case CHROME_TAB: - case CHROME_BOOKMARK_ITEM: - case CHROME_NAMED_URL: - gtk_target_list_add(targets, GtkDndUtil::GetAtomForTarget(target_code), - GTK_TARGET_SAME_APP, target_code); - break; - - default: - NOTREACHED() << " Unexpected target code: " << target_code; - } -} - -// static -bool GtkDndUtil::ExtractNamedURL(GtkSelectionData* selection_data, - GURL* url, - string16* title) { - Pickle data(reinterpret_cast<char*>(selection_data->data), - selection_data->length); - void* iter = NULL; - std::string title_utf8, url_utf8; - if (!data.ReadString(&iter, &title_utf8) || - !data.ReadString(&iter, &url_utf8)) { - return false; - } - - GURL gurl(url_utf8); - if (!gurl.is_valid()) - return false; - - *url = gurl; - *title = UTF8ToUTF16(title_utf8); - return true; -} - -// static void -bool GtkDndUtil::ExtractURIList(GtkSelectionData* selection_data, - std::vector<GURL>* urls) { - gchar** uris = gtk_selection_data_get_uris(selection_data); - if (!uris) - return false; - - for (size_t i = 0; uris[i] != NULL; ++i) { - GURL url(uris[i]); - if (url.is_valid()) - urls->push_back(url); - } - - g_strfreev(uris); - return true; -} diff --git a/chrome/browser/gtk/gtk_dnd_util.h b/chrome/browser/gtk/gtk_dnd_util.h deleted file mode 100644 index 07a218c..0000000 --- a/chrome/browser/gtk/gtk_dnd_util.h +++ /dev/null @@ -1,70 +0,0 @@ -// Copyright (c) 2009 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. - -#ifndef CHROME_BROWSER_GTK_GTK_DND_UTIL_H_ -#define CHROME_BROWSER_GTK_GTK_DND_UTIL_H_ - -#include <gtk/gtk.h> -#include <vector> - -#include "base/string16.h" - -class GURL; - -class GtkDndUtil { - public: - // Registry of all internal int codes for drag and drop. - enum { - // Intra-application types. - CHROME_TAB = 1 << 0, - CHROME_BOOKMARK_ITEM = 1 << 1, - CHROME_WEBDROP_FILE_CONTENTS = 1 << 2, - CHROME_NAMED_URL = 1 << 3, - - // Standard types. - TEXT_PLAIN = 1 << 4, - TEXT_URI_LIST = 1 << 5, - TEXT_HTML = 1 << 6, - - INVALID_TARGET = 1 << 7, - }; - - // Get the atom for a given target (of the above enum type). Will return NULL - // for non-custom targets, such as CHROME_TEXT_PLAIN. - static GdkAtom GetAtomForTarget(int target); - - // Creates a target list from the given mask. The mask should be an OR of - // CHROME_* values. The target list is returned with ref count 1; the caller - // is responsible for unreffing it when it is no longer needed. - // Since the MIME type for WEBDROP_FILE_CONTENTS depends on the file's - // contents, that flag is ignored by this function. It is the responsibility - // of the client code to do the right thing. - static GtkTargetList* GetTargetListFromCodeMask(int code_mask); - - // Set the drag target list for |source| with the target list that - // corresponds to |code_mask|. - static void SetSourceTargetListFromCodeMask(GtkWidget* source, int code_mask); - - // Set the accepted targets list for |dest|. The |target_codes| array should - // be sorted in preference order and should be terminated with -1. - static void SetDestTargetList(GtkWidget* dest, const int* target_codes); - - // Extracts data of type CHROME_NAMED_URL from |selection_data| into - // |url| and |title|. Returns true if the url/title were safely extracted - // and the url is valid. - static bool ExtractNamedURL(GtkSelectionData* selection_data, - GURL* url, - string16* title); - - // Extracts data of type TEXT_URI_LIST from |selection_data| into |urls|. - static bool ExtractURIList(GtkSelectionData* selection_data, - std::vector<GURL>* urls); - - private: - GtkDndUtil(); - - static void AddTargetToList(GtkTargetList* targets, int target_code); -}; - -#endif // CHROME_BROWSER_GTK_GTK_DND_UTIL_H_ diff --git a/chrome/browser/gtk/tab_contents_drag_source.cc b/chrome/browser/gtk/tab_contents_drag_source.cc index 2cfd0c1d..b27ef57 100644 --- a/chrome/browser/gtk/tab_contents_drag_source.cc +++ b/chrome/browser/gtk/tab_contents_drag_source.cc @@ -4,8 +4,8 @@ #include "chrome/browser/gtk/tab_contents_drag_source.h" +#include "app/gtk_dnd_util.h" #include "base/mime_util.h" -#include "chrome/browser/gtk/gtk_dnd_util.h" #include "chrome/browser/renderer_host/render_view_host_delegate.h" #include "chrome/browser/tab_contents/tab_contents.h" #include "chrome/browser/tab_contents/tab_contents_view.h" diff --git a/chrome/browser/gtk/tabs/tab_gtk.cc b/chrome/browser/gtk/tabs/tab_gtk.cc index 93bff9bc..6d84029 100644 --- a/chrome/browser/gtk/tabs/tab_gtk.cc +++ b/chrome/browser/gtk/tabs/tab_gtk.cc @@ -6,10 +6,10 @@ #include <gdk/gdkkeysyms.h> +#include "app/gtk_dnd_util.h" #include "app/gfx/path.h" #include "app/l10n_util.h" #include "app/resource_bundle.h" -#include "chrome/browser/gtk/gtk_dnd_util.h" #include "chrome/browser/gtk/menu_gtk.h" #include "chrome/browser/gtk/standard_menus.h" #include "grit/generated_resources.h" diff --git a/chrome/browser/gtk/tabs/tab_strip_gtk.cc b/chrome/browser/gtk/tabs/tab_strip_gtk.cc index 803c026..b411ebf 100644 --- a/chrome/browser/gtk/tabs/tab_strip_gtk.cc +++ b/chrome/browser/gtk/tabs/tab_strip_gtk.cc @@ -6,6 +6,7 @@ #include <algorithm> +#include "app/gtk_dnd_util.h" #include "app/gfx/canvas_paint.h" #include "app/l10n_util.h" #include "app/resource_bundle.h" @@ -16,7 +17,6 @@ #include "chrome/browser/autocomplete/autocomplete.h" #include "chrome/browser/browser_theme_provider.h" #include "chrome/browser/gtk/custom_button.h" -#include "chrome/browser/gtk/gtk_dnd_util.h" #include "chrome/browser/gtk/gtk_theme_provider.h" #include "chrome/browser/gtk/tabs/dragged_tab_controller_gtk.h" #include "chrome/browser/profile.h" diff --git a/chrome/browser/tab_contents/tab_contents_view_gtk.cc b/chrome/browser/tab_contents/tab_contents_view_gtk.cc index 1ddf615..d08c780 100644 --- a/chrome/browser/tab_contents/tab_contents_view_gtk.cc +++ b/chrome/browser/tab_contents/tab_contents_view_gtk.cc @@ -8,6 +8,7 @@ #include <gdk/gdkkeysyms.h> #include <gtk/gtk.h> +#include "app/gtk_dnd_util.h" #include "base/gfx/point.h" #include "base/gfx/rect.h" #include "base/gfx/size.h" @@ -18,7 +19,6 @@ #include "chrome/browser/gtk/blocked_popup_container_view_gtk.h" #include "chrome/browser/gtk/browser_window_gtk.h" #include "chrome/browser/gtk/constrained_window_gtk.h" -#include "chrome/browser/gtk/gtk_dnd_util.h" #include "chrome/browser/gtk/gtk_floating_container.h" #include "chrome/browser/gtk/gtk_theme_provider.h" #include "chrome/browser/gtk/sad_tab_gtk.h" diff --git a/chrome/chrome.gyp b/chrome/chrome.gyp index 28778f1..2395396 100644 --- a/chrome/chrome.gyp +++ b/chrome/chrome.gyp @@ -1170,8 +1170,6 @@ 'browser/gtk/gtk_chrome_button.h', 'browser/gtk/gtk_chrome_link_button.cc', 'browser/gtk/gtk_chrome_link_button.h', - 'browser/gtk/gtk_dnd_util.cc', - 'browser/gtk/gtk_dnd_util.h', 'browser/gtk/gtk_floating_container.cc', 'browser/gtk/gtk_floating_container.h', 'browser/gtk/gtk_theme_provider.cc', @@ -2391,8 +2389,6 @@ ['include', '^browser/gtk/focus_store_gtk.h'], ['include', '^browser/gtk/gtk_chrome_link_button.cc'], ['include', '^browser/gtk/gtk_chrome_link_button.h'], - ['include', '^browser/gtk/gtk_dnd_util.cc'], - ['include', '^browser/gtk/gtk_dnd_util.h'], ['include', '^browser/gtk/hung_renderer_dialog_gtk.cc'], ['include', '^browser/gtk/hung_renderer_dialog_gtk.h'], ['include', '^browser/gtk/import_dialog_gtk.cc'], |