11f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project/* 21f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project * Copyright (C) 2008 The Android Open Source Project 31f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project * 41f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project * Licensed under the Apache License, Version 2.0 (the "License"); 51f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project * you may not use this file except in compliance with the License. 61f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project * You may obtain a copy of the License at 71f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project * 81f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project * http://www.apache.org/licenses/LICENSE-2.0 91f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project * 101f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project * Unless required by applicable law or agreed to in writing, software 111f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project * distributed under the License is distributed on an "AS IS" BASIS, 121f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 131f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project * See the License for the specific language governing permissions and 141f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project * limitations under the License. 151f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project */ 161f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project 17dcb3d84b82cc2448d04e73359a716581bfb657dbJim Millerpackage com.android.internal.policy.impl.keyguard_obsolete; 181f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project 195475906f53e2d79807548932dfabbf9945143740Jim Millerimport android.content.res.Configuration; 205475906f53e2d79807548932dfabbf9945143740Jim Miller 211f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project/** 221f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project * Within a keyguard, there may be several screens that need a callback 231f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project * to the host keyguard view. 241f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project */ 251f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Projectpublic interface KeyguardScreenCallback extends KeyguardViewCallback { 261f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project 271f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project /** 281f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project * Transition to the lock screen. 291f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project */ 301f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project void goToLockScreen(); 311f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project 321f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project /** 3384999d69e0a70f5e510577b09ea1e788142252a8Karl Rosaen * Transition to the unlock screen. 341f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project */ 351f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project void goToUnlockScreen(); 361f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project 371f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project /** 3884999d69e0a70f5e510577b09ea1e788142252a8Karl Rosaen * The user reported that they forgot their pattern (or not, when they want to back out of the 3984999d69e0a70f5e510577b09ea1e788142252a8Karl Rosaen * forgot pattern screen). 4084999d69e0a70f5e510577b09ea1e788142252a8Karl Rosaen * 4184999d69e0a70f5e510577b09ea1e788142252a8Karl Rosaen * @param isForgotten True if the user hit the forgot pattern, false if they want to back out 4284999d69e0a70f5e510577b09ea1e788142252a8Karl Rosaen * of the account screen. 4384999d69e0a70f5e510577b09ea1e788142252a8Karl Rosaen */ 4484999d69e0a70f5e510577b09ea1e788142252a8Karl Rosaen void forgotPattern(boolean isForgotten); 4584999d69e0a70f5e510577b09ea1e788142252a8Karl Rosaen 4684999d69e0a70f5e510577b09ea1e788142252a8Karl Rosaen /** 471f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project * @return Whether the keyguard requires some sort of PIN. 481f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project */ 491f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project boolean isSecure(); 501f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project 511f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project /** 521f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project * @return Whether we are in a mode where we only want to verify the 531f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project * user can get past the keyguard. 541f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project */ 551f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project boolean isVerifyUnlockOnly(); 561f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project 571f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project /** 581f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project * Stay on me, but recreate me (so I can use a different layout). 591f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project */ 605475906f53e2d79807548932dfabbf9945143740Jim Miller void recreateMe(Configuration config); 611f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project 621f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project /** 631f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project * Take action to send an emergency call. 641f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project */ 651f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project void takeEmergencyCallAction(); 661f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project 671f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project /** 686fe0f0e46d7863bd75f6bd23b2fa805df84b5a4dJim Miller * Report that the user had a failed attempt to unlock with password or pattern. 691f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project */ 706fe0f0e46d7863bd75f6bd23b2fa805df84b5a4dJim Miller void reportFailedUnlockAttempt(); 716fe0f0e46d7863bd75f6bd23b2fa805df84b5a4dJim Miller 726fe0f0e46d7863bd75f6bd23b2fa805df84b5a4dJim Miller /** 736fe0f0e46d7863bd75f6bd23b2fa805df84b5a4dJim Miller * Report that the user successfully entered their password or pattern. 746fe0f0e46d7863bd75f6bd23b2fa805df84b5a4dJim Miller */ 756fe0f0e46d7863bd75f6bd23b2fa805df84b5a4dJim Miller void reportSuccessfulUnlockAttempt(); 761f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project 771f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project /** 781f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project * Report whether we there's another way to unlock the device. 796fe0f0e46d7863bd75f6bd23b2fa805df84b5a4dJim Miller * @return true 801f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project */ 811f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project boolean doesFallbackUnlockScreenExist(); 821f838aaece3cd61d07ab9e41c5c6af761d643324The Android Open Source Project} 83