X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=security%2Fplugins%2Forg.argeo.security.ui.rap%2Fsrc%2Fmain%2Fjava%2Forg%2Fargeo%2Fsecurity%2Fui%2Frap%2FRapWindowAdvisor.java;fp=security%2Fplugins%2Forg.argeo.security.ui.rap%2Fsrc%2Fmain%2Fjava%2Forg%2Fargeo%2Fsecurity%2Fui%2Frap%2FRapWindowAdvisor.java;h=4808152797cf44d90eff36d9e28586b02209c5e6;hb=f15ad387c1cb2d6db9c560e7d734a47829c91422;hp=1f5d5679248ca3a0a060354568f98dad7784f3c3;hpb=43a37db2fc22026ab9549ce2112588a920f514f8;p=lgpl%2Fargeo-commons.git diff --git a/security/plugins/org.argeo.security.ui.rap/src/main/java/org/argeo/security/ui/rap/RapWindowAdvisor.java b/security/plugins/org.argeo.security.ui.rap/src/main/java/org/argeo/security/ui/rap/RapWindowAdvisor.java index 1f5d56792..480815279 100644 --- a/security/plugins/org.argeo.security.ui.rap/src/main/java/org/argeo/security/ui/rap/RapWindowAdvisor.java +++ b/security/plugins/org.argeo.security.ui.rap/src/main/java/org/argeo/security/ui/rap/RapWindowAdvisor.java @@ -16,10 +16,12 @@ package org.argeo.security.ui.rap; import org.eclipse.swt.SWT; -import org.eclipse.swt.widgets.Shell; import org.eclipse.swt.graphics.Point; import org.eclipse.swt.graphics.Rectangle; import org.eclipse.swt.widgets.Display; +import org.eclipse.swt.widgets.Event; +import org.eclipse.swt.widgets.Listener; +import org.eclipse.swt.widgets.Shell; import org.eclipse.ui.IWorkbenchWindow; import org.eclipse.ui.actions.ActionFactory; import org.eclipse.ui.actions.ActionFactory.IWorkbenchAction; @@ -27,6 +29,7 @@ import org.eclipse.ui.application.ActionBarAdvisor; import org.eclipse.ui.application.IActionBarConfigurer; import org.eclipse.ui.application.IWorkbenchWindowConfigurer; import org.eclipse.ui.application.WorkbenchWindowAdvisor; +import org.eclipse.ui.internal.UIPlugin; /** Eclipse RAP specific window advisor */ public class RapWindowAdvisor extends WorkbenchWindowAdvisor { @@ -52,11 +55,22 @@ public class RapWindowAdvisor extends WorkbenchWindowAdvisor { configurer.setShowStatusLine(false); configurer.setShowPerspectiveBar(true); configurer.setTitle("Argeo Web UI"); //$NON-NLS-1$ - // Full screen, see + // Full screen, see // http://wiki.eclipse.org/RAP/FAQ#How_to_create_a_fullscreen_application configurer.setShellStyle(SWT.NO_TRIM); Rectangle bounds = Display.getCurrent().getBounds(); configurer.setInitialSize(new Point(bounds.width, bounds.height)); + + // Handle window resize in Rap 2.1+ see https://bugs.eclipse.org/bugs/show_bug.cgi?id=417254 + Display.getCurrent().addListener(SWT.Resize, new Listener() { + @Override + public void handleEvent(Event event) { + Rectangle bounds = event.display.getBounds(); + IWorkbenchWindow iww = UIPlugin.getDefault().getWorkbench() + .getActiveWorkbenchWindow(); + iww.getShell().setBounds(bounds); + } + }); } @Override