{ "id": "175998", "key": "TIMOB-28329", "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": "21050", "name": "Release 10.0.0", "archived": false, "released": true, "releaseDate": "2021-05-17" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2021-03-12T19:43:22.000+0000", "created": "2021-01-27T12:37:57.000+0000", "priority": { "name": "Critical", "id": "1" }, "labels": [], "versions": [ { "id": "21052", "description": "", "name": "Release 9.3.0", "archived": false, "released": true, "releaseDate": "2020-12-14" }, { "id": "21129", "name": "Release 9.2.2", "archived": false, "released": true, "releaseDate": "2020-10-29" }, { "id": "21177", "name": "Release 9.3.1", "archived": false, "released": true, "releaseDate": "2021-01-26" } ], "issuelinks": [], "assignee": { "name": "gmathews", "key": "gmathews", "displayName": "Gary Mathews", "active": true, "timeZone": "America/Los_Angeles" }, "updated": "2021-03-12T19:43:22.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" } ], "description": "The {{touchFeedback}} property on Android is completely ignored on any {{Ti.UI.ListView}}. The documentation also mention this property is disabled by default but this is also not the case.\r\n\r\n*Expected behaviour*\r\n- {{touchFeedback}} should be disabled by default\r\n- {{touchFeedback}} property should be toggleable\r\n- {{touchFeedbackColor}} property should be customizable\r\n\r\nReproducable code (from ListView documentation, altered)\r\n\r\n{code:js}\r\nvar win = Ti.UI.createWindow({backgroundColor: 'gray'});\r\nvar listView = Ti.UI.createListView({touchFeedback: true, backgroundColor: \"#000\", touchFeedbackColor: \"red\"});\r\nvar sections = [];\r\nvar fruitDataSet = [\r\n {properties: { title: 'Apple'}},\r\n {properties: { title: 'Banana'}},\r\n];\r\nvar fruitSection = Ti.UI.createListSection({ headerTitle: 'Fruits', items: fruitDataSet});\r\n\r\nsections.push(fruitSection);\r\nvar vegDataSet = [\r\n {properties: { title: 'Carrots'}},\r\n {properties: { title: 'Potatoes'}},\r\n];\r\nvar vegSection = Ti.UI.createListSection({ headerTitle: 'Vegetables', items: vegDataSet});\r\nsections.push(vegSection);\r\n\r\nlistView.sections = sections;\r\nwin.add(listView);\r\nwin.open();\r\nvar fishDataSet = [\r\n {properties: { title: 'Cod'}},\r\n {properties: { title: 'Haddock'}},\r\n];\r\nvar fishSection = Ti.UI.createListSection({ headerTitle: 'Fish', items: fishDataSet});\r\nlistView.appendSection(fishSection);\r\n{code}", "attachment": [], "flagged": false, "summary": "Android: touchFeedback property on ListView is ignored and true by default", "creator": { "name": "topener", "key": "topener", "displayName": "Rene Pot", "active": true, "timeZone": "Europe/Berlin" }, "subtasks": [], "reporter": { "name": "topener", "key": "topener", "displayName": "Rene Pot", "active": true, "timeZone": "Europe/Berlin" }, "environment": "Android with at least sdk 9.2.x and 9.3.x", "comment": { "comments": [ { "id": "458098", "author": { "name": "jquick", "key": "jquick", "displayName": "Joshua Quick", "active": true, "timeZone": "America/Los_Angeles" }, "body": "First of all, touch feedback (ie: the touch ripple effect) should be enabled by default in ListView/TableView because that is the expected native behavior on Android. You can see this in pretty much in every native Android app. The same is true for buttons.\r\n\r\nSecond, you're supposed to apply touch feedback to each individual row's view and not the entire ListView/TableView. The reason is because the touchFeedback feature is applied to a view's entire \"background\".\r\n\r\nAlso, I'm pretty sure setting ListView property \"selectedBackgroundColor\" or \"selectedBackgroundImage\" disables the touch feedback ripple effect on all list items. You should be using those properties.", "updateAuthor": { "name": "jquick", "key": "jquick", "displayName": "Joshua Quick", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2021-01-27T17:02:27.000+0000", "updated": "2021-01-27T17:02:27.000+0000" }, { "id": "458103", "author": { "name": "topener", "key": "topener", "displayName": "Rene Pot", "active": true, "timeZone": "Europe/Berlin" }, "body": "[~jquick]\r\n\r\nI tried setting it to different rows too, but that also doesn't remove it. I tried these methods:\r\n\r\n{code:js}\r\nvar fishDataSet = [\r\n {properties: { title: 'Cod'}, touchFeedback: false},\r\n {properties: { title: 'Haddock', touchFeedback: false}},\r\n];\r\n{code}\r\n\r\nRegarding the first point, seems valid! But then the documentation would need updating and probably needs clarification regarding the whole listview / vs items.\r\n\r\nI also tried applying {{selectedBackgroundColor}} but that doesn't do anything either. I tried applying it to both the listview and the listitem. Tried on 9.2.2.GA and 9.3.1.GA \r\n", "updateAuthor": { "name": "topener", "key": "topener", "displayName": "Rene Pot", "active": true, "timeZone": "Europe/Berlin" }, "created": "2021-01-28T11:35:21.000+0000", "updated": "2021-01-28T11:35:21.000+0000" }, { "id": "458156", "author": { "name": "gmathews", "key": "gmathews", "displayName": "Gary Mathews", "active": true, "timeZone": "America/Los_Angeles" }, "body": "master: https://github.com/appcelerator/titanium_mobile/pull/12440", "updateAuthor": { "name": "gmathews", "key": "gmathews", "displayName": "Gary Mathews", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2021-02-04T16:04:21.000+0000", "updated": "2021-02-04T16:04:21.000+0000" }, { "id": "458394", "author": { "name": "smohammed", "key": "smohammed", "displayName": "Samir Mohammed", "active": true, "timeZone": "America/Los_Angeles" }, "body": "FR Passed, waiting on Jenkins build.", "updateAuthor": { "name": "smohammed", "key": "smohammed", "displayName": "Samir Mohammed", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2021-03-12T15:04:32.000+0000", "updated": "2021-03-12T15:04:32.000+0000" }, { "id": "458402", "author": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "body": "merged to master, cherry-picked to 10_0_X for 10.0.0 target", "updateAuthor": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "created": "2021-03-12T19:43:15.000+0000", "updated": "2021-03-12T19:43:15.000+0000" } ], "maxResults": 6, "total": 6, "startAt": 0 } } }