Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Lockscreen bug fixes #1509

Merged

Conversation

NicoleYarroch
Copy link
Contributor

@NicoleYarroch NicoleYarroch commented Dec 12, 2019

Fixes #1480, #1492, #1496, #1501

This PR is ready for review.

Risk

This PR makes minor API changes.

Testing Plan

  • I have verified that I have not introduced new warnings in this PR (or explain why below)
  • I have run the unit tests with this PR
  • I have tested this PR against Core and verified behavior (if applicable, if not applicable, explain why below).

Unit Tests

Fixed unit test cases for the lock screen.

Core Tests

Smoke tests performed

Core version / branch / commit hash / module tested against: SYNC 3 v.3.4
HMI name / version / branch / commit hash / module tested against: SYNC 3 v3.4

Summary

Fixed numerous issues with showing and dismissing the lock screen when the app has multiple UIWindows.

  • Removed the SDLScreenshotViewController class as no screenshot is needed to animate the transition and replaced it with the SDLLockScreenRootViewController class as it is needed to fix the status bar rotation bug.
  • The lockscreen UIWindow is now created the first time the lock screen is presented and it is hidden when the lock screen is dismissed. When the session with the head unit is closed, the lock screen window is destroyed. Doing this means we don't have to keep track of the window over which the lock screen is being presented (Apple adds it's own private UIWindow for the keyboard to the app so it is not as simple as grabbing the last window on the UIApplication's windows array. Also there is no guarantee the top-most window is the currently visible content as the window could be clear or offscreen).

Changelog

Bug Fixes
  • Fixed the wrong UIWindow being set when the lock screen was dismissed.
  • Fixed the lock screen UIWindow being created as soon as the SDL app was started. Now it is created on the first presentation of the lock screen and destroyed when the session is closed.
  • Fixed the lock screen sometimes having a wrong frame.

Tasks Remaining:

  • Fix test cases]
  • Comprehensive smoke tests - iOS 12
  • Comprehensive smoke tests - iOS 13

CLA

@NicoleYarroch NicoleYarroch added the bug A defect in the library label Dec 12, 2019
@NicoleYarroch NicoleYarroch self-assigned this Dec 12, 2019
@NicoleYarroch NicoleYarroch changed the title WIP: Lockscreen bug fixes Lockscreen bug fixes Dec 12, 2019
Copy link
Contributor

@joeljfischer joeljfischer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I connected the swift example app (iOS 13 scene window API) while DD is on. The lock screen never appeared even after toggling the lock screen.

SmartDeviceLink/SDLLockScreenPresenter.m Outdated Show resolved Hide resolved
SmartDeviceLink/SDLLockScreenPresenter.m Outdated Show resolved Hide resolved
SmartDeviceLink/SDLLockScreenPresenter.m Outdated Show resolved Hide resolved
SmartDeviceLink/SDLLockScreenPresenter.m Outdated Show resolved Hide resolved
SmartDeviceLink/SDLLockScreenPresenter.m Outdated Show resolved Hide resolved
SmartDeviceLink/SDLViewControllerPresentable.h Outdated Show resolved Hide resolved
@joeljfischer joeljfischer added this to In progress in v6.4.1 via automation Jan 3, 2020
@joeljfischer joeljfischer moved this from In progress to Review in progress in v6.4.1 Jan 3, 2020
@joeljfischer joeljfischer removed this from Review in progress in v6.4.1 Jan 3, 2020
@joeljfischer joeljfischer added this to Review in progress in v6.5.0 Jan 3, 2020
@joeljfischer joeljfischer merged commit 086250f into develop Jan 3, 2020
v6.5.0 automation moved this from Review in progress to Done Jan 3, 2020
@joeljfischer joeljfischer deleted the bugfix/issues_1480_1492_1496_1501_lockscreen_fixes branch January 3, 2020 15:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug A defect in the library
Projects
No open projects
v6.5.0
  
Done
Development

Successfully merging this pull request may close these issues.

None yet

2 participants