Menu button dismisses modal view controller or pops view controllers from navigation stacks

Originator:jaddyman
Number:rdar://25428691 Date Originated:30-Mar-2016 01:03 AM
Status:Open Resolved:
Product:tvOS Product Version:9.2
Classification:UI/Usability Reproducible:Always
 
Summary:
In tvOS 9.2, in a view controller that subclasses GCEventViewController and sets `controllerUserInteractionEnabled` to `false`, setting a closure for the `controllerPausedHandler` on a `GCController` causes the UI to 'navigate back'. According to all documentation and prior versions of tvOS this is not desired behaviour. With the `controllerUserInteractionEnabled` property set to `false`, the controller events should not be propagated to the responder chain and should not trigger UIKit actions such as dismissing modal view controllers or navigating back on a navigation stack.

Steps to Reproduce:
1. Connect an MFi game controller to an Apple TV running tvOS 9.2
2. Present a modal view controller that subclasses GCEventViewController
3. Set it's controllerUserInteractionEnabled to false
4. Set a controllerPausedHandler closure
5. Press the menu/pause button on the controller

Expected Results:
The closure set as the controllerPausedHandler should be executed and it's enclosed code should execute. There should be no back action, no dismissal of modally presented view controllers etc. 

Actual Results:
The closure is executed, but the modal view controller is also dismissed.

Version:
tvOS 9.2, Xcode 7.3

Notes:
This undesirable behaviour also happens when using the Siri Remote in place of a game controller.

Configuration:
Apple TV, with a wireless MFi controller connected

Attachments:
'MenuButtonTest.zip' was successfully uploaded. (http://d.pr/f/1gDgs)

Comments


Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!