{ "id": "91836", "key": "TIMOB-9132", "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": "15274", "description": "2013 Sprint 06 API", "name": "2013 Sprint 06 API", "archived": true, "released": true, "releaseDate": "2013-03-25" }, { "id": "14816", "description": "2013 Sprint 06", "name": "2013 Sprint 06", "archived": true, "released": true, "releaseDate": "2013-03-25" }, { "id": "15412", "name": "Co-3.1.0", "archived": true, "released": true, "releaseDate": "2013-04-16" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2013-03-21T22:28:20.000+0000", "created": "2012-05-14T20:09:53.000+0000", "priority": { "name": "Medium", "id": "3" }, "labels": [ "SupportTeam", "api", "module_googlemapv2", "qe-testadded" ], "versions": [ { "id": "12593", "name": "Release 2.0.0", "archived": false, "released": true, "releaseDate": "2012-03-30" } ], "issuelinks": [ { "id": "19735", "type": { "id": "10000", "name": "Blocks", "inward": "is blocked by", "outward": "blocks" }, "outwardIssue": { "id": "98539", "key": "TIMOB-10289", "fields": { "summary": "Android: Unlike iOS, clicking on map outside the annotation does not deselect the annotation", "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": "18112", "type": { "id": "10003", "name": "Relates", "inward": "relates to", "outward": "relates to" }, "outwardIssue": { "id": "94060", "key": "TIMOB-9833", "fields": { "summary": "TiAPI: Map.View zoomEnabled property", "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" } }, "priority": { "name": "Low", "id": "4" }, "issuetype": { "id": "2", "description": "A new feature of the product, which has yet to be developed.", "name": "New Feature", "subtask": false } } } } ], "assignee": { "name": "pwang", "key": "pwang", "displayName": "Ping Wang", "active": true, "timeZone": "America/Los_Angeles" }, "updated": "2013-03-27T21:01:17.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": "It has been requested to add a new feature to Android Mapview that would allow the modification of zoom controls such as changing the position, hide/show the zoom control, set the size of the control.\r\n\r\nAccording to the Android Developer doc: \r\n\r\nhttp://developer.android.com/reference/android/widget/ZoomButtonsController.html\r\n\r\nThe ZoomButtonController class has this functionality.\r\n", "attachment": [], "flagged": false, "summary": "Android: Maps V2 Module - Feature to allow modifications to the android mapview zoom buttons", "creator": { "name": "vjoshi", "key": "vjoshi", "displayName": "Varun Joshi", "active": true, "timeZone": "America/New_York" }, "subtasks": [], "reporter": { "name": "vjoshi", "key": "vjoshi", "displayName": "Varun Joshi", "active": true, "timeZone": "America/New_York" }, "environment": "Titanium SDK: 2.0.1GA2\r\nPlatform OS: Android", "comment": { "comments": [ { "id": "200778", "author": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "body": "We cannot modify the built-in zoom controls on the MapView in Android. We could control\r\nif the built-in controls are enabled/disabled. This does appear to be exposed as a \"zoomEnabled\" boolean\r\nproperty on Map.View. This should be documented and implemented on other platforms if possible.", "updateAuthor": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-06-28T13:34:59.000+0000", "updated": "2012-06-28T13:34:59.000+0000" }, { "id": "200782", "author": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Created TIMOB-9833 to document the \"zoomEnabled\" property and investigate supporting it on other platforms.", "updateAuthor": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-06-28T13:41:53.000+0000", "updated": "2012-06-28T13:41:53.000+0000" }, { "id": "200797", "author": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "body": "You can hide the built-in controls and add your own to the map view. There is an API for getting the ZoomControls, but\r\nit has been deprecated and something we should not depend on existing in the future.", "updateAuthor": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-06-28T14:15:07.000+0000", "updated": "2012-06-28T14:15:07.000+0000" }, { "id": "207876", "author": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "body": "You could just place the zoom controls view absolutely on top of the Map View so that may you don't end up filling up the entire area\r\nand blocking touch events.", "updateAuthor": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-07-16T15:57:33.000+0000", "updated": "2012-07-16T15:57:33.000+0000" }, { "id": "208123", "author": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "body": "displayZoomControls() only makes the controls visible (just like touching the map does). It can't hide them from the user.\r\nThe boolean just controls if they should take focus when they become visible.", "updateAuthor": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-07-17T11:50:23.000+0000", "updated": "2012-07-17T11:50:23.000+0000" }, { "id": "208137", "author": { "name": "vjoshi", "key": "vjoshi", "displayName": "Varun Joshi", "active": true, "timeZone": "America/New_York" }, "body": "Ok, just wanted to understand this issue. So can we not use both the zoomEnabled property (to hide the buttons) and the setDisplayZoomControls (to have pinch zoom also available)?\r\n\r\n ", "updateAuthor": { "name": "vjoshi", "key": "vjoshi", "displayName": "Varun Joshi", "active": true, "timeZone": "America/New_York" }, "created": "2012-07-17T12:12:07.000+0000", "updated": "2012-07-17T12:12:07.000+0000" }, { "id": "210182", "author": { "name": "ngupta", "key": "ngupta", "displayName": "Neeraj Gupta", "active": true, "timeZone": "America/Los_Angeles" }, "body": "@Varun - Please do not add \"merge\" labels to the tickets directly. You need to coordinate with Shak for getting these fixes ported in after they are fixed.", "updateAuthor": { "name": "ngupta", "key": "ngupta", "displayName": "Neeraj Gupta", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-07-27T08:51:35.000+0000", "updated": "2012-07-27T08:51:35.000+0000" }, { "id": "215521", "author": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "body": "To provide finer control over the zoom controls we will be\r\ndisabling the \"built-in\" version and implement our own. We have to do this\r\nsince accessing or modifying the built-in controls has been deprecated.\r\n\r\nA proposal for the API changes required will be drafted\r\nbefore implementation work begins. Once that is approved we will move forward.", "updateAuthor": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-08-21T20:11:09.000+0000", "updated": "2012-08-21T20:11:09.000+0000" }, { "id": "215523", "author": { "name": "ngupta", "key": "ngupta", "displayName": "Neeraj Gupta", "active": true, "timeZone": "America/Los_Angeles" }, "body": "We do not have the bandwidth to implement this feature for 2.2.0 release. Most of our developers are happy with the default behavior anyway. We can consider this feature post 2.2.0 release.", "updateAuthor": { "name": "ngupta", "key": "ngupta", "displayName": "Neeraj Gupta", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-08-21T20:19:52.000+0000", "updated": "2012-08-21T20:19:52.000+0000" }, { "id": "242816", "author": { "name": "pwang", "key": "pwang", "displayName": "Ping Wang", "active": true, "timeZone": "America/Los_Angeles" }, "body": "In the [Google Maps Android API v2|https://developers.google.com/maps/documentation/android/interactivity#zoom_controls], the only exposed API about built-in zoom controls is to enable/disable the built-in zoom controls. It does not allow any modification to the built-in zoom controls. Therefore, we will expose the \"enableZoomControls\" property to enable/disable zoom controls.\r\nPR: https://github.com/appcelerator/titanium_modules/pull/92\r\nTest case:\r\n{code}\r\nvar MapModule = require('ti.map');\r\n\r\nvar win = Ti.UI.createWindow({fullscreen: false, layout: \"vertical\"});\r\nvar myView1 = Ti.UI.createView({\r\n width:Ti.UI.SIZE,\r\n height:Ti.UI.SIZE,\r\n backgroundColor:'red'\r\n});\r\n \r\nvar label = Ti.UI.createLabel({\r\n text:\" $400K \",\r\n font:{fontSize:18, fontWeight:\"bold\", fontStyle:\"italic\"}\r\n});\r\n\r\nmyView1.add(label);\r\n\r\nvar anno = MapModule.createAnnotation({latitude: -33.87365, customView: myView1, image: \"images/applogo.png\", longitude: 151.20689, title: \"Drag Me\", subtitle: \"Sydney is quite chill\", draggable: true});\r\nvar anno2 = MapModule.createAnnotation({latitude: -33.86365, image: \"images/applogo.png\", longitude: 151.21689, title: \"Drag Me 2\", subtitle: \"This is anno2\", draggable: true});\r\nvar anno3 = MapModule.createAnnotation({latitude: -33.85365, pincolor: MapModule.ANNOTATION_BLUE, longitude: 151.20689, title: \"anno3\", subtitle: \"This is anno3\", draggable: false});\r\n\r\nvar map = MapModule.createView({\r\n\tenableZoomControls: false,\r\n\t//userLocation: false,\r\n\tmapType: MapModule.NORMAL_TYPE,\r\n\tanimate: true,\r\n\tannotations: [anno, anno2, anno3],\r\n\tregion: {latitude: -33.87365, longitude: 151.20689, latitudeDelta: 0.1, longitudeDelta: 0.1 }, //Sydney\r\n\ttop: '30%'\r\n});\r\n\r\nmap.addEventListener('pinchangedragstate', function(e) {\r\n\tTi.API.info(e.title + \": newState=\" + e.newState + \", lat=\" + e.annotation.latitude + \", lon=\" + e.annotation.longitude);\r\n});\r\n\r\nmap.addEventListener('click', function(e) {\r\n\tTi.API.info(e.title + \": lat=\" + e.annotation.latitude + \", lon=\" + e.annotation.longitude);\r\n});\r\n\r\nvar b1 = Ti.UI.createButton({\r\n\ttitle: \"Toggle draggable for anno3\"\r\n});\r\nb1.addEventListener('click', function(){\r\n\tanno3.draggable = !anno3.draggable;\r\n\tTi.API.info(\"anno3.draggable = \" + anno3.draggable);\r\n});\r\n\r\nvar b2 = Ti.UI.createButton({\r\n\ttitle: \"Toggle enableZoomControls for map\"\r\n});\r\nb2.addEventListener('click', function(){\r\n\tmap.enableZoomControls = !map.enableZoomControls;\r\n\tTi.API.info(\"map.enableZoomControls = \" + map.enableZoomControls);\r\n});\r\n\r\nwin.add(b1);\r\nwin.add(b2);\r\nwin.add(map);\r\nwin.open();\r\n{code}", "updateAuthor": { "name": "pwang", "key": "pwang", "displayName": "Ping Wang", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2013-03-19T00:19:05.000+0000", "updated": "2013-03-21T20:51:20.000+0000" } ], "maxResults": 21, "total": 21, "startAt": 0 } } }