[eclipse/eclipse-luna] Backport patch to make workspace selection dialog visible in the task manager

Mat Booth mbooth at fedoraproject.org
Wed Nov 12 14:24:32 UTC 2014


commit f11858d8c46b1441f28ba87fdf7298e8f73408e2
Author: Mat Booth <mat.booth at redhat.com>
Date:   Wed Nov 12 13:25:20 2014 +0000

    Backport patch to make workspace selection dialog visible in the task manager
    
    - Tidy up SWT symlinks

 eclipse-workspace-chooser.patch |   28 ++++++++++++++++++++++++++++
 eclipse.spec                    |   37 ++++++++++++++++++++-----------------
 2 files changed, 48 insertions(+), 17 deletions(-)
---
diff --git a/eclipse-workspace-chooser.patch b/eclipse-workspace-chooser.patch
new file mode 100644
index 0000000..f8dd1a7
--- /dev/null
+++ b/eclipse-workspace-chooser.patch
@@ -0,0 +1,28 @@
+From ba6d6b9708a06fa267240471407c239d02484821 Mon Sep 17 00:00:00 2001
+From: Timo Kinnunen
+Date: Fri, 7 Nov 2014 15:28:21 +0100
+Subject: Fixed bug 429308: Make workspace selection dialog visible in the task
+ manager of the OS
+
+Signed-off-by: Timo Kinnunen <timo.kinnunen at gmail.com>
+diff --git a/eclipse.platform.ui/bundles/org.eclipse.ui.ide.application/src/org/eclipse/ui/internal/ide/application/IDEApplication.java b/bundles/org.eclipse.ui.ide.application/src/org/eclipse/ui/internal/ide/application/IDEApplication.java
+index 4797d2d..d88f57f 100644
+--- a/eclipse.platform.ui/bundles/org.eclipse.ui.ide.application/src/org/eclipse/ui/internal/ide/application/IDEApplication.java
++++ b/eclipse.platform.ui/bundles/org.eclipse.ui.ide.application/src/org/eclipse/ui/internal/ide/application/IDEApplication.java
+@@ -314,7 +314,12 @@ public class IDEApplication implements IApplication, IExecutableExtension {
+         URL url = null;
+         do {
+         	// okay to use the shell now - this is the splash shell
+-            new ChooseWorkspaceDialog(shell, launchData, false, true).prompt(force);
++			new ChooseWorkspaceDialog(shell, launchData, false, true) {
++				@Override
++				protected Shell getParentShell() {
++					return null;
++				}
++			}.prompt(force);
+             String instancePath = launchData.getSelection();
+             if (instancePath == null) {
+ 				return null;
+-- 
+cgit v0.10.1-9-gd18e
+
diff --git a/eclipse.spec b/eclipse.spec
index 8ea276c..ac06147 100644
--- a/eclipse.spec
+++ b/eclipse.spec
@@ -39,7 +39,7 @@ Epoch:                  1
 Summary:        An open, extensible IDE
 Name:           %{?scl_prefix}eclipse
 Version:        %{eclipse_version}
-Release:        1%{?dist}.2
+Release:        1%{?dist}.3
 License:        EPL
 Group:          Development/Tools
 URL:            http://www.eclipse.org/
@@ -115,6 +115,9 @@ Patch22:        %{pkg_name}-policy-comparators.patch
 Patch23:        %{pkg_name}-webkit2-support.patch
 Patch24:        %{pkg_name}-bug-444143.patch
 
+# Make workspace selection dialog visible in the task manager of the OS
+Patch25:        eclipse-workspace-chooser.patch
+
 BuildRequires: rsync
 BuildRequires: make, gcc
 BuildRequires: gtk2-devel
@@ -328,6 +331,7 @@ tar --strip-components=1 -xf %{SOURCE1}
 %patch22
 %patch23
 %patch24 -p1
+%patch25 -p1
 
 #Disable as many things as possible to make the build faster. We care only for Eclipse.
 %pom_disable_module platform.sdk eclipse.platform.releng.tychoeclipsebuilder
@@ -576,6 +580,7 @@ popd #eclipse
 
 # Some directories we need
 install -d -m 755 $RPM_BUILD_ROOT%{_sysconfdir}
+install -d -m 755 $RPM_BUILD_ROOT%{_jnidir}
 install -d -m 755 $RPM_BUILD_ROOT%{_javadir}/%{pkg_name}
 install -d -m 755 $RPM_BUILD_ROOT%{_libdir}/%{pkg_name}/buildscripts
 install -d -m 755 $RPM_BUILD_ROOT%{_datadir}/%{pkg_name}/dropins
@@ -629,28 +634,23 @@ install -m 755 jdtcompilatorscript/efj.sh $RPM_BUILD_ROOT%{_bindir}/efj
 TARGET_LAUNCHER=%{_libdir}/%{pkg_name}/plugins/`ls eclipse.platform.releng.tychoeclipsebuilder/platform/target/products/org.eclipse.platform.ide/linux/gtk/%{eclipse_arch}/eclipse/plugins | grep launcher_[0-9]*`
 sed -i -e "s, at LAUNCHER@,${TARGET_LAUNCHER}," $RPM_BUILD_ROOT%{_bindir}/efj
 
-#eclipse binary
+# Symlink eclipse binary
 pushd $RPM_BUILD_ROOT%{_bindir}
     ln -s %{_libdir}/%{pkg_name}/eclipse
 popd 
 
-#SWT is now a folder, but we need to provide jars for others that depend on it.
-pushd $RPM_BUILD_ROOT/%{_libdir}/%{pkg_name}
-pushd plugins
+# SWT is a directory, but we need to provide jars for others that depend on it
+pushd $RPM_BUILD_ROOT/%{_libdir}/%{pkg_name}/plugins
 SWT_JAR=`ls | grep swt.gtk`
-#it's a dir now
-cd ${SWT_JAR}
-#fix privileges
-#zip the contents
-zip -r "../../swt.jar" *
+(cd ${SWT_JAR} && zip -r "../../swt.jar" * )
 popd
-    ln -s  swt.jar swt-gtk.jar
-    mkdir -p ../../lib/java
-    ln -s  %{_libdir}/%{pkg_name}/swt.jar ../../lib/java/swt.jar
+
+# Symlink SWT jar
+pushd $RPM_BUILD_ROOT/%{_jnidir}/
+    ln -s  %{_libdir}/%{pkg_name}/swt.jar
 popd
 
-#eclipse ini
-mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/
+# Symlink eclipse ini
 pushd $RPM_BUILD_ROOT/%{_sysconfdir}/
     ln -s %{_libdir}/%{pkg_name}/eclipse.ini
 popd
@@ -778,9 +778,8 @@ fi
 %{_libdir}/%{pkg_name}/epl-v10.html
 %{_libdir}/%{pkg_name}/plugins/org.eclipse.swt_*
 %{_libdir}/%{pkg_name}/plugins/org.eclipse.swt.gtk.linux.*
-%{_libdir}/%{pkg_name}/swt-gtk*.jar
 %{_libdir}/%{pkg_name}/swt.jar
-%{_libdir}/../lib/java/swt.jar
+%{_jnidir}/swt.jar
 
 %files platform -f .mfiles-platform
 %{_bindir}/%{pkg_name}
@@ -1025,6 +1024,10 @@ fi
 %{_libdir}/%{pkg_name}/plugins/org.eclipse.osgi.compatibility.state_*
 
 %changelog
+* Wed Nov 12 2014 Mat Booth <mat.booth at redhat.com> - 1:4.4.1-1.3
+- Backport patch to make workspace selection dialog visible in the task manager
+- Tidy up SWT symlinks
+
 * Thu Oct 16 2014 Mat Booth <mat.booth at redhat.com> - 1:4.4.1-1.2
 - Rebuild for EMF fixes
 


More information about the scm-commits mailing list