{ "id": "103203", "key": "TIMOB-11412", "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": "13505", "description": "Release 3.0.0", "name": "Release 3.0.0", "archived": true, "released": true, "releaseDate": "2012-12-14" }, { "id": "14162", "description": "Release 3.1.0", "name": "Release 3.1.0", "archived": true, "released": true, "releaseDate": "2013-04-16" }, { "id": "14166", "description": "2012 Sprint 21 Core", "name": "2012 Sprint 21 Core", "archived": true, "released": true, "releaseDate": "2012-10-22" }, { "id": "14273", "description": "2012 Sprint 21", "name": "2012 Sprint 21", "archived": true, "released": true, "releaseDate": "2012-10-22" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2012-10-15T20:14:04.000+0000", "created": "2012-10-12T11:23:12.000+0000", "priority": { "name": "High", "id": "2" }, "labels": [ "accessibility_module", "core", "qe-ios100112", "qe-nfc", "qe-testadded" ], "versions": [ { "id": "13505", "description": "Release 3.0.0", "name": "Release 3.0.0", "archived": true, "released": true, "releaseDate": "2012-12-14" } ], "issuelinks": [], "assignee": { "name": "mstepanov", "key": "mstepanov", "displayName": "Max Stepanov", "active": true, "timeZone": "America/Los_Angeles" }, "updated": "2012-12-04T19:39:23.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": "10206", "name": "iOS", "description": "iOS Platform" } ], "description": "The event Ti.App.Event_Accessibility_Changed returns incorrect enabled state of Accessibility.\r\n\r\nThis works fine on Android\r\n\r\nSteps to Reproduce:\r\n1. Run the application below with Voice Over enabled. \r\n2. Background the app and go to setting to switch off voice over\r\n3. Open the app again\r\n4. Again Background the app and go to setting to switch on voice over\r\n5. Open the app again\r\n\r\nActual Result:\r\nAfter Step 3: The label gets added at the end \"Accessibility State Changed: it is now disabled\" (This is correct)\r\nAfter Step 5: The label gets added at the end \"Accessibility State Changed: it is now disabled\" \r\n\r\nExpected Result:\r\nAfter Step 3: The label gets added at the end \"Accessibility State Changed: it is now disabled\"\r\nAfter Step 5: The label gets added at the end \"Accessibility State Changed: it is now enabled\" \r\n\r\n{code}\r\nvar tabGroup = Ti.UI.createTabGroup({orientationModes: [Ti.UI.PORTRAIT]});\r\n\r\nwinEvents = Ti.UI.createWindow({\r\n\ttitle: \"Events\",\r\n\tlayout: \"vertical\",\r\n\tbackgroundColor: \"#fff\"\r\n}),\r\ntabEvents = Ti.UI.createTab({\r\n\twindow: winEvents,\r\n\ttitle: 'tab1'\r\n}),\r\n\r\neventLog = Ti.UI.createLabel({\r\n\ttop: 16, left: 32, right: 32,\r\n\t//height: 48 * 5,\r\n\tverticalAlign: Ti.UI.TEXT_VERTICAL_ALIGNMENT_TOP,\r\n\taccessibilityHidden: true,\r\n\taccessibilityLabel: \"My special label.\",\r\n accessibilityValue: \"No value.\",\r\n accessibilityHint: \"No action\",\r\n}),\r\n\r\n\r\nTi.App.addEventListener(Ti.App.EVENT_ACCESSIBILITY_CHANGED, function(e) {\r\n\teventLog.text += \"\\nAccessibility state changed: \" + (e.enabled ? \"it is now enabled.\" : \"it is now disabled.\");\r\n});\r\n\r\neventLog.text = \"The Accessibility state change would reflect below. \";\r\n\r\neventLog.text += \"\\n\\n\";\r\n\r\nwinEvents.add(eventLog);\r\n\r\ntabGroup.addTab(tabEvents);\r\ntabGroup.open();\r\n\r\n{code}", "attachment": [], "flagged": false, "summary": "iOS: Accessibility: Ti.App.Event_Accessibility_Changed returns incorrect enabled state of Accessibility", "creator": { "name": "ssekhri", "key": "ssekhri", "displayName": "Satyam Sekhri", "active": true, "timeZone": "America/Los_Angeles" }, "subtasks": [], "reporter": { "name": "ssekhri", "key": "ssekhri", "displayName": "Satyam Sekhri", "active": true, "timeZone": "America/Los_Angeles" }, "environment": "Titanium Studio: 3.0.0.201210101947\r\nTitanium SDK: 3.0.0.v20121011174610\r\nDevice: iPad3 (6.0)\r\nXCode: 4.5.1", "comment": { "comments": [ { "id": "223274", "author": { "name": "mstepanov", "key": "mstepanov", "displayName": "Max Stepanov", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Cannot reproduce Actual result \"after step 5\".\r\nWhen an app is running and VoiceOver is turned on while backgrounded, iOS kills/restarts the application, so the text is the same as at the step 1.", "updateAuthor": { "name": "mstepanov", "key": "mstepanov", "displayName": "Max Stepanov", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-10-12T17:46:46.000+0000", "updated": "2012-10-12T17:46:46.000+0000" }, { "id": "223383", "author": { "name": "ssekhri", "key": "ssekhri", "displayName": "Satyam Sekhri", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Ensure to start the test with Voice Over already ON, then it does append text to the existing label in Step 1.\nIf the voice Over is OFF when the application is launched the first time i.e. started, then nothing appends to the text in step1", "updateAuthor": { "name": "ssekhri", "key": "ssekhri", "displayName": "Satyam Sekhri", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-10-13T11:20:38.000+0000", "updated": "2012-10-13T11:20:38.000+0000" }, { "id": "223414", "author": { "name": "mstepanov", "key": "mstepanov", "displayName": "Max Stepanov", "active": true, "timeZone": "America/Los_Angeles" }, "body": "e.enabled property was missing on iOS.\n\nPR submitted https://github.com/appcelerator/titanium_mobile/pull/3213", "updateAuthor": { "name": "mstepanov", "key": "mstepanov", "displayName": "Max Stepanov", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-10-13T20:30:09.000+0000", "updated": "2012-10-13T20:30:09.000+0000" }, { "id": "226671", "author": { "name": "ssekhri", "key": "ssekhri", "displayName": "Satyam Sekhri", "active": true, "timeZone": "America/Los_Angeles" }, "body": "The issue is fixed, however there is difference in behaviour on iOS6 as compared to previous versions. On older versions of iOS the application restarts when voice over is turned ON and hence after step 5 the text at step 1 is shown whereas on iOS6 the application continues the application instance (i.e. does not restart) when voice over is turned ON and application shows the state change to enabled.", "updateAuthor": { "name": "ssekhri", "key": "ssekhri", "displayName": "Satyam Sekhri", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-11-08T09:20:27.000+0000", "updated": "2012-11-08T09:20:27.000+0000" }, { "id": "229900", "author": { "name": "oromero", "key": "oromero", "displayName": "Olga Romero", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Closing as fixed.\nTested and verified:\nTitanium Studio, build: 3.0.0.201211301903\nTitanium SDK, build: 3.0.0.v20121130200208\nDevice:\niPhone5 iOS 6.0", "updateAuthor": { "name": "oromero", "key": "oromero", "displayName": "Olga Romero", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-12-04T19:28:55.000+0000", "updated": "2012-12-04T19:28:55.000+0000" } ], "maxResults": 5, "total": 5, "startAt": 0 } } }