summaryrefslogtreecommitdiff
path: root/platform/iphone/app_delegate.mm
AgeCommit message (Collapse)Author
2018-05-11Proper focus in/out handling on iOSRuslan Mustakov
PR #18675 (commit 96301e9) revealed a problem with how iOS lifecycle callbacks were handled by Godot. Before that PR it was possible to get NOTIFICATION_WM_FOCUS_IN callback without getting the corresponding NOTIFICATION_WM_FOCUS_OUT. That commit added a flag to ensure they are always coupled, but now there is an issue when, for example, you open a notification panel on iOS without moving the app to background. It resulted in view.stopAnimation being called without the corresponding startAnimation when the app moves to foreground again, so it looked like the game hanged. I changed focus out notification to be sent in applicationWillResignActive, because it makes more sense than to do it in applicationDidEnterBackground, because it is always called in pair with applicationDidBecomeActive, where focus in is sent. applicationDidEnterBackground may not come under circumstances that are now described as a comment in code.
2018-05-07Resume audio on iOS after phone call or alarmRuslan Mustakov
When a phone call or an alarm triggers on iOS, the application receives an "audio interruption" and it's up to the application to resume playback when the interruption ends. I added handling for audio interruptions same as if the game is focused out and then back in.
2018-04-11iPhone X support and iOS-related fixesRuslan Mustakov
Starting from April 2018 Apple no longer accepts apps that do not support iPhone X. For games this mainly means respecting the safe area, unobstructed by notch and virtual home button. UI controls must be placed within the safe area so that users can interact with them. This commit: - Adds OS::get_window_safe_area method that returns unobscured area of the window, where interactive controls should be rendered. - Reorganizes how launch screens are exported - the previous way was incorrect and modern iPhones did not pick up the correct screens and because of that used a non-native resolution to render the game. - Adds launch screen options for iPhone X. - Makes launch screens optional in the export template. If not specified, a white screen will be used. - Adds App Store icon (1024x1024) export option as it now has to be bundled with the app instead of being provided in iTunes Connect. - Fixes crash when launching games in iOS Simulator. It happened because controllerWasConnected callback came before the engine was initialized. Now in such case the controllers will be queued up and registered after initialization is done. - Fixes issue with the virtual keyboard where for some reason autocorrection panel would intersect with the keyboard itself and not allow you to use the top row of the keyboard. This is fixed by disabling autocorrection altogether. Closes #17358. Fixes #17428. Fixes #17331.
2018-01-05Add missing copyright headers and fix formattingRémi Verschelde
Using `misc/scripts/fix_headers.py` on all Godot files. Some missing header guards were added, and the header inclusion order was fixed in the Bullet module.
2018-01-01Update copyright statements to 2018Rémi Verschelde
Happy new year to the wonderful Godot community!
2017-12-10iOS: Drop obsolete code from never-public modulesRémi Verschelde
2017-12-07use application:didFinishLaunchingWithOptions: instead of ↵volzhs
applicationDidFinishLaunching: for iOS
2017-11-06Prevent to stop music in another background app on iOSvolzhs
2017-10-04Fix logging on iOSRuslan Mustakov
RotatedFileLogger needs data_dir on iOS to be initialized, so setting data_dir has been moved to initialize_core.
2017-09-30Merged iphone and osx audio drivers into drivers/coreaudioMarcelo Fernandez
2017-08-27Use HTTPS URL for Godot's website in the headersRémi Verschelde
2017-08-07Makes all Godot API's methods Lower CaseIndah Sylvia
2017-07-19-Renamed GlobalConfig to ProjectSettings, makes more sense.Juan Linietsky
-Added system for feature overrides, it's pretty cool :)
2017-07-17-Reorganized all properties of project settings (Sorry, Again).Juan Linietsky
(Lot's of bloat accumulated, so it was time for clean up.) -Made EditorSettings and ProjectSettings search more useful (search in sections too)
2017-05-27Merge pull request #8935 from volzhs/get-locale-masterRémi Verschelde
Make OS.get_locale() returns same value
2017-05-27Make OS.get_locale() returns same valuevolzhs
2017-05-26Fixed audio can not resume if it is interrupted cause by an incoming phone callsanikoyes
2017-05-23More fixes for iOS Godot 3.0BastiaanOlij
- nicely exit if initialisation fails - fix a few issues around new event handling - use 16bit single channel framebuffer as 32bit is not supported on iOS
2017-05-17MFI gamepad support for iPhoneBastiaanOlij
2017-04-09Style: Apply clang-format (3.9.1) to Obj-C++ filesRémi Verschelde
2017-04-09Formatting of mm filesBastiaanOlij
2017-04-08Add "Godot Engine contributors" copyright lineRémi Verschelde
2017-03-24Fixing magnetometer on iOSBastiaanOlij
(cherry picked from commit 4b7d1d8c15747a552b7dff52b0eeda4d3e7cec4e)
2017-03-05iphone: Drop unused Appirater thirdparty APIRémi Verschelde
2017-02-21-renamed globals.h to global_config.cpp (this seems to have caused a few ↵Juan Linietsky
modified files) -.pck and .zip exporting redone, seems to be working..
2017-01-16Working on compile issues for iOSBastiaanOlij
2017-01-12Added support for getting gravity vector from iOSBastiaanOlij
2017-01-12Added logic for adjusting to screen orientation and removed final negative zBastiaanOlij
2017-01-12Added gravity vector back into the accelerometer data and flipped Z on the gyroBastiaanOlij
2017-01-12Fixed up release motionManager and negate z for gyro and magnetometerBastiaanOlij
2017-01-12Replacing deprecated UIAccelerometer with Core MotionBastiaanOlij
2017-01-05-Changed most project settings in the engine, so they have major and minor ↵Juan Linietsky
categories. -Changed SectionedPropertyEditor to support this -Renamed Globals singleton to GlobalConfig, makes more sense. -Changed the logic behind persisten global settings, instead of the persist checkbox, a revert button is now available
2017-01-01Welcome in 2017, dear changelog reader!Rémi Verschelde
That year should bring the long-awaited OpenGL ES 3.0 compatible renderer with state-of-the-art rendering techniques tuned to work as low as middle end handheld devices - without compromising with the possibilities given for higher end desktop games of course. Great times ahead for the Godot community and the gamers that will play our games!
2016-04-02Remove trailing spacesRémi Verschelde
2016-01-19missed rename "keep_screen_on" for iosvolzhs
2016-01-16Add ability to set "keep screen on" for iOSvolzhs
2016-01-01Update copyright to 2016 in headersGeorge Marques
2015-11-16iOS compile fixes.Aren Villanueva
2015-10-22Added setting for CADisplayLink on iOS, so you no longer need to recompile ↵steve
to change it
2015-09-03merged some stuff for okamJuan Linietsky
2015-07-01fixed ios compilation errorromulox_x
2015-06-30-some changes by okamJuan Linietsky
2015-04-18Updated copyright year in all headersJuan Linietsky
2015-01-23Fix init crash on iPad 1st gen device with iOS 5.1.1Maxime CHAPELET
2014-12-02-Ability to ask for documents/pictures/etc system dirs.Juan Linietsky
-Fixes to animationplayer -fixes to collada importer
2014-11-26-fix sound room params (was not working)Juan Linietsky
-fixes to DAE exporter -ios fixes (video)
2014-10-07Build System ChangesJuan Linietsky
-=-=-=-=-=-=-=-=-=-= Build System: -Big clean up of SCons, changed how builds are done to a much cleaner method (check the Github Wiki for instructions). -Deactivated BlackBerry10 (sorry), if no mantainer found (or BlackBerry does not send us a Passort ;), platform will be removed as we have no longer devices to test. Engine: -Removed deprecated object and scene format (was in there just for compatibility, not in use since a long time). -Added ability to open scenes even if a node type was removed (will try to guess the closest type). -Removed deprecated node types.
2014-09-023D Physics and Other StuffJuan Linietsky
-=-=-=-=-=-=-=-=-=-=-=-=-= -New Vehicle (Based on Bullet's RaycastVehicle) - Vehiclebody/VehicleWheel. Demo will come soon, old vehicle (CarBody) will go away soon too. -A lot of fixes to the 3D physics engine -Added KinematicBody with demo -Fixed the space query API for 2D (demo will come soon). 3D is WIP. -Fixed long-standing bug with body_enter/body_exit for Area and Area2D -Performance variables now includes physics (active bodies, collision pairs and islands) -Ability to see what's inside of instanced scenes! -Fixed Blend Shapes (no bs+skeleton yet) -Added an Android JavaClassWrapper singleton for using Android native classes directly from GDScript. This is very Alpha!
2014-07-02Fixed Bugs & Joypad in AndroidJuan Linietsky
================================ -resolved many graphical glitches with multiple lights in GLES2 render -fixes and WIP apk expansion -joystick support for Android by Ariel
2014-05-14A bit of everything:Juan Linietsky
-IMA-ADPCM support for samples, this means that sound effects can be compressed and use 4 timess less RAM. -New 3D import workflow based on Wavefront OBJ. Import single objects as mesh resources instead of full scenes. Many people prefers to work this way. Just like the rest of the imported resources, these are updated in realtime if modified externally. -Mesh resources now support naming surfaces. This helps reimporting to identify which user-created materials must be kept. -Several fixes and improvements to SurfaceTool. -Anti Aliasing added to WorldEnvironment effects (using FXAA) -2D Physics bodies (RigidBody, KinematicBody, etc), Raycasts, Tilemap, etc support collision layers. This makes easy to group which objects collide against which. -2D Trigger shapes can now also trigger collision reporting in other 2D bodies (it used to be in Area2D before) -Viewport render target textures can now be filtered. -Few fixes in GDscript make it easier to work with static functions and class members. -Several and many bugfixes.