diff --git a/examples/google-v3.html b/examples/google-v3.html
index 0a7db61964..5226b44059 100644
--- a/examples/google-v3.html
+++ b/examples/google-v3.html
@@ -5,7 +5,7 @@
-
+
diff --git a/examples/osm-google.html b/examples/osm-google.html
index 1ebc1780e1..3e3815271f 100644
--- a/examples/osm-google.html
+++ b/examples/osm-google.html
@@ -5,7 +5,7 @@
-
+
diff --git a/lib/OpenLayers/Layer/Google/v3.js b/lib/OpenLayers/Layer/Google/v3.js
index 37cec6e7a7..15d71b5d29 100644
--- a/lib/OpenLayers/Layer/Google/v3.js
+++ b/lib/OpenLayers/Layer/Google/v3.js
@@ -134,6 +134,11 @@ OpenLayers.Layer.Google.v3 = {
var cache = OpenLayers.Layer.Google.cache[this.map.id];
var container = this.map.viewPortDiv;
+
+ // move the Map Data popup to the container, if any
+ while (div.lastChild.style.display == "none") {
+ container.appendChild(div.lastChild);
+ }
// move the ToS and branding stuff up to the container div
var termsOfUse = div.lastChild;
diff --git a/lib/OpenLayers/Renderer/SVG.js b/lib/OpenLayers/Renderer/SVG.js
index aedce27268..995a810298 100644
--- a/lib/OpenLayers/Renderer/SVG.js
+++ b/lib/OpenLayers/Renderer/SVG.js
@@ -329,11 +329,17 @@ OpenLayers.Renderer.SVG = OpenLayers.Class(OpenLayers.Renderer.Elements, {
if ((rotation !== undefined || node._rotation !== undefined) && pos) {
node._rotation = rotation;
rotation |= 0;
- var metrics = this.symbolMetrics[id];
- node.firstChild.setAttributeNS(null, "transform", "rotate("
- + rotation + " "
- + metrics[1] + " "
- + metrics[2] + ")");
+ if (node.nodeName !== "svg") {
+ node.setAttributeNS(null, "transform",
+ "rotate(" + rotation + " " + pos.x + " " +
+ pos.y + ")");
+ } else {
+ var metrics = this.symbolMetrics[id];
+ node.firstChild.setAttributeNS(null, "transform", "rotate("
+ + rotation + " "
+ + metrics[1] + " "
+ + metrics[2] + ")");
+ }
}
}
diff --git a/theme/default/google.css b/theme/default/google.css
index 3c1c1872a1..3ee757c478 100644
--- a/theme/default/google.css
+++ b/theme/default/google.css
@@ -3,8 +3,15 @@
bottom: 2px;
left: auto;
}
+.olLayerGoogleV3.olLayerGoogleCopyright {
+ bottom: 0px;
+ right: 0px !important;
+}
.olLayerGooglePoweredBy {
left: 2px;
bottom: 2px;
}
+.olLayerGoogleV3.olLayerGooglePoweredBy {
+ bottom: 0px !important;
+}
diff --git a/theme/default/style.css b/theme/default/style.css
index 6d5fd24ac1..a6adb3b429 100644
--- a/theme/default/style.css
+++ b/theme/default/style.css
@@ -16,12 +16,18 @@ div.olLayerDiv {
.olLayerGoogleCopyright {
left: 2px;
- bottom: 2px;
+ bottom: 2px;
+}
+.olLayerGoogleV3.olLayerGoogleCopyright {
+ right: auto !important;
}
.olLayerGooglePoweredBy {
left: 2px;
bottom: 15px;
}
+.olLayerGoogleV3.olLayerGooglePoweredBy {
+ bottom: 15px !important;
+}
.olControlAttribution {
font-size: smaller;
right: 3px;