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;h=4808152797cf44d90eff36d9e28586b02209c5e6;hb=f15ad387c1cb2d6db9c560e7d734a47829c91422;hp=36ee2786300d2c5511732809b889aa033528ec58;hpb=041234a54c1b98bcba16e359c4c4905c4eed1768;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 36ee27863..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 @@ -1,9 +1,27 @@ +/* + * Copyright (C) 2007-2012 Argeo GmbH + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package org.argeo.security.ui.rap; import org.eclipse.swt.SWT; 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; @@ -11,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 { @@ -35,12 +54,29 @@ public class RapWindowAdvisor extends WorkbenchWindowAdvisor { configurer.setShowMenuBar(false); configurer.setShowStatusLine(false); configurer.setShowPerspectiveBar(true); - configurer.setTitle("Argeo Secure UI"); //$NON-NLS-1$ + configurer.setTitle("Argeo Web UI"); //$NON-NLS-1$ // Full screen, see - // http://dev.eclipse.org/newslists/news.eclipse.technology.rap/msg02697.html - configurer.setShellStyle(SWT.NONE); + // 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 + public void postWindowCreate() { + Shell shell = getWindowConfigurer().getWindow().getShell(); + shell.setMaximized(true); } @Override