summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--chrome/browser/bookmarks/bookmark_context_menu.cc6
-rw-r--r--chrome/browser/bookmarks/bookmark_context_menu.h4
-rw-r--r--chrome/browser/bookmarks/bookmark_editor.h2
-rw-r--r--chrome/browser/bookmarks/bookmark_utils.cc6
-rw-r--r--chrome/browser/bookmarks/bookmark_utils.h4
-rw-r--r--chrome/browser/gtk/bookmark_bar_gtk.cc6
-rw-r--r--chrome/browser/gtk/bookmark_editor_gtk.cc6
-rw-r--r--chrome/browser/gtk/bookmark_menu_controller_gtk.cc3
-rw-r--r--chrome/browser/input_window_dialog.h7
-rw-r--r--chrome/browser/input_window_dialog_gtk.cc4
-rw-r--r--chrome/browser/input_window_dialog_win.cc2
-rw-r--r--chrome/browser/views/bookmark_menu_button.cc10
-rw-r--r--chrome/browser/views/bookmark_menu_controller_views.cc11
-rw-r--r--chrome/browser/views/bookmark_menu_controller_views.h4
-rw-r--r--chrome/chrome.gyp2
-rw-r--r--chrome/common/gtk_util.cc9
-rw-r--r--chrome/common/gtk_util.h4
17 files changed, 40 insertions, 50 deletions
diff --git a/chrome/browser/bookmarks/bookmark_context_menu.cc b/chrome/browser/bookmarks/bookmark_context_menu.cc
index 93dd7c0..06ed2d4 100644
--- a/chrome/browser/bookmarks/bookmark_context_menu.cc
+++ b/chrome/browser/bookmarks/bookmark_context_menu.cc
@@ -56,7 +56,7 @@ class EditFolderController : public InputWindowDialog::Delegate,
}
static void Show(Profile* profile,
- gfx::NativeWindow wnd,
+ gfx::NativeView wnd,
BookmarkNode* node,
bool is_new,
bool show_in_manager) {
@@ -68,7 +68,7 @@ class EditFolderController : public InputWindowDialog::Delegate,
private:
EditFolderController(Profile* profile,
- gfx::NativeWindow wnd,
+ gfx::NativeView wnd,
BookmarkNode* node,
bool is_new,
bool show_in_manager)
@@ -214,7 +214,7 @@ class SelectOnCreationHandler : public BookmarkEditor::Handler {
// BookmarkContextMenu -------------------------------------------
BookmarkContextMenu::BookmarkContextMenu(
- gfx::NativeWindow wnd,
+ gfx::NativeView wnd,
Profile* profile,
Browser* browser,
PageNavigator* navigator,
diff --git a/chrome/browser/bookmarks/bookmark_context_menu.h b/chrome/browser/bookmarks/bookmark_context_menu.h
index 035af5e..75f72f4 100644
--- a/chrome/browser/bookmarks/bookmark_context_menu.h
+++ b/chrome/browser/bookmarks/bookmark_context_menu.h
@@ -55,7 +55,7 @@ class BookmarkContextMenu : public BookmarkModelObserver,
// |parent| is the parent for newly created nodes if |selection| is empty.
// |selection| is the nodes the context menu operates on and may be empty.
// |configuration| determines which items to show.
- BookmarkContextMenu(gfx::NativeWindow hwnd,
+ BookmarkContextMenu(gfx::NativeView hwnd,
Profile* profile,
Browser* browser,
PageNavigator* navigator,
@@ -130,7 +130,7 @@ class BookmarkContextMenu : public BookmarkModelObserver,
// parent_ is returned.
BookmarkNode* GetParentForNewNodes() const;
- gfx::NativeWindow wnd_;
+ gfx::NativeView wnd_;
Profile* profile_;
Browser* browser_;
PageNavigator* navigator_;
diff --git a/chrome/browser/bookmarks/bookmark_editor.h b/chrome/browser/bookmarks/bookmark_editor.h
index 5e356e1..54996db 100644
--- a/chrome/browser/bookmarks/bookmark_editor.h
+++ b/chrome/browser/bookmarks/bookmark_editor.h
@@ -33,7 +33,7 @@ class BookmarkEditor {
// |show_tree| is false the tree is not shown. BookmarkEditor takes
// ownership of |handler| and deletes it when done. |handler| may be
// null. See description of Handler for details.
- static void Show(gfx::NativeWindow parent_window,
+ static void Show(gfx::NativeView parent_window,
Profile* profile,
BookmarkNode* parent,
BookmarkNode* node,
diff --git a/chrome/browser/bookmarks/bookmark_utils.cc b/chrome/browser/bookmarks/bookmark_utils.cc
index 7cedca3..61be84d 100644
--- a/chrome/browser/bookmarks/bookmark_utils.cc
+++ b/chrome/browser/bookmarks/bookmark_utils.cc
@@ -138,7 +138,7 @@ void OpenAllImpl(BookmarkNode* node,
}
}
-bool ShouldOpenAll(gfx::NativeWindow parent,
+bool ShouldOpenAll(gfx::NativeView parent,
const std::vector<BookmarkNode*>& nodes) {
int descendant_count = 0;
for (size_t i = 0; i < nodes.size(); ++i)
@@ -306,7 +306,7 @@ void CloneDragData(BookmarkModel* model,
CloneDragDataImpl(model, elements[i], parent, index_to_add_at + i);
}
-void OpenAll(gfx::NativeWindow parent,
+void OpenAll(gfx::NativeView parent,
Profile* profile,
PageNavigator* navigator,
const std::vector<BookmarkNode*>& nodes,
@@ -334,7 +334,7 @@ void OpenAll(gfx::NativeWindow parent,
OpenAllImpl(nodes[i], initial_disposition, &navigator, &opened_url);
}
-void OpenAll(gfx::NativeWindow parent,
+void OpenAll(gfx::NativeView parent,
Profile* profile,
PageNavigator* navigator,
BookmarkNode* node,
diff --git a/chrome/browser/bookmarks/bookmark_utils.h b/chrome/browser/bookmarks/bookmark_utils.h
index 7be4aad..057183b 100644
--- a/chrome/browser/bookmarks/bookmark_utils.h
+++ b/chrome/browser/bookmarks/bookmark_utils.h
@@ -73,14 +73,14 @@ void CloneDragData(BookmarkModel* model,
// |navigator| is used to open the URLs. If |navigator| is NULL the last
// tabbed browser with the profile |profile| is used. If there is no browser
// with the specified profile a new one is created.
-void OpenAll(gfx::NativeWindow parent,
+void OpenAll(gfx::NativeView parent,
Profile* profile,
PageNavigator* navigator,
const std::vector<BookmarkNode*>& nodes,
WindowOpenDisposition initial_disposition);
// Convenience for opening a single BookmarkNode.
-void OpenAll(gfx::NativeWindow parent,
+void OpenAll(gfx::NativeView parent,
Profile* profile,
PageNavigator* navigator,
BookmarkNode* node,
diff --git a/chrome/browser/gtk/bookmark_bar_gtk.cc b/chrome/browser/gtk/bookmark_bar_gtk.cc
index 0d2122b..1fc5dfc 100644
--- a/chrome/browser/gtk/bookmark_bar_gtk.cc
+++ b/chrome/browser/gtk/bookmark_bar_gtk.cc
@@ -464,8 +464,7 @@ void BookmarkBarGtk::PopupMenuForNode(GtkWidget* sender, BookmarkNode* node,
}
current_context_menu_.reset(new BookmarkContextMenu(
- GTK_WINDOW(gtk_widget_get_toplevel(sender)),
- profile_, browser_, page_navigator_,
+ sender, profile_, browser_, page_navigator_,
parent, nodes,
BookmarkContextMenu::BOOKMARK_BAR));
current_context_menu_->PopupAsContext(event->time);
@@ -510,8 +509,7 @@ gboolean BookmarkBarGtk::OnButtonReleased(GtkWidget* sender,
PageTransition::AUTO_BOOKMARK);
} else {
bookmark_utils::OpenAll(
- GTK_WINDOW(gtk_widget_get_toplevel(sender)), bar->profile_,
- bar->page_navigator_, node,
+ sender, bar->profile_, bar->page_navigator_, node,
event_utils::DispositionFromEventFlags(event->state));
}
diff --git a/chrome/browser/gtk/bookmark_editor_gtk.cc b/chrome/browser/gtk/bookmark_editor_gtk.cc
index 7f5ed6f..e8a3a93 100644
--- a/chrome/browser/gtk/bookmark_editor_gtk.cc
+++ b/chrome/browser/gtk/bookmark_editor_gtk.cc
@@ -33,7 +33,7 @@ static const int kTreeHeight = 150;
} // namespace
// static
-void BookmarkEditor::Show(gfx::NativeWindow parent_hwnd,
+void BookmarkEditor::Show(gfx::NativeView parent_hwnd,
Profile* profile,
BookmarkNode* parent,
BookmarkNode* node,
@@ -41,8 +41,8 @@ void BookmarkEditor::Show(gfx::NativeWindow parent_hwnd,
Handler* handler) {
DCHECK(profile);
BookmarkEditorGtk* editor =
- new BookmarkEditorGtk(parent_hwnd, profile, parent, node, configuration,
- handler);
+ new BookmarkEditorGtk(GTK_WINDOW(gtk_widget_get_toplevel(parent_hwnd)),
+ profile, parent, node, configuration, handler);
editor->Show();
}
diff --git a/chrome/browser/gtk/bookmark_menu_controller_gtk.cc b/chrome/browser/gtk/bookmark_menu_controller_gtk.cc
index ca05738..f94ef7f 100644
--- a/chrome/browser/gtk/bookmark_menu_controller_gtk.cc
+++ b/chrome/browser/gtk/bookmark_menu_controller_gtk.cc
@@ -150,8 +150,7 @@ gboolean BookmarkMenuController::OnButtonPressed(
nodes.push_back(node);
controller->context_menu_.reset(
new BookmarkContextMenu(
- GTK_WINDOW(gtk_widget_get_toplevel(sender)),
- controller->profile_, controller->browser_,
+ sender, controller->profile_, controller->browser_,
controller->page_navigator_, parent, nodes,
BookmarkContextMenu::BOOKMARK_BAR));
controller->context_menu_->PopupAsContext(event->time);
diff --git a/chrome/browser/input_window_dialog.h b/chrome/browser/input_window_dialog.h
index 5229c1b..56bdfb9 100644
--- a/chrome/browser/input_window_dialog.h
+++ b/chrome/browser/input_window_dialog.h
@@ -27,10 +27,9 @@ class InputWindowDialog {
virtual void InputCanceled() = 0;
};
- // Creates a new input window dialog from the parent window
- // |parent|, Ownership of |delegate| is taken by InputWindowDialog or
- // InputWindowDialog's owner.
- static InputWindowDialog* Create(gfx::NativeWindow parent,
+ // Creates a new input window dialog parented to |parent|. Ownership of
+ // |delegate| is taken by InputWindowDialog or InputWindowDialog's owner.
+ static InputWindowDialog* Create(gfx::NativeView parent,
const std::wstring& window_title,
const std::wstring& label,
const std::wstring& contents,
diff --git a/chrome/browser/input_window_dialog_gtk.cc b/chrome/browser/input_window_dialog_gtk.cc
index b6bf5dc..353cb39 100644
--- a/chrome/browser/input_window_dialog_gtk.cc
+++ b/chrome/browser/input_window_dialog_gtk.cc
@@ -148,12 +148,12 @@ void GtkInputWindowDialog::OnWindowDestroy(GtkWidget* widget,
}
// static
-InputWindowDialog* InputWindowDialog::Create(gfx::NativeWindow parent,
+InputWindowDialog* InputWindowDialog::Create(gfx::NativeView parent,
const std::wstring& window_title,
const std::wstring& label,
const std::wstring& contents,
Delegate* delegate) {
- return new GtkInputWindowDialog(parent,
+ return new GtkInputWindowDialog(GTK_WINDOW(gtk_widget_get_toplevel(parent)),
WideToUTF8(window_title),
WideToUTF8(label),
WideToUTF8(contents),
diff --git a/chrome/browser/input_window_dialog_win.cc b/chrome/browser/input_window_dialog_win.cc
index 1f942c0..102fc9a 100644
--- a/chrome/browser/input_window_dialog_win.cc
+++ b/chrome/browser/input_window_dialog_win.cc
@@ -223,7 +223,7 @@ void WinInputWindowDialog::Close() {
}
// static
-InputWindowDialog* InputWindowDialog::Create(gfx::NativeWindow parent,
+InputWindowDialog* InputWindowDialog::Create(HWND parent,
const std::wstring& window_title,
const std::wstring& label,
const std::wstring& contents,
diff --git a/chrome/browser/views/bookmark_menu_button.cc b/chrome/browser/views/bookmark_menu_button.cc
index 3f6c43a..b06e0df 100644
--- a/chrome/browser/views/bookmark_menu_button.cc
+++ b/chrome/browser/views/bookmark_menu_button.cc
@@ -4,6 +4,12 @@
#include "chrome/browser/views/bookmark_menu_button.h"
+#include "build/build_config.h"
+
+#if defined(OS_GTK)
+#include <gtk/gtk.h>
+#endif
+
#include "app/resource_bundle.h"
#include "app/os_exchange_data.h"
#include "chrome/browser/bookmarks/bookmark_model.h"
@@ -129,9 +135,13 @@ void BookmarkMenuButton::StartShowFolderDropMenuTimer() {
if (show_drop_menu_timer_.IsRunning())
return;
+#if defined(OS_WIN)
static DWORD delay = 0;
if (!delay && !SystemParametersInfo(SPI_GETMENUSHOWDELAY, 0, &delay, 0))
delay = 400;
+#else
+ static int delay = 400;
+#endif
show_drop_menu_timer_.Start(base::TimeDelta::FromMilliseconds(delay),
this, &BookmarkMenuButton::ShowDropMenu);
}
diff --git a/chrome/browser/views/bookmark_menu_controller_views.cc b/chrome/browser/views/bookmark_menu_controller_views.cc
index 2ac58eb..cd550ca 100644
--- a/chrome/browser/views/bookmark_menu_controller_views.cc
+++ b/chrome/browser/views/bookmark_menu_controller_views.cc
@@ -21,7 +21,7 @@
BookmarkMenuController::BookmarkMenuController(Browser* browser,
Profile* profile,
PageNavigator* navigator,
- gfx::NativeWindow parent,
+ gfx::NativeView parent,
BookmarkNode* node,
int start_child_index,
bool show_other_folder)
@@ -48,15 +48,10 @@ void BookmarkMenuController::RunMenuAt(
bool for_drop) {
for_drop_ = for_drop;
profile_->GetBookmarkModel()->AddObserver(this);
-#if defined(OS_WIN)
- gfx::NativeView widget = parent_;
-#else
- gfx::NativeView widget = GTK_WIDGET(parent_);
-#endif
if (for_drop) {
- menu_->RunMenuForDropAt(widget, bounds, position);
+ menu_->RunMenuForDropAt(parent_, bounds, position);
} else {
- menu_->RunMenuAt(widget, bounds, position, false);
+ menu_->RunMenuAt(parent_, bounds, position, false);
delete this;
}
}
diff --git a/chrome/browser/views/bookmark_menu_controller_views.h b/chrome/browser/views/bookmark_menu_controller_views.h
index 4764cd0..54c11de 100644
--- a/chrome/browser/views/bookmark_menu_controller_views.h
+++ b/chrome/browser/views/bookmark_menu_controller_views.h
@@ -38,7 +38,7 @@ class BookmarkMenuController : public BaseBookmarkModelObserver,
BookmarkMenuController(Browser* browser,
Profile* profile,
PageNavigator* page_navigator,
- gfx::NativeWindow parent,
+ gfx::NativeView parent,
BookmarkNode* node,
int start_child_index,
bool show_other_folder);
@@ -110,7 +110,7 @@ class BookmarkMenuController : public BaseBookmarkModelObserver,
PageNavigator* page_navigator_;
// Parent of menus.
- gfx::NativeWindow parent_;
+ gfx::NativeView parent_;
// The node we're showing the contents of.
BookmarkNode* node_;
diff --git a/chrome/chrome.gyp b/chrome/chrome.gyp
index 7a63dd3..762cbc4 100644
--- a/chrome/chrome.gyp
+++ b/chrome/chrome.gyp
@@ -1686,6 +1686,8 @@
['include', '^browser/dock_info_gtk.cc'],
['include', '^browser/dock_info.cc'],
['include', '^browser/dock_info.h'],
+ ['include', '^browser/views/bookmark_menu_button.cc'],
+ ['include', '^browser/views/bookmark_menu_button.h'],
['include', '^browser/views/bookmark_menu_controller_views.cc'],
['include', '^browser/views/dialog_stubs_gtk.cc'],
['include', '^browser/views/download_item_view.cc'],
diff --git a/chrome/common/gtk_util.cc b/chrome/common/gtk_util.cc
index 1deb58f..01d952e 100644
--- a/chrome/common/gtk_util.cc
+++ b/chrome/common/gtk_util.cc
@@ -122,13 +122,4 @@ void InitRCStyles() {
gtk_rc_parse_string(kRCText);
}
-GtkWindow* ParentWindow(GtkWidget* widget) {
- while (widget) {
- if (GTK_IS_WINDOW(widget))
- return GTK_WINDOW(widget);
- widget = gtk_widget_get_parent(widget);
- }
- return NULL;
-}
-
} // namespace gtk_util
diff --git a/chrome/common/gtk_util.h b/chrome/common/gtk_util.h
index 5770030..d72045b 100644
--- a/chrome/common/gtk_util.h
+++ b/chrome/common/gtk_util.h
@@ -44,10 +44,6 @@ gfx::Rect GetWidgetScreenBounds(GtkWidget* widget);
// Initialize some GTK settings so that our dialogs are consistent.
void InitRCStyles();
-// Returns the closest ancestor of |widget| which is a top level window or NULL
-// if there is no such ancestor. The search starts at |widget|.
-GtkWindow* ParentWindow(GtkWidget* widget);
-
} // namespace gtk_util
#endif // CHROME_COMMON_GTK_UTIL_H_