summaryrefslogtreecommitdiffstats
path: root/bundles/org.eclipse.swt/Eclipse SWT Browser/mozilla/org/eclipse/swt/browser/Browser.java
diff options
context:
space:
mode:
Diffstat (limited to 'bundles/org.eclipse.swt/Eclipse SWT Browser/mozilla/org/eclipse/swt/browser/Browser.java')
-rw-r--r--bundles/org.eclipse.swt/Eclipse SWT Browser/mozilla/org/eclipse/swt/browser/Browser.java8
1 files changed, 8 insertions, 0 deletions
diff --git a/bundles/org.eclipse.swt/Eclipse SWT Browser/mozilla/org/eclipse/swt/browser/Browser.java b/bundles/org.eclipse.swt/Eclipse SWT Browser/mozilla/org/eclipse/swt/browser/Browser.java
index 58edfc8826..5294c631d2 100644
--- a/bundles/org.eclipse.swt/Eclipse SWT Browser/mozilla/org/eclipse/swt/browser/Browser.java
+++ b/bundles/org.eclipse.swt/Eclipse SWT Browser/mozilla/org/eclipse/swt/browser/Browser.java
@@ -53,6 +53,8 @@ public class Browser extends Composite {
int refCount = 0;
int request;
String html;
+ Point location;
+ Point size;
/* External Listener management */
CloseWindowListener[] closeWindowListeners = new CloseWindowListener[0];
@@ -1564,6 +1566,7 @@ int DestroyBrowserWindow() {
}
int SizeBrowserTo(int aCX, int aCY) {
+ size = new Point(aCX, aCY);
return XPCOM.NS_OK;
}
@@ -1584,6 +1587,7 @@ int ExitModalEventLoop(int aStatus) {
/* nsIEmbeddingSiteWindow */
int SetDimensions(int flags, int x, int y, int cx, int cy) {
+ if (flags == nsIEmbeddingSiteWindow.DIM_FLAGS_POSITION) location = new Point(x, y);
return XPCOM.NS_OK;
}
@@ -1604,8 +1608,12 @@ int SetVisibility(int value) {
event.display = getDisplay();
event.widget = this;
if (value == 1) {
+ event.location = location;
+ event.size = size;
for (int i = 0; i < visibilityListeners.length; i++)
visibilityListeners[i].show(event);
+ location = null;
+ size = null;
} else {
for (int i = 0; i < visibilityListeners.length; i++)
visibilityListeners[i].hide(event);