{ "id": "172980", "key": "TIMOB-26814", "fields": { "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false }, "project": { "id": "10153", "key": "TIMOB", "name": "Titanium SDK/CLI", "projectCategory": { "id": "10100", "description": "Titanium and related SDKs used in application development", "name": "Client" } }, "fixVersions": [], "resolution": null, "resolutiondate": null, "created": "2019-02-09T08:23:14.000+0000", "priority": { "name": "Medium", "id": "3" }, "labels": [], "versions": [ { "id": "19882", "name": "Release 8.0.0", "archived": false, "released": true, "releaseDate": "2019-03-14" } ], "issuelinks": [], "assignee": null, "updated": "2019-02-19T20:15:43.000+0000", "status": { "description": "The issue is open and ready for the assignee to start work on it.", "name": "Open", "id": "1", "statusCategory": { "id": 2, "key": "new", "colorName": "blue-gray", "name": "To Do" } }, "components": [ { "id": "10206", "name": "iOS", "description": "iOS Platform" } ], "description": "We are currently trying to migrate our manually set safe area values to the SDK 8+ \"safeAreaPadding\" property. Unfortunately, it does not work if \"extendSafeArea\" is {{false}}.\r\n\r\nIt should also work for normal views like a window inside a tabgroup or navigation-window, since the bottom-spacing is still of high interest to, e.g. for calculating the keyboard bottom height.", "attachment": [], "flagged": false, "summary": "iOS: safeAreaPadding is all zeros if \"extendsSafeArea\" is false", "creator": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "subtasks": [], "reporter": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "environment": null, "comment": { "comments": [ { "id": "445994", "author": { "name": "jquick", "key": "jquick", "displayName": "Joshua Quick", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Regarding \"safeAreaPadding\", this is not a bug. This is the correct behavior. Padding is only applicable if \"extendSafeArea\" is set {{true}}.\r\n\r\nIf \"extendSafeArea\" is set {{false}}, then the window's root view will auto-size itself within the safe-area. This means no padding is needed. The \"safeAreaPadding\" returned is relative to the window's root view which is why it returns all zeros in this case. The idea here is a view can blindly apply safe-area padding without having to worry about the state of the \"extendSafeArea\" property.\r\n\r\nNow, if you set \"extendSafeArea\" {{false}} and you see views being overlapped by insets, then that sounds like a layout bug. *Is this the issue you are seeing?*\r\n\r\nRegarding the virtual keyboard, I'm pretty sure iOS does not provide its height as an inset (there is a different native API for this). And this impossible to do on Android since there is no reliable way to fetch the virtual keyboard height on that platform (it's better to use the \"adjustSize\" or \"adjustPan\" window settings instead and let the Android OS handle it).", "updateAuthor": { "name": "jquick", "key": "jquick", "displayName": "Joshua Quick", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2019-02-11T23:32:21.000+0000", "updated": "2019-02-11T23:32:21.000+0000" }, { "id": "445996", "author": { "name": "jquick", "key": "jquick", "displayName": "Joshua Quick", "active": true, "timeZone": "America/Los_Angeles" }, "updateAuthor": { "name": "jquick", "key": "jquick", "displayName": "Joshua Quick", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2019-02-11T23:40:23.000+0000", "updated": "2019-02-11T23:40:23.000+0000" }, { "id": "446003", "author": { "name": "jquick", "key": "jquick", "displayName": "Joshua Quick", "active": true, "timeZone": "America/Los_Angeles" }, "body": "For the virtual keyboard, you can use {{Ti.App}} event \"keyboardframechanged\"...\r\nhttps://docs.appcelerator.com/platform/latest/#!/api/Titanium.App-event-keyboardframechanged\r\n", "updateAuthor": { "name": "jquick", "key": "jquick", "displayName": "Joshua Quick", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2019-02-12T01:17:21.000+0000", "updated": "2019-02-12T01:17:21.000+0000" }, { "id": "446167", "author": { "name": "jquick", "key": "jquick", "displayName": "Joshua Quick", "active": true, "timeZone": "America/Los_Angeles" }, "body": "[~hknoechel], I just noticed that setting \"extendSafeArea\" to {{false}} on iOS 10 and older versions the top status bar will wrongly overlap the window's content. On iOS 11 and higher, the top status bar does not overlap the window's content. This is definitely a bug, although it's probably not what you're running into.", "updateAuthor": { "name": "jquick", "key": "jquick", "displayName": "Joshua Quick", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2019-02-19T20:15:43.000+0000", "updated": "2019-02-19T20:15:43.000+0000" } ], "maxResults": 4, "total": 4, "startAt": 0 } } }