- Minor change: remove no needed code related to unsupported iOS versions (iOS < 7).
- Made
isCurrentlyOnScreen
public.
- Minimum deployment target increased to
10.3
. - Removed iOS 8 specific code.
- Code style improvements.
- Misc demo project improvements.
- Avoid a crash in iOS 13 accessing the first object of the windows.
- Fixed a crash in demo project.
- Removed unused string.
- Fixed navigation bar layout when present passcode with logout enabled in iOS11.
- Replaced all Touch ID occurrences with Biometrics. On Touch ID-only devices, it has the same functionality, on Face ID-capable devices, it will use Face ID.
- Added new method to reset passcode
- (void)resetPasscode
, useful when using app extensions.
- Added support for iOS App Extensions: defining
LTH_IS_APP_EXTENSION
for an extension target will fixLTHPasscodeViewController
crashing. - Added new method:
- (void)showLockScreenOver:(UIView *)superview withAnimation:(BOOL)animated withLogout:(BOOL)hasLogout andLogoutTitle:(NSString *)logoutTitle
. Used to provide a view in which the lock is going to be presented, sized to and centered in.
- Fixed translations.
- Fixed subclassing by changing
LTHPasscodeViewControllerStrings
macro to use[LTHPasscodeViewController class]
instead of[self class]
.
- German translations fixed.
- Fixed the lock being sometimes disabled when setting the date in the past (Closed ^174).
- Fixed not being able to show the keyboard again after dismissing it on iPad (Closed ^171).
- Added a check that the new passcode is different than the existing one (Closed ^170).
- Improved the handling of
isSimple
.
- Fixed the usage of
self.viewLoaded
toself.isViewLoaded
(Closed ^168).
- Fixed title for lockscreen with navbar (Closed ^165).
- Replaced all instances of
keyWindow
withLTHMainWindow
(macro that expands[UIApplication sharedApplication].windows[0]
- explanation in ^164. - Fixed a bug where the UI would not be visible (Closed ^163).
- Made simple passcode configurable (Closed ^157).
- Added a description label, placed below the passcode, to possibly explain the use of the passcode.
- New properties:
digitsCount
: the number of digits for the simple passcode, between 4 and 10; can only be changed while there is no passcode activeenterPasscodeInfoString
: the text used for the description labeldisplayAdditionalInfoDuringSettingPasscode
: the flag that determines whether to show the description text or not
- New delegate method:
passcodeWasEnabled
. Called when the passcode was enabled (Closed ^156). - New method:
enablePasscodeWhenApplicationEntersBackground
. It reverts whatdisablePasscodeWhenApplicationEntersBackground
does: it adds observers forUIApplicationDidEnterBackgroundNotification
andUIApplicationWillEnterForegroundNotification
(Closed ^158).
- Keychain leaks fixed.
- Back button fixed, it now properly resets state.
- Improved keyboard handling when displaying the lockscreen for the first time with TouchID enabled.
- Fixed the bug where the keyboard was invisible after canceling the TouchID alert.
- Simplified Chinese improved.
- Fixed the
_setupFingerPrint
method.
- Fixed the logic when TouchID disabling.
- Fixed the logout button disappearing when canceling TouchID.
- Renamed all occurrences of navbar with navBar.
- Added a macro for the previous
mainWindow
local variable, because now it's used in more than one place.
- Made
allowUnlockWithTouchID
customizable. - Realigned indentation to 4 spaces.
- Cosmetic improvements.
- Typo fixes.
- Added README and CHANGELOG to the pod.
- Fixed number of failed attempts logic. It now checks if
numberOfFailedAttempts >= maxNumberOfFailedAttemptsAllowed
instead of==
.
isSimple
is now saved in user defaults and initialized from there, instead ofNO
.
- Added all localization files inside a bundle.
- Rotation fixes (Closed ^74 and ^102).
- Fixed crash related to
UIInterfaceOrientationMaskPortrait
(Closed ^129).
- Navigation bar fixes.
- Logout button offset fix.
- Translation updates / fixes.
- Project update and
supportedInterfaceOrientations
fix.
- Italian localization.
- Added flag for showing the
leftBarButton
.
- Reduced observe count for application notifications.
- Dutch translations.
- Animations for failed attemp.
- Moved the
_addObservers
frominit
toviewWillAppear
(Possible fix for ^74).
- Hide animatingView and dismiss keyboard when using TouchID (Closed ^99).
- Ability to change the "Enter passcode" vertical offset.
- Ability to add an image as the view's background.
- Portugese localization.
- Posibility to subclass (Closed ^95).
- Czech localization.
- Passcode can be beaten by killing the app (Closed ^78).
- Changed some
performSelectorOnMainThread
calls todispatch_async
.
- Korean localization.
- Preprocessor macro to disable TouchID on simulator.
- Spanish translations corrections.
- Added a close method (Closed ^68).
- Fixes.
- TouchID support.
- iPad and iOS 8 layout fixes (Closed ^74).
- Crash when opening the app with turn off view opened (Closed ^80).
- Removed redundant code.
- iOS 8 fixes.
- Moved the dismissal call before calling the
passcodeWasEnteredSuccessfully
delegate method.
- Opening lock screen in landscape (Closed ^72).
- Fixed a bug where keyboard did not appear on iOS6.
- View frame now takes into account status bar visibility. Nothing major or visible, it was just 20px shorter at the bottom, under the keyboard.
- Fixed a localization problem with enter new passcode.
- Fixed a bug where closing the app reset the failed attempts counter.
- Improved failed attempts logic: it now doesn’t reset unless when password is entered successfully, or app is killed.
- Removed deprecated methods.
Pushing the view wasn't handling rotation.
New customizable strings:
- enterOldPasscodeString - The string displayed when changing the passcode.
- enterPasscodeString - The string displayed when asking for the passcode.
- enablePasscodeString - The title displayed when enabling the passcode.
- changePasscodeString - The title displayed when changing the passcode.
- turnOffPasscodeString - The title displayed when disabling the passcode.
- enterNewPasscodeString - The string displayed when asking for a new passcode.
- reenterPasscodeString - The string displayed when asking for the passcode confirmation (enabling).
- reenterNewPasscodeString - The string displayed when asking for the passcode confirmation (changing)
Renamed SFHFKeychainUtils
to LTHKeychainUtils
due to the possibility of conflicts with a version already present in the project. LTHKeychainUtils
differs from the original library only by being ARC-compliant, so all the rights and thanks go to the original author, Buzz Anders.
- Added
+deletePasscodeAndClose
. - Improved doc a bit.
- Transformed all macros and constants into public properties. They were created before turning the control into a pod and the idea was to ease the init, but since I created the pod I never realized they get overwritten when updating.
- Now supports pushing the controller.
- Now supports saving and reading the passcode and timers in a custom location other than the Keychain. New delegate methods to handle this.
- A more comprehensive documentation.
Please swap the deprecated methods with the suggested ones; I will remove them in the next release.