{ "id": "169054", "key": "TIMOB-25003", "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": [ { "id": "18414", "description": "", "name": "Release 6.2.0", "archived": false, "released": true, "releaseDate": "2017-09-13" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2017-08-21T14:52:34.000+0000", "created": "2017-07-21T04:28:15.000+0000", "priority": { "name": "High", "id": "2" }, "labels": [], "versions": [], "issuelinks": [ { "id": "55463", "type": { "id": "10001", "name": "Cloners", "inward": "is cloned into", "outward": "is cloned from" }, "outwardIssue": { "id": "169053", "key": "TIMOB-25002", "fields": { "summary": "iOS: Deprecate Ti.UI.iOS.TabbedBar, move to own module \"Ti.TabbedBar\"", "status": { "description": "The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.", "name": "Closed", "id": "6", "statusCategory": { "id": 3, "key": "done", "colorName": "green", "name": "Done" } }, "priority": { "name": "High", "id": "2" }, "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false } } } }, { "id": "55464", "type": { "id": "10020", "name": "Depends", "inward": "is dependent of", "outward": "depends on" }, "outwardIssue": { "id": "139098", "key": "TIMOB-17964", "fields": { "summary": "Android 5.0: Add support for Toolbar", "status": { "description": "The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.", "name": "Closed", "id": "6", "statusCategory": { "id": 3, "key": "done", "colorName": "green", "name": "Done" } }, "priority": { "name": "High", "id": "2" }, "issuetype": { "id": "2", "description": "A new feature of the product, which has yet to be developed.", "name": "New Feature", "subtask": false } } } }, { "id": "55873", "type": { "id": "10122", "name": "Gantt: start-finish", "inward": "is triggered by", "outward": "is triggering" }, "outwardIssue": { "id": "169670", "key": "ALOY-1578", "fields": { "summary": "Move Ti.UI.iOS.Toolbar to Ti.UI.Toolbar", "status": { "description": "A resolution has been taken, and it is awaiting verification by reporter. From here issues are either reopened, or are closed.", "name": "Resolved", "id": "5", "statusCategory": { "id": 3, "key": "done", "colorName": "green", "name": "Done" } }, "priority": { "name": "None", "id": "6" }, "issuetype": { "id": "4", "description": "An improvement or enhancement to an existing feature or task.", "name": "Improvement", "subtask": false } } } } ], "assignee": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "updated": "2017-08-30T17:36:20.000+0000", "status": { "description": "The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.", "name": "Closed", "id": "6", "statusCategory": { "id": 3, "key": "done", "colorName": "green", "name": "Done" } }, "components": [ { "id": "10202", "name": "Android", "description": "Android Platform" }, { "id": "10206", "name": "iOS", "description": "iOS Platform" } ], "description": "As one of the engineering week decisions, we will move the iOS-only {{Ti.UI.iOS.Toolbar}} core-component to the unified {{Ti.UI.Toolbar}} namespace. We will combine it with the new Toolbar exposed by Android (TIMOB-17964). In addition, this ticket should also hold the PR for Alloy to remove the platform-specific handling of the {{}} tag.", "attachment": [ { "id": "63008", "filename": "darkstripes_bg.jpg", "author": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "created": "2017-08-09T15:19:55.000+0000", "size": 80497, "mimeType": "image/jpeg" } ], "flagged": false, "summary": "iOS: Deprecate Ti.UI.iOS.Toolbar, create parity with Android, change Alloy to handle both", "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": "424513", "author": { "name": "eharris", "key": "eharris", "displayName": "Ewan Harris", "active": true, "timeZone": "Europe/Dublin" }, "body": "Might we also be able to combine the Ti.UI.Windows.CommandBar component into this too?", "updateAuthor": { "name": "eharris", "key": "eharris", "displayName": "Ewan Harris", "active": true, "timeZone": "Europe/Dublin" }, "created": "2017-07-21T09:01:14.000+0000", "updated": "2017-07-21T09:01:14.000+0000" }, { "id": "426162", "author": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "body": "We should! Quick question for [~gmathews] and [~ybanev]: Is the Android Toolbar PR merged already, having the toolbar on the Ti.UI.Toolbar namespace? If so, we can go ahead and move iOS and Windows to it as well. Great parity achievement! :-)", "updateAuthor": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "created": "2017-08-08T12:43:28.000+0000", "updated": "2017-08-08T12:43:28.000+0000" }, { "id": "426166", "author": { "name": "ybanev", "key": "ybanev", "displayName": "Yordan Banev", "active": true, "timeZone": "Europe/Athens" }, "body": "No, it is not merged yet. In what order should we do them - Alloy change first, platforms later or vice-versa ?", "updateAuthor": { "name": "ybanev", "key": "ybanev", "displayName": "Yordan Banev", "active": true, "timeZone": "Europe/Athens" }, "created": "2017-08-08T12:49:22.000+0000", "updated": "2017-08-08T12:49:22.000+0000" }, { "id": "426185", "author": { "name": "emerriman", "key": "emerriman", "displayName": "Eric Merriman ", "active": true, "timeZone": "America/Los_Angeles" }, "body": "[~hknoechel] Don't forget we need to still be backwards-compatible in a minor.", "updateAuthor": { "name": "emerriman", "key": "emerriman", "displayName": "Eric Merriman ", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2017-08-08T17:27:21.000+0000", "updated": "2017-08-08T17:27:21.000+0000" }, { "id": "426309", "author": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "body": "Agree! iOS would simply link to the new API. The Alloy-part would be copied over, so we can keep it for a few releases without issues.", "updateAuthor": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "created": "2017-08-09T07:20:50.000+0000", "updated": "2017-08-09T07:20:50.000+0000" }, { "id": "426320", "author": { "name": "ybanev", "key": "ybanev", "displayName": "Yordan Banev", "active": true, "timeZone": "Europe/Athens" }, "body": "PR for Alloy: https://github.com/appcelerator/alloy/pull/841\r\nIt works fine on Android. It shouldn't break compatibility on iOS as well, but I can't test that.", "updateAuthor": { "name": "ybanev", "key": "ybanev", "displayName": "Yordan Banev", "active": true, "timeZone": "Europe/Athens" }, "created": "2017-08-09T11:43:52.000+0000", "updated": "2017-08-09T11:43:52.000+0000" }, { "id": "426328", "author": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "body": "PR (master): https://github.com/appcelerator/titanium_mobile/pull/9292\r\nPR (6_2_X): https://github.com/appcelerator/titanium_mobile/pull/9293\r\n\r\nTest-Case 1/3:\r\n{code:js}\r\nvar win = Ti.UI.createWindow({\r\n backgroundColor: '#fff'\r\n});\r\n\r\nvar send = Titanium.UI.createButton({\r\n title: 'Send',\r\n style: Titanium.UI.iOS.SystemButtonStyle.DONE,\r\n});\r\n\r\nvar camera = Titanium.UI.createButton({\r\n systemButton: Titanium.UI.iOS.SystemButton.CAMERA,\r\n});\r\n\r\nvar cancel = Titanium.UI.createButton({\r\n systemButton: Titanium.UI.iOS.SystemButton.CANCEL\r\n});\r\n\r\nvar flexSpace = Titanium.UI.createButton({\r\n systemButton:Titanium.UI.iOS.SystemButton.FLEXIBLE_SPACE\r\n});\r\n\r\nvar toolbar = Titanium.UI.createToolbar({\r\n items:[send, flexSpace, camera, flexSpace, cancel],\r\n bottom:0,\r\n borderTop:true,\r\n borderBottom:false\r\n}); \r\n\r\n// Should be \"Ti.UI.Toolbar\". Try to rename Titanium.UI.createToolbar to\r\n// Titanium.UI.iOS.createToolbar to test the deprecated API. It should then also\r\n// throw a deprecation-warning\r\nTi.API.info(toolbar.apiName);\r\n\r\nwin.add(toolbar);\r\nwin.open();\r\n{code}\r\n\r\nTest-Case 2/3:\r\n{code:js}\r\nvar send = Titanium.UI.createButton({\r\n title: 'Send',\r\n style: Titanium.UI.iOS.SystemButtonStyle.DONE,\r\n});\r\n \r\nvar camera = Titanium.UI.createButton({\r\n systemButton: Titanium.UI.iOS.SystemButton.CAMERA,\r\n});\r\n \r\nvar cancel = Titanium.UI.createButton({\r\n systemButton: Titanium.UI.iOS.SystemButton.CANCEL\r\n});\r\n \r\nvar bookmark = Titanium.UI.createButton({\r\n systemButton: Titanium.UI.iOS.SystemButton.BOOKMARKS\r\n});\r\n \r\nflexSpace = Titanium.UI.createButton({\r\n systemButton:Titanium.UI.iOS.SystemButton.FLEXIBLE_SPACE\r\n});\r\n \r\nvar tb1 = Titanium.UI.iOS.createToolbar({\r\n items:[send, flexSpace, camera],\r\n top:20,\r\n backgroundImage:'images/chip.jpg',\r\n extendBackground:true\r\n}); \r\n \r\nvar tb2 = Titanium.UI.iOS.createToolbar({\r\n items:[bookmark, flexSpace, cancel],\r\n bottom:0,\r\n backgroundImage:'darkstripes_bg.jpg',\r\n}); \r\n \r\nvar label = Ti.UI.createLabel({text:'SEE TOOLBARS !'});\r\n \r\nvar win = Ti.UI.createWindow({backgroundColor:'white',orientationModes:[1,2,3,4]});\r\nwin.add(tb1);\r\nwin.add(tb2);\r\nwin.add(label);\r\nwin.open();\r\n{code}\r\n\r\nTest-Case 3/3:\r\n{code:js}\r\nvar win = Ti.UI.createWindow({\r\n backgroundColor: 'red',\r\n extendEdges: [Ti.UI.EXTEND_EDGE_ALL]\r\n});\r\nwin.add(Ti.UI.iOS.createToolbar({\r\n items: [Ti.UI.createButton({\r\n systemButton: Titanium.UI.iOS.SystemButton.CAMERA,\r\n })],\r\n top: 0, // 20 leaves a gap\r\n height: 64, // doesn't work\r\n borderTop: false,\r\n borderBottom: true\r\n}));\r\nwin.open();\r\n{code}", "updateAuthor": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "created": "2017-08-09T14:29:21.000+0000", "updated": "2017-08-09T14:39:12.000+0000" }, { "id": "427369", "author": { "name": "amukherjee", "key": "amukherjee", "displayName": "Abir Mukherjee", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Changes are seen in SDKs:\r\n6.2.0.v20170828180251\r\n7.0.0.v20170829103419", "updateAuthor": { "name": "amukherjee", "key": "amukherjee", "displayName": "Abir Mukherjee", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2017-08-29T18:13:21.000+0000", "updated": "2017-08-29T18:13:21.000+0000" } ], "maxResults": 8, "total": 8, "startAt": 0 } } }