Files
ppsspp/ios/ViewController.h
T
Henrik RydgårdandClaude Opus 5.5 5b05b34b4e tvOS: Fewer ifdefs, capability checks instead
The Siri Remote setup builds on iOS too, the device type comes from the
interface idiom, and requests for things the platform says it lacks are
refused by checking the property. What's left ifdeffed is API tvOS doesn't
have at all. Reports say tvOS.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-13 02:21:14 +02:00

59 lines
1.7 KiB
Objective-C

#pragma once
#include "ppsspp_config.h"
#import <UIKit/UIKit.h>
#import <GameController/GameController.h>
#if PPSSPP_PLATFORM(TVOS)
// The one view controller. Renders with Vulkan (MoltenVK) to a CAMetalLayer.
// A GCEventViewController, so controller input (the Siri Remote included) reaches us only through
// GCController, instead of also driving UIKit's focus engine.
@interface PPSSPPViewController : GCEventViewController
#else
#import <PhotosUI/PhotosUI.h>
#import "CameraHelper.h"
#import "LocationHelper.h"
// The one view controller. Renders with Vulkan (MoltenVK) to a CAMetalLayer.
@interface PPSSPPViewController : UIViewController<
PHPickerViewControllerDelegate,
CameraFrameDelegate, LocationHandlerDelegate,
UIGestureRecognizerDelegate>
#endif
- (void)hideKeyboard;
- (void)showKeyboard;
- (void)shareText:(NSString *)text;
- (void)shareFile:(NSURL *)url;
- (void)shutdown;
- (void)startLocation;
- (void)stopLocation;
- (void)startVideo:(int)width height:(int)height;
- (void)stopVideo;
- (void)appSwitchModeChanged;
- (void)immersiveModeChanged;
- (void)setupController:(GCController *)controller;
// Forwarded from the AppDelegate
- (void)didBecomeActive;
- (void)willResignActive;
- (void)uiStateChanged;
- (void)pickPhoto:(NSString *)saveFilename requestId:(int)requestId;
- (void)updateResolutionWithView:(UIView *)view;
@end
extern PPSSPPViewController *sharedViewController;
#define IS_IPAD() ([UIDevice currentDevice].userInterfaceIdiom == UIUserInterfaceIdiomPad)
#define IS_IPHONE() ([UIDevice currentDevice].userInterfaceIdiom == UIUserInterfaceIdiomPhone)
#define IS_TV() ([UIDevice currentDevice].userInterfaceIdiom == UIUserInterfaceIdiomTV)