Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1171)

Unified Diff: chrome/browser/tab_contents/tab_contents_view_gtk.h

Issue 147246: Linux: middle-click to navigate (Closed)
Patch Set: ... Created 11 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/tab_contents/tab_contents_view_gtk.h
diff --git a/chrome/browser/tab_contents/tab_contents_view_gtk.h b/chrome/browser/tab_contents/tab_contents_view_gtk.h
index 74de6dd07ca828914069cc1b86177303fd05c116..3ebb686eaf5dea6ad76cbcc2c31004e07e0a8f2c 100644
--- a/chrome/browser/tab_contents/tab_contents_view_gtk.h
+++ b/chrome/browser/tab_contents/tab_contents_view_gtk.h
@@ -10,6 +10,7 @@
#include <vector>
#include "base/scoped_ptr.h"
+#include "base/task.h"
#include "chrome/browser/gtk/focus_store_gtk.h"
#include "chrome/browser/tab_contents/tab_contents_view.h"
#include "chrome/common/notification_observer.h"
@@ -67,6 +68,7 @@ class TabContentsViewGtk : public TabContentsView,
virtual void GotFocus();
virtual void TakeFocus(bool reverse);
virtual void HandleKeyboardEvent(const NativeWebKeyboardEvent& event);
+ virtual void HandleMouseButtonEvent(const WebKit::WebMouseEvent* event);
// NotificationObserver implementation ---------------------------------------
@@ -74,6 +76,19 @@ class TabContentsViewGtk : public TabContentsView,
const NotificationSource& source,
const NotificationDetails& details);
+ // A callback for when we get the contents of the clipboard.
+ void ClipboardContentsReceived(const gchar* utf8_string);
+
+ class ClipboardRequestCallback {
+ public:
+ ClipboardRequestCallback(TabContentsViewGtk* tab_contents);
+ void Cancel();
+ void Callback(const gchar* utf8_string);
+
+ private:
+ TabContentsViewGtk* tab_contents_view_;
+ };
+
private:
// Insert the given widget into the content area. Should only be used for
// web pages and the like (including interstitials and sad tab). Note that
@@ -125,6 +140,11 @@ class TabContentsViewGtk : public TabContentsView,
// objects in this vector are owned by the TabContents, not the view.
std::vector<ConstrainedWindowGtk*> constrained_windows_;
+ // On middle-click to navigate, we asynchonously request the clipboard
+ // contents and use the following object to handle the case where this
+ // TabContentsViewGtk has been deleted in the mean time.
+ ClipboardRequestCallback* outstanding_clipboard_contents_request_;
+
DISALLOW_COPY_AND_ASSIGN(TabContentsViewGtk);
};
« no previous file with comments | « chrome/browser/renderer_host/render_widget_host.cc ('k') | chrome/browser/tab_contents/tab_contents_view_gtk.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698