{ "id": "63842", "key": "TIMOB-3210", "fields": { "issuetype": { "id": "2", "description": "A new feature of the product, which has yet to be developed.", "name": "New Feature", "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": "11244", "name": "Release 1.7.0", "archived": true, "released": true, "releaseDate": "2011-06-13" }, { "id": "11245", "name": "Sprint 2011-10", "archived": true, "released": true, "releaseDate": "2011-03-14" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2011-04-17T02:01:11.000+0000", "created": "2011-04-15T03:39:32.000+0000", "priority": { "name": "Medium", "id": "3" }, "labels": [ "feature", "ios", "ipad", "klist", "popover", "release-1.7.0", "rplist" ], "versions": [], "issuelinks": [], "assignee": { "name": "rpfeiffer", "key": "rpfeiffer", "displayName": "Ralf Pfeiffer", "active": true, "timeZone": "America/Los_Angeles" }, "updated": "2011-04-17T02:01:11.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": "{html}

There is a passThroughViews property in the Apple documentation\nthat allows the developer to pass a view / UI object that can be\ninteracted with with a popover open. \nhttp://developer.apple.com/library/ios/#documentation/uikit/referen...

\n

Specifically: \"When a popover is active, interactions with other\nviews are normally disabled until the popover is dismissed.\nAssigning an array of views to this property allows taps outside of\nthe popover to be handled by the corresponding views.\"

{html}", "attachment": [], "flagged": false, "summary": "iPad: Popover PassThroughViews property exposure", "creator": { "name": "rblalock", "key": "rblalock", "displayName": "Rick Blalock", "active": false, "timeZone": "America/Havana" }, "subtasks": [], "reporter": { "name": "rblalock", "key": "rblalock", "displayName": "Rick Blalock", "active": false, "timeZone": "America/Havana" }, "environment": null, "comment": { "comments": [ { "id": "130296", "author": { "name": "stephentramer", "key": "stephentramer", "displayName": "Stephen Tramer", "active": true, "timeZone": "America/Los_Angeles" }, "body": "{html}

Test app code (also checked in to bugtests):

\n
\nvar win = Ti.UI.createWindow({backgroundColor:'white'});\n\nvar view1 = Ti.UI.createView({\n    right:10,\n    top:300,\n    width:150,\n    height:150,\n    backgroundColor:'green'\n});\nview1.addEventListener('click', function(e) {\n    Ti.UI.createAlertDialog({\n        title:\"Popover interaction\",\n        message:\"You can interact with me while the popover is open!\"\n    }).show();\n});\nvar label1 = Ti.UI.createLabel({\n    width:'auto',\n    height:'auto',\n    text:\"Interaction allowed\"\n});\nview1.add(label1);\n\nvar view2 = Ti.UI.createView({\n    right:10,\n    top:450,\n    width:150,\n    height:150,\n    backgroundColor:'red'\n});\nview2.addEventListener('click', function(e) {\n    Ti.UI.createAlertDialog({\n        title:\"No popover interaction\",\n        message:\"You can't interact with me while the popover is open!\"\n    }).show();\n});\nvar label2 = Ti.UI.createLabel({\n    width:'auto',\n    height:'auto',\n    text:\"Interaction disallowed\"\n});\nview2.add(label2);\n\nvar button = Ti.UI.createButton({\n    title:\"Display popover\",\n    width:200,\n    height:60,\n    left:100\n});\nbutton.addEventListener('click', function() {\n    var popover = Ti.UI.iPad.createPopover({\n        width:200,\n        height:300,\n        title:\"POP'N OVER\"\n    });\n    \n    popover.setPassthroughViews([view1]);\n    \n    var dismiss = Ti.UI.createButton({\n        title:\"Dismiss\",\n        width:160,\n        height:60\n    });\n    dismiss.addEventListener('click', function(e) {\n        popover.hide({animated:true});\n    });\n    popover.add(dismiss);\n    \n    popover.show({\n        view:button,\n        animated:true\n    });\n});\n\nwin.add(view1);\nwin.add(view2);\nwin.add(button);\nwin.open();\n
{html}", "updateAuthor": { "name": "stephentramer", "key": "stephentramer", "displayName": "Stephen Tramer", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2011-04-15T03:39:33.000+0000", "updated": "2011-04-15T03:39:33.000+0000" }, { "id": "130297", "author": { "name": "jhaynie", "key": "jhaynie", "displayName": "Jeff Haynie", "active": false, "timeZone": "America/Los_Angeles" }, "body": "{html}

(from [dd37db351d2f71afc280536e8909496fb261f4be])\n[#3210 state:fixed-in-qa] Addition of\nsetPassthroughViews() function to popover. \nhttps://github.com/appcelerator/titanium_mobile/commit/dd37db351d2f...

{html}", "updateAuthor": { "name": "jhaynie", "key": "jhaynie", "displayName": "Jeff Haynie", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2011-04-15T03:39:33.000+0000", "updated": "2011-04-15T03:39:33.000+0000" }, { "id": "130298", "author": { "name": "rblalock", "key": "rblalock", "displayName": "Rick Blalock", "active": false, "timeZone": "America/Havana" }, "body": "{html}

Tested in two use case scenarios and works.

{html}", "updateAuthor": { "name": "rblalock", "key": "rblalock", "displayName": "Rick Blalock", "active": false, "timeZone": "America/Havana" }, "created": "2011-04-15T03:39:33.000+0000", "updated": "2011-04-15T03:39:33.000+0000" }, { "id": "130299", "author": { "name": "nhuynh", "key": "nhuynh", "displayName": "Natalie Huynh", "active": true, "timeZone": "America/Los_Angeles" }, "body": "{html}

Tested with Titanium SDK version: 1.7.0 (03/08/11 09:53 1df642e)\non
\niPad 3.2

{html}", "updateAuthor": { "name": "nhuynh", "key": "nhuynh", "displayName": "Natalie Huynh", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2011-04-15T03:39:34.000+0000", "updated": "2011-04-15T03:39:34.000+0000" } ], "maxResults": 4, "total": 4, "startAt": 0 } } }