I posted this on StackOverflow here <http://stackoverflow.com/questions/27847411/datagrid-inside-infowindow-doesnt-show-table-data>, but nobody is biting, so I'm cross-posting here.
I'm using GWT along with the GoogleMaps GWT API (v3.8 <https://code.google.com/p/gwt-google-apis/downloads/list>, and no, I can't use the branflakes GoogleMaps API). I'm trying to put a DataGrid table inside an InfoWindow on the map. I have the DataGrid working fine as long as I display it outside the map, but whenever I add a DataGrid inside an InfoWindow, none of the table rows show up: <http://i.stack.imgur.com/JmU9z.png> If I right-click the InfoWindow, go to "inspect element", then trudge through the million divs that GWT creates, I can see that the data is there- it's just not visible for some reason. I've done quite a bit of googling, but all I've seen is that a DataGrid has to be a child of a LayoutPanel or ScrollPanel. But that's exactly what I'm doing: package com.test.client; import java.util.Arrays; import com.google.gwt.ajaxloader.client.AjaxLoader;import com.google.gwt.ajaxloader.client.AjaxLoader.AjaxLoaderOptions;import com.google.gwt.cell.client.TextCell;import com.google.gwt.core.client.EntryPoint;import com.google.gwt.dom.client.Document;import com.google.gwt.user.cellview.client.Column;import com.google.gwt.user.cellview.client.DataGrid;import com.google.gwt.user.client.ui.RootPanel;import com.google.gwt.user.client.ui.ScrollPanel;import com.google.maps.gwt.client.GoogleMap;import com.google.maps.gwt.client.InfoWindow;import com.google.maps.gwt.client.InfoWindowOptions;import com.google.maps.gwt.client.LatLng;import com.google.maps.gwt.client.MapOptions;import com.google.maps.gwt.client.MapTypeId; public class GwtTest implements EntryPoint { @Override public void onModuleLoad() { AjaxLoaderOptions options = AjaxLoaderOptions.newInstance(); options.setOtherParms("sensor=false"); Runnable callback = new Runnable() { public void run() { createMap(); } }; AjaxLoader.loadApi("maps", "3", callback, options); //this works DataGrid dg = createTable(); RootPanel.get("tableDiv").add(new ScrollPanel(dg)); } public void createMap() { MapOptions mapOpts = MapOptions.create(); mapOpts.setZoom(4); mapOpts.setCenter(LatLng.create(37.09024, -95.712891)); mapOpts.setMapTypeId(MapTypeId.TERRAIN); mapOpts.setStreetViewControl(false); GoogleMap map = GoogleMap.create(Document.get().getElementById("map_canvas"), mapOpts); DataGrid dg = createTable(); InfoWindowOptions iwo = InfoWindowOptions.create(); iwo.setPosition(LatLng.create(37.09024, -95.712891)); iwo.setContent(new ScrollPanel(dg).getElement()); InfoWindow infoWindow = InfoWindow.create(iwo); infoWindow.open(map); } public DataGrid createTable(){ Column columnA = new Column(new TextCell()){ public Object getValue(Object object) { return "one"; } }; Column columnB = new Column(new TextCell()){ public Object getValue(Object object) { return "two"; } }; Column columnC = new Column(new TextCell()){ public Object getValue(Object object) { return "three"; } }; DataGrid dataGrid = new DataGrid(); dataGrid.addColumn(columnA, "A"); dataGrid.addColumn(columnB, "B"); dataGrid.addColumn(columnC, "C"); dataGrid.setRowCount(1); dataGrid.setRowData(Arrays.asList("one", "two", "three")); dataGrid.setWidth("200px"); dataGrid.setHeight("100px"); return dataGrid; }} Is there some step I'm missing? How can I get a DataGrid to properly display inside an InfoWindow using the GoogleMaps API? -- You received this message because you are subscribed to the Google Groups "Google Web Toolkit" group. To unsubscribe from this group and stop receiving emails from it, send an email to google-web-toolkit+unsubscr...@googlegroups.com. To post to this group, send email to google-web-toolkit@googlegroups.com. Visit this group at http://groups.google.com/group/google-web-toolkit. For more options, visit https://groups.google.com/d/optout.