Download
Getting Started
Members
Projects
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
More
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
Toggle navigation
Bugzilla – Attachment 182363 Details for
Bug 74073
Make IWorkbenchConfigurer#setExitOnLastWindowClose(boolean) work
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
Log In
[x]
|
Terms of Use
|
Copyright Agent
[patch]
Tests
WindowlessApplication.tests.txt (text/plain), 8.26 KB, created by
Prakash Rangaraj
on 2010-11-04 07:48:14 EDT
(
hide
)
Description:
Tests
Filename:
MIME Type:
Creator:
Prakash Rangaraj
Created:
2010-11-04 07:48:14 EDT
Size:
8.26 KB
patch
obsolete
>### Eclipse Workspace Patch 1.0 >#P org.eclipse.ui.tests >Index: Eclipse JFace Tests/org/eclipse/ui/tests/RCPSessionApplication.java >=================================================================== >RCS file: /cvsroot/eclipse/org.eclipse.ui.tests/Eclipse JFace Tests/org/eclipse/ui/tests/RCPSessionApplication.java,v >retrieving revision 1.1 >diff -u -r1.1 RCPSessionApplication.java >--- Eclipse JFace Tests/org/eclipse/ui/tests/RCPSessionApplication.java 23 Apr 2009 16:15:29 -0000 1.1 >+++ Eclipse JFace Tests/org/eclipse/ui/tests/RCPSessionApplication.java 4 Nov 2010 11:47:02 -0000 >@@ -1,5 +1,5 @@ > /******************************************************************************* >- * Copyright (c) 2008, 2009 IBM Corporation and others. >+ * Copyright (c) 2008, 2010 IBM Corporation and others. > * All rights reserved. This program and the accompanying materials > * are made available under the terms of the Eclipse Public License v1.0 > * which accompanies this distribution, and is available at >@@ -19,10 +19,12 @@ > > public class RCPSessionApplication implements IApplication { > >+ private boolean windowlessApp = false; >+ > public Object start(IApplicationContext context) throws Exception { > Display display = PlatformUI.createDisplay(); > try { >- PlatformUI.createAndRunWorkbench(display, new RCPTestWorkbenchAdvisor()); >+ PlatformUI.createAndRunWorkbench(display, new RCPTestWorkbenchAdvisor(windowlessApp)); > } finally { > if (display != null) > display.dispose(); >@@ -42,4 +44,12 @@ > } > }); > } >+ >+ /** >+ * @param windowlessApp The windowlessApp to set. >+ */ >+ public void setWindowlessApp(boolean windowlessApp) { >+ this.windowlessApp = windowlessApp; >+ } >+ > } >\ No newline at end of file >Index: Eclipse JFace Tests/org/eclipse/ui/tests/WindowlessRCPApplication.java >=================================================================== >RCS file: Eclipse JFace Tests/org/eclipse/ui/tests/WindowlessRCPApplication.java >diff -N Eclipse JFace Tests/org/eclipse/ui/tests/WindowlessRCPApplication.java >--- /dev/null 1 Jan 1970 00:00:00 -0000 >+++ Eclipse JFace Tests/org/eclipse/ui/tests/WindowlessRCPApplication.java 1 Jan 1970 00:00:00 -0000 >@@ -0,0 +1,20 @@ >+/******************************************************************************* >+ * Copyright (c) 2010 IBM Corporation and others. >+ * All rights reserved. This program and the accompanying materials >+ * are made available under the terms of the Eclipse Public License v1.0 >+ * which accompanies this distribution, and is available at >+ * http://www.eclipse.org/legal/epl-v10.html >+ * >+ * Contributors: >+ * IBM Corporation - initial API and implementation >+ *******************************************************************************/ >+package org.eclipse.ui.tests; >+ >+ >+public class WindowlessRCPApplication extends RCPSessionApplication { >+ >+ public WindowlessRCPApplication() { >+ setWindowlessApp(true); >+ } >+ >+} >\ No newline at end of file >Index: Eclipse UI Tests/org/eclipse/ui/tests/session/SessionTests.java >=================================================================== >RCS file: /cvsroot/eclipse/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/session/SessionTests.java,v >retrieving revision 1.22 >diff -u -r1.22 SessionTests.java >--- Eclipse UI Tests/org/eclipse/ui/tests/session/SessionTests.java 23 Apr 2009 16:15:29 -0000 1.22 >+++ Eclipse UI Tests/org/eclipse/ui/tests/session/SessionTests.java 4 Nov 2010 11:47:05 -0000 >@@ -17,6 +17,7 @@ > import junit.framework.Test; > import junit.framework.TestSuite; > >+import org.eclipse.jface.util.Util; > import org.eclipse.ui.tests.harness.util.TweakletCheckTest; > import org.eclipse.ui.tests.markers.MarkersViewColumnSizeTest; > import org.eclipse.ui.tests.statushandlers.StatusHandlerConfigurationSuite; >@@ -46,6 +47,20 @@ > addThemeTests(); > addStatusHandlingTests(); > addRestoredSessionTest(); >+ addWindowlessSessionTest(); >+ } >+ >+ /** >+ * >+ */ >+ private void addWindowlessSessionTest() { >+ // Windowless apps are available only on Cocoa >+ if(Util.isCocoa()) { >+ Map arguments = new HashMap(2); >+ arguments.put("product", null); >+ arguments.put("testApplication", "org.eclipse.ui.tests.windowLessRcpApplication"); >+ addTest(new WorkbenchSessionTest("windowlessSessionTests",WindowlessSessionTest.class, arguments)); >+ } > } > > /** >Index: Eclipse UI Tests/org/eclipse/ui/tests/session/WindowlessSessionTest.java >=================================================================== >RCS file: Eclipse UI Tests/org/eclipse/ui/tests/session/WindowlessSessionTest.java >diff -N Eclipse UI Tests/org/eclipse/ui/tests/session/WindowlessSessionTest.java >--- /dev/null 1 Jan 1970 00:00:00 -0000 >+++ Eclipse UI Tests/org/eclipse/ui/tests/session/WindowlessSessionTest.java 1 Jan 1970 00:00:00 -0000 >@@ -0,0 +1,42 @@ >+/******************************************************************************* >+ >+ * Copyright (c) 2010 IBM Corporation and others. >+ * All rights reserved. This program and the accompanying materials >+ * are made available under the terms of the Eclipse Public License v1.0 >+ * which accompanies this distribution, and is available at >+ * http://www.eclipse.org/legal/epl-v10.html >+ * >+ * Contributors: >+ * IBM Corporation - initial API and implementation >+ ******************************************************************************/ >+package org.eclipse.ui.tests.session; >+ >+import org.eclipse.ui.tests.harness.util.UITestCase; >+ >+ >+/** >+ * @since 3.7 >+ */ >+public class WindowlessSessionTest extends UITestCase { >+ >+ public WindowlessSessionTest(String name) { >+ super(name); >+ } >+ >+ public void testWindowlessWorkbench() throws Exception { >+ >+ // There should not be any windows in this app >+ assertTrue(fWorkbench.getWorkbenchWindowCount() == 0); >+ >+// // Now open a window >+// IWorkbenchWindow window = fWorkbench.openWorkbenchWindow(null); >+// >+// // window count should be 1 >+// assertTrue(fWorkbench.getWorkbenchWindowCount() == 1); >+// >+// window.close(); >+// >+// // now the workbench should stay without a window >+// assertTrue(fWorkbench.getWorkbenchWindowCount() == 0); >+ } >+} >Index: plugin.xml >=================================================================== >RCS file: /cvsroot/eclipse/org.eclipse.ui.tests/plugin.xml,v >retrieving revision 1.289 >diff -u -r1.289 plugin.xml >--- plugin.xml 12 Apr 2010 14:56:44 -0000 1.289 >+++ plugin.xml 4 Nov 2010 11:47:10 -0000 >@@ -4295,4 +4295,16 @@ > <run class="org.eclipse.ui.tests.RCPSessionApplication"> </run> > </application> > </extension> >+ <extension >+ id="windowLessRcpApplication" >+ point="org.eclipse.core.runtime.applications"> >+ <application >+ cardinality="singleton-global" >+ thread="main" >+ visible="true"> >+ <run >+ class="org.eclipse.ui.tests.WindowlessRCPApplication"> >+ </run> >+ </application> >+ </extension> > </plugin> >#P org.eclipse.ui.tests.harness >Index: src/org/eclipse/ui/tests/harness/util/RCPTestWorkbenchAdvisor.java >=================================================================== >RCS file: /cvsroot/eclipse/org.eclipse.ui.tests.harness/src/org/eclipse/ui/tests/harness/util/RCPTestWorkbenchAdvisor.java,v >retrieving revision 1.2 >diff -u -r1.2 RCPTestWorkbenchAdvisor.java >--- src/org/eclipse/ui/tests/harness/util/RCPTestWorkbenchAdvisor.java 25 May 2009 20:52:38 -0000 1.2 >+++ src/org/eclipse/ui/tests/harness/util/RCPTestWorkbenchAdvisor.java 4 Nov 2010 11:47:13 -0000 >@@ -50,6 +50,8 @@ > /** Default value of -1 causes the option to be ignored. */ > private int idleBeforeExit = -1; > >+ private boolean windowlessApp = false; >+ > /** > * Traps whether or not calls to displayAccess in the UI thread resulted in > * an exception. Should be false. >@@ -62,8 +64,15 @@ > this.idleBeforeExit = -1; > } > >- public RCPTestWorkbenchAdvisor(int idleBeforeExit) { >- this.idleBeforeExit = idleBeforeExit; >+ /** >+ * >+ * Enables the RCP application to runwithout a workbench window >+ * >+ * @param runWithoutWindow >+ * >+ */ >+ public RCPTestWorkbenchAdvisor(boolean windowlessApp) { >+ this.windowlessApp = windowlessApp; > } > > /* >@@ -87,6 +96,12 @@ > prefs.setValue(IWorkbenchPreferenceConstants.SHOW_PROGRESS_ON_STARTUP, > false); > prefs.setValue(IWorkbenchPreferenceConstants.SHOW_INTRO, false); >+ >+ if(windowlessApp) { >+ configurer.setSaveAndRestore(true); >+ configurer.setExitOnLastWindowClose(false); >+ } >+ > } > > /*
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 74073
:
180516
|
181986
|
182191
|
182192
|
182363
|
182364
|
185111
|
185292