blob: 5ba6ee6b1f954612c53d5d04e1879d5711dc9a58 [file] [log] [blame]
// Copyright 2014 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.
package org.chromium.chrome.browser.infobar;
import org.chromium.base.CalledByNative;
import org.chromium.chrome.browser.ResourceId;
/**
* Provides JNI methods for SavePasswordInfoBars.
*/
public class SavePasswordInfoBarDelegate {
private SavePasswordInfoBarDelegate() {
}
@CalledByNative
public static SavePasswordInfoBarDelegate create() {
return new SavePasswordInfoBarDelegate();
}
/**
* Creates and begins the process for showing a SavePasswordInfoBarDelegate.
* @param nativeInfoBar Pointer to the C++ InfoBar corresponding to the Java InfoBar.
* @param enumeratedIconId ID corresponding to the icon that will be shown for the InfoBar.
* The ID must have been mapped using the ResourceMapper class before
* passing it to this function.
* @param message Message to display to the user indicating what the InfoBar is for.
* @param buttonOk String to display on the OK button.
* @param buttonCancel String to display on the Cancel button.
*/
@CalledByNative
InfoBar showSavePasswordInfoBar(long nativeInfoBar, int enumeratedIconId, String message,
String buttonOk, String buttonCancel) {
int drawableId = ResourceId.mapToDrawableId(enumeratedIconId);
SavePasswordInfoBar infoBar = new SavePasswordInfoBar(
nativeInfoBar, this, drawableId, message, buttonOk, buttonCancel);
return infoBar;
}
/**
* Sets whether additional authentication should be required before this password can be
* autofilled into a form.
*
* @param nativeInfoBar The native infobar pointer.
* @param useAdditionalAuthencation Whether additional authentication should be required.
*/
void setUseAdditionalAuthentication(long nativeInfoBar, boolean useAdditionalAuthencation) {
nativeSetUseAdditionalAuthentication(nativeInfoBar, useAdditionalAuthencation);
}
private native void nativeSetUseAdditionalAuthentication(
long nativeSavePasswordInfoBar, boolean useAdditionalAuthentication);
}