| Index: chrome/browser/ui/android/autofill/autofill_keyboard_accessory_view.cc
|
| diff --git a/chrome/browser/ui/android/autofill/autofill_keyboard_accessory_view.cc b/chrome/browser/ui/android/autofill/autofill_keyboard_accessory_view.cc
|
| index 006fffbae9ed80d33047cfd448e6e3cfe7c75580..240f8fcb460f15d7ff1040f70dda1ddbc548bfc5 100644
|
| --- a/chrome/browser/ui/android/autofill/autofill_keyboard_accessory_view.cc
|
| +++ b/chrome/browser/ui/android/autofill/autofill_keyboard_accessory_view.cc
|
| @@ -24,16 +24,14 @@ namespace autofill {
|
| namespace {
|
|
|
| void AddToJavaArray(const Suggestion& suggestion,
|
| - const AutofillPopupController& controller,
|
| + int icon_id,
|
| JNIEnv* env,
|
| jobjectArray data_array,
|
| size_t position,
|
| bool deletable) {
|
| int android_icon_id = 0;
|
| - if (!suggestion.icon.empty()) {
|
| - android_icon_id = ResourceMapper::MapFromChromiumId(
|
| - controller.GetIconResourceID(suggestion.icon));
|
| - }
|
| + if (!suggestion.icon.empty())
|
| + android_icon_id = ResourceMapper::MapFromChromiumId(icon_id);
|
|
|
| Java_AutofillKeyboardAccessoryBridge_addToAutofillSuggestionArray(
|
| env, data_array, position,
|
| @@ -46,7 +44,8 @@ void AddToJavaArray(const Suggestion& suggestion,
|
|
|
| AutofillKeyboardAccessoryView::AutofillKeyboardAccessoryView(
|
| AutofillPopupController* controller)
|
| - : controller_(controller),
|
| + : view_helper_(new AutofillPopupViewHelper(controller)),
|
| + controller_(controller),
|
| deleting_index_(-1) {
|
| JNIEnv* env = base::android::AttachCurrentThread();
|
| java_object_.Reset(Java_AutofillKeyboardAccessoryBridge_create(env));
|
| @@ -89,8 +88,9 @@ void AutofillKeyboardAccessoryView::UpdateBoundsAndRedrawPopup() {
|
| for (size_t i = 0; i < count; ++i) {
|
| const Suggestion& suggestion = controller_->GetSuggestionAt(i);
|
| if (suggestion.frontend_id == POPUP_ITEM_ID_CLEAR_FORM) {
|
| - AddToJavaArray(suggestion, *controller_, env, data_array.obj(), position,
|
| - false);
|
| + AddToJavaArray(suggestion,
|
| + view_helper_->GetIconResourceID(suggestion.icon), env,
|
| + data_array.obj(), position, false);
|
| positions_[position++] = i;
|
| }
|
| }
|
| @@ -100,8 +100,9 @@ void AutofillKeyboardAccessoryView::UpdateBoundsAndRedrawPopup() {
|
| if (suggestion.frontend_id != POPUP_ITEM_ID_CLEAR_FORM) {
|
| bool deletable =
|
| controller_->GetRemovalConfirmationText(i, nullptr, nullptr);
|
| - AddToJavaArray(suggestion, *controller_, env, data_array.obj(), position,
|
| - deletable);
|
| + AddToJavaArray(suggestion,
|
| + view_helper_->GetIconResourceID(suggestion.icon), env,
|
| + data_array.obj(), position, deletable);
|
| positions_[position++] = i;
|
| }
|
| }
|
| @@ -110,6 +111,14 @@ void AutofillKeyboardAccessoryView::UpdateBoundsAndRedrawPopup() {
|
| env, java_object_.obj(), data_array.obj(), controller_->IsRTL());
|
| }
|
|
|
| +int AutofillKeyboardAccessoryView::LineFromY(int y) {
|
| + return view_helper_->LineFromY(y);
|
| +}
|
| +
|
| +gfx::Rect AutofillKeyboardAccessoryView::GetPopupBounds() {
|
| + return view_helper_->popup_bounds();
|
| +}
|
| +
|
| void AutofillKeyboardAccessoryView::SuggestionSelected(
|
| JNIEnv* env,
|
| const JavaParamRef<jobject>& obj,
|
|
|