JsPromptResult.java revision 9066cfe9886ac131c34d59ed0e2d287b0e3c0087
116864bae0f51c32c456da2c43adf7a057c0c4882Mike Lockwood/*
216864bae0f51c32c456da2c43adf7a057c0c4882Mike Lockwood * Copyright (C) 2007 The Android Open Source Project
316864bae0f51c32c456da2c43adf7a057c0c4882Mike Lockwood *
416864bae0f51c32c456da2c43adf7a057c0c4882Mike Lockwood * Licensed under the Apache License, Version 2.0 (the "License");
516864bae0f51c32c456da2c43adf7a057c0c4882Mike Lockwood * you may not use this file except in compliance with the License.
616864bae0f51c32c456da2c43adf7a057c0c4882Mike Lockwood * You may obtain a copy of the License at
716864bae0f51c32c456da2c43adf7a057c0c4882Mike Lockwood *
816864bae0f51c32c456da2c43adf7a057c0c4882Mike Lockwood *      http://www.apache.org/licenses/LICENSE-2.0
916864bae0f51c32c456da2c43adf7a057c0c4882Mike Lockwood *
1016864bae0f51c32c456da2c43adf7a057c0c4882Mike Lockwood * Unless required by applicable law or agreed to in writing, software
1116864bae0f51c32c456da2c43adf7a057c0c4882Mike Lockwood * distributed under the License is distributed on an "AS IS" BASIS,
1216864bae0f51c32c456da2c43adf7a057c0c4882Mike Lockwood * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1316864bae0f51c32c456da2c43adf7a057c0c4882Mike Lockwood * See the License for the specific language governing permissions and
1416864bae0f51c32c456da2c43adf7a057c0c4882Mike Lockwood * limitations under the License.
1516864bae0f51c32c456da2c43adf7a057c0c4882Mike Lockwood */
1616864bae0f51c32c456da2c43adf7a057c0c4882Mike Lockwood
1716864bae0f51c32c456da2c43adf7a057c0c4882Mike Lockwoodpackage android.webkit;
1816864bae0f51c32c456da2c43adf7a057c0c4882Mike Lockwood
1916864bae0f51c32c456da2c43adf7a057c0c4882Mike Lockwood
2016864bae0f51c32c456da2c43adf7a057c0c4882Mike Lockwood/**
2116864bae0f51c32c456da2c43adf7a057c0c4882Mike Lockwood * Public class for handling javascript prompt requests. A
2216864bae0f51c32c456da2c43adf7a057c0c4882Mike Lockwood * JsDialogHandlerInterface implentation will receive a jsPrompt call with a
237850ef999740f214a1990a9c090d3f3865d435aaMike Lockwood * JsPromptResult parameter. This parameter is used to return a result to
247850ef999740f214a1990a9c090d3f3865d435aaMike Lockwood * WebView. The client can call cancel() to cancel the dialog or confirm() with
2516864bae0f51c32c456da2c43adf7a057c0c4882Mike Lockwood * the user's input to confirm the dialog.
2616864bae0f51c32c456da2c43adf7a057c0c4882Mike Lockwood */
2716864bae0f51c32c456da2c43adf7a057c0c4882Mike Lockwoodpublic class JsPromptResult extends JsResult {
2816864bae0f51c32c456da2c43adf7a057c0c4882Mike Lockwood    // String result of the prompt
2916864bae0f51c32c456da2c43adf7a057c0c4882Mike Lockwood    private String mStringResult;
3016864bae0f51c32c456da2c43adf7a057c0c4882Mike Lockwood
3116864bae0f51c32c456da2c43adf7a057c0c4882Mike Lockwood    /**
3216864bae0f51c32c456da2c43adf7a057c0c4882Mike Lockwood     * Handle a confirmation response from the user.
3316864bae0f51c32c456da2c43adf7a057c0c4882Mike Lockwood     */
3416864bae0f51c32c456da2c43adf7a057c0c4882Mike Lockwood    public void confirm(String result) {
3516864bae0f51c32c456da2c43adf7a057c0c4882Mike Lockwood        mStringResult = result;
3616864bae0f51c32c456da2c43adf7a057c0c4882Mike Lockwood        confirm();
3716864bae0f51c32c456da2c43adf7a057c0c4882Mike Lockwood    }
3816864bae0f51c32c456da2c43adf7a057c0c4882Mike Lockwood
3916864bae0f51c32c456da2c43adf7a057c0c4882Mike Lockwood    /*package*/ JsPromptResult(CallbackProxy proxy) {
4016864bae0f51c32c456da2c43adf7a057c0c4882Mike Lockwood        super(proxy, /* unused */ false);
4116864bae0f51c32c456da2c43adf7a057c0c4882Mike Lockwood    }
4216864bae0f51c32c456da2c43adf7a057c0c4882Mike Lockwood
4316864bae0f51c32c456da2c43adf7a057c0c4882Mike Lockwood    /*package*/ String getStringResult() {
4416864bae0f51c32c456da2c43adf7a057c0c4882Mike Lockwood        return mStringResult;
4516864bae0f51c32c456da2c43adf7a057c0c4882Mike Lockwood    }
4616864bae0f51c32c456da2c43adf7a057c0c4882Mike Lockwood
4716864bae0f51c32c456da2c43adf7a057c0c4882Mike Lockwood    @Override
4816864bae0f51c32c456da2c43adf7a057c0c4882Mike Lockwood    /*package*/ void handleDefault() {
49335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood        mStringResult = null;
50335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood        super.handleDefault();
51335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood    }
52335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood}
53335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood