| Index: chrome/browser/ui/cocoa/autofill/autofill_popup_view_bridge.h
|
| diff --git a/chrome/browser/ui/cocoa/autofill/autofill_popup_view_bridge.h b/chrome/browser/ui/cocoa/autofill/autofill_popup_view_bridge.h
|
| index 314a6ab8753e7b7e867d5979d639b518cfb1befb..4e0f40e63499c5a3d7a557d4b11e63be322ed13f 100644
|
| --- a/chrome/browser/ui/cocoa/autofill/autofill_popup_view_bridge.h
|
| +++ b/chrome/browser/ui/cocoa/autofill/autofill_popup_view_bridge.h
|
| @@ -13,6 +13,7 @@
|
| #include "base/mac/scoped_nsobject.h"
|
| #include "base/macros.h"
|
| #include "chrome/browser/ui/autofill/autofill_popup_view.h"
|
| +#include "chrome/browser/ui/autofill/autofill_popup_view_helper.h"
|
| #include "chrome/browser/ui/cocoa/autofill/autofill_popup_view_cocoa.h"
|
|
|
| @class AutofillPopupViewCocoa;
|
| @@ -22,13 +23,29 @@ namespace autofill {
|
|
|
| class AutofillPopupViewDelegate;
|
|
|
| +class AutofillPopupViewCocoaDelegate {
|
| + public:
|
| + // Returns the bounds of the item at |index| in the popup, relative to
|
| + // the top left of the popup.
|
| + virtual gfx::Rect GetRowBounds(size_t index) = 0;
|
| +
|
| + // Gets the resource value for the given resource, returning -1 if the
|
| + // resource isn't recognized.
|
| + virtual int GetIconResourceID(const base::string16& resource_name) = 0;
|
| +};
|
| +
|
| // Mac implementation of the AutofillPopupView interface.
|
| // Serves as a bridge to an instance of the Objective-C class which actually
|
| // implements the view.
|
| -class AutofillPopupViewBridge : public AutofillPopupView {
|
| +class AutofillPopupViewBridge : public AutofillPopupView,
|
| + public AutofillPopupViewCocoaDelegate {
|
| public:
|
| explicit AutofillPopupViewBridge(AutofillPopupController* controller);
|
|
|
| + // AutofillPopupViewBridgeDelegate implementation.
|
| + gfx::Rect GetRowBounds(size_t index) override;
|
| + int GetIconResourceID(const base::string16& resource_name) override;
|
| +
|
| private:
|
| ~AutofillPopupViewBridge() override;
|
|
|
| @@ -37,6 +54,10 @@ class AutofillPopupViewBridge : public AutofillPopupView {
|
| void Show() override;
|
| void InvalidateRow(size_t row) override;
|
| void UpdateBoundsAndRedrawPopup() override;
|
| + void UpdatePopupBounds() override;
|
| + int GetAvailableWidthForRow(int row, bool with_label) override;
|
| + int LineFromY(int y) override;
|
| + gfx::Rect GetPopupBounds() override;
|
|
|
| // Set the initial bounds of the popup, including its placement.
|
| void SetInitialBounds();
|
| @@ -44,6 +65,8 @@ class AutofillPopupViewBridge : public AutofillPopupView {
|
| // The native Cocoa view.
|
| base::scoped_nsobject<AutofillPopupViewCocoa> view_;
|
|
|
| + AutofillPopupViewHelper view_helper_;
|
| +
|
| AutofillPopupController* controller_; // Weak.
|
|
|
| DISALLOW_COPY_AND_ASSIGN(AutofillPopupViewBridge);
|
|
|