summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gnustep-apps/gworkspace/files/gworkspace-0.9.4-ImageViewerProtocol.patch186
-rw-r--r--gnustep-apps/gworkspace/gworkspace-0.9.4-r1.ebuild44
2 files changed, 230 insertions, 0 deletions
diff --git a/gnustep-apps/gworkspace/files/gworkspace-0.9.4-ImageViewerProtocol.patch b/gnustep-apps/gworkspace/files/gworkspace-0.9.4-ImageViewerProtocol.patch
new file mode 100644
index 000000000000..d2bfd54e60bf
--- /dev/null
+++ b/gnustep-apps/gworkspace/files/gworkspace-0.9.4-ImageViewerProtocol.patch
@@ -0,0 +1,186 @@
+diff -Naur gworkspace-0.9.4.orig/Inspector/ContentViewers/ImageViewer/ImageViewer.h gworkspace-0.9.4/Inspector/ContentViewers/ImageViewer/ImageViewer.h
+--- gworkspace-0.9.4.orig/Inspector/ContentViewers/ImageViewer/ImageViewer.h 2016-06-07 18:13:08.000000000 +0200
++++ gworkspace-0.9.4/Inspector/ContentViewers/ImageViewer/ImageViewer.h 2021-12-06 14:18:12.024085590 +0100
+@@ -1,8 +1,9 @@
+ /* ImageViewer.h
+ *
+- * Copyright (C) 2004-2016 Free Software Foundation, Inc.
++ * Copyright (C) 2004-2020 Free Software Foundation, Inc.
+ *
+- * Author: Enrico Sersale <enrico@imago.ro>
++ * Authors: Enrico Sersale <enrico@imago.ro>
++ * Riccardo Mottola <rm@gnu.org>
+ * Date: January 2004
+ *
+ * This file is part of the GNUstep Inspector application
+@@ -36,6 +37,7 @@
+ @class NSWorkspace;
+ @class ProgressView;
+ @class ImageResizer;
++
+ @protocol ContentInspectorProtocol
+
+ - (void)contentsReadyAt:(NSString *)path;
+@@ -51,7 +53,7 @@
+
+ @end
+
+-@interface ImageViewer : NSView <ContentViewersProtocol>
++@interface ImageViewer : NSView <ContentViewersProtocol, ImageViewerProtocol>
+ {
+ NSArray *extsarr;
+ BOOL valid;
+@@ -76,9 +78,9 @@
+ NSWorkspace *ws;
+ }
+
+-- (void)setResizer:(id)anObject;
++- (oneway void)setResizer:(id)anObject;
+
+-- (void)imageReady:(NSDictionary *)imginfo;
++- (oneway void)imageReady:(NSDictionary *)imginfo;
+
+ - (void)editFile:(id)sender;
+
+diff -Naur gworkspace-0.9.4.orig/Inspector/ContentViewers/ImageViewer/ImageViewer.m gworkspace-0.9.4/Inspector/ContentViewers/ImageViewer/ImageViewer.m
+--- gworkspace-0.9.4.orig/Inspector/ContentViewers/ImageViewer/ImageViewer.m 2016-06-07 18:13:08.000000000 +0200
++++ gworkspace-0.9.4/Inspector/ContentViewers/ImageViewer/ImageViewer.m 2021-12-06 14:18:12.024085590 +0100
+@@ -198,7 +198,7 @@
+ }
+ }
+
+-- (void)setResizer:(id)anObject
++- (oneway void)setResizer:(id)anObject
+ {
+ NSSize imsize = [imview bounds].size;
+
+@@ -207,6 +207,7 @@
+ [anObject setProtocolForProxy: @protocol(ImageResizerProtocol)];
+ resizer = (ImageResizer *)anObject;
+ RETAIN (resizer);
++ [resizer setProxy: self];
+ [self addSubview: progView];
+ [progView start];
+ [resizer readImageAtPath: imagePath setSize: imsize];
+@@ -214,7 +215,7 @@
+
+
+
+-- (void)imageReady:(NSDictionary *)imginfo
++- (oneway void)imageReady:(NSDictionary *)imginfo
+ {
+ NSData *imgdata;
+ BOOL imgok;
+diff -Naur gworkspace-0.9.4.orig/Inspector/ContentViewers/ImageViewer/Resizer.h gworkspace-0.9.4/Inspector/ContentViewers/ImageViewer/Resizer.h
+--- gworkspace-0.9.4.orig/Inspector/ContentViewers/ImageViewer/Resizer.h 2016-06-01 18:35:46.000000000 +0200
++++ gworkspace-0.9.4/Inspector/ContentViewers/ImageViewer/Resizer.h 2021-12-06 14:18:12.024085590 +0100
+@@ -1,9 +1,10 @@
+ /* Resizer.m
+ h
+ *
+- * Copyright (C) 2005-2016 Free Software Foundation, Inc.
++ * Copyright (C) 2005-2020 Free Software Foundation, Inc.
+ *
+- * Author: Enrico Sersale <enrico@imago.ro>
++ * Authors: Enrico Sersale <enrico@imago.ro>
++ * Riccardo Mottola <rm@gnu.org>
+ * Date: May 2016
+ *
+ * This file is part of the GNUstep Inspector application
+@@ -23,14 +24,15 @@
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111 USA.
+ */
+
+-
+-NSConnection *serverConnection;
++#import "ContentViewersProtocol.h"
+
+ @interface ImageResizer : NSObject
+ {
+-
++ id <ImageViewerProtocol> imageViewerProxy;
+ }
+
++- (void)setProxy:(id <ImageViewerProtocol>)ivp;
++
+ - (void)readImageAtPath:(NSString *)path
+ setSize:(NSSize)imsize;
+
+diff -Naur gworkspace-0.9.4.orig/Inspector/ContentViewers/ImageViewer/Resizer.m gworkspace-0.9.4/Inspector/ContentViewers/ImageViewer/Resizer.m
+--- gworkspace-0.9.4.orig/Inspector/ContentViewers/ImageViewer/Resizer.m 2016-06-07 17:28:36.000000000 +0200
++++ gworkspace-0.9.4/Inspector/ContentViewers/ImageViewer/Resizer.m 2021-12-06 14:18:45.928073537 +0100
+@@ -33,24 +33,13 @@
+ do { if (GW_DEBUG_LOG) \
+ NSLog(format , ## args); } while (0)
+
+-@protocol ImageViewerProtocol
+-
+-- (oneway void)setResizer:(id)anObject;
+-
+-- (oneway void)imageReady:(NSDictionary *)dict;
+-
+-@end
+-
+-
+-
+-
+-
+ @implementation ImageResizer
+
+ + (void)connectWithPorts:(NSArray *)portArray
+ {
+ NSAutoreleasePool *pool;
+ ImageResizer *serverObject;
++ NSConnection *serverConnection;
+
+ pool = [[NSAutoreleasePool alloc] init];
+
+@@ -77,6 +66,11 @@
+
+ #define MIX_LIM 16
+
++- (void)setProxy:(id <ImageViewerProtocol>)ivp
++{
++ imageViewerProxy = ivp;
++}
++
+ - (void)readImageAtPath:(NSString *)path
+ setSize:(NSSize)imsize
+ {
+@@ -191,7 +185,7 @@
+
+ RELEASE (srcImage);
+ }
+- [(id <ImageViewerProtocol>)[serverConnection rootProxy] imageReady: info];
++ [imageViewerProxy imageReady: info];
+ RELEASE (arp);
+ }
+
+diff -Naur gworkspace-0.9.4.orig/Inspector/ContentViewersProtocol.h gworkspace-0.9.4/Inspector/ContentViewersProtocol.h
+--- gworkspace-0.9.4.orig/Inspector/ContentViewersProtocol.h 2010-06-16 19:45:53.000000000 +0200
++++ gworkspace-0.9.4/Inspector/ContentViewersProtocol.h 2021-12-06 14:18:12.025085590 +0100
+@@ -1,8 +1,9 @@
+ /* ContentViewersProtocol.h
+ *
+- * Copyright (C) 2004 Free Software Foundation, Inc.
++ * Copyright (C) 2004-2020 Free Software Foundation, Inc.
+ *
+- * Author: Enrico Sersale <enrico@imago.ro>
++ * Authors: Enrico Sersale <enrico@imago.ro>
++ * Riccardo Mottola <rm@gnu.org>
+ * Date: January 2004
+ *
+ * This file is part of the GNUstep GWorkspace application
+@@ -48,4 +49,12 @@
+
+ @end
+
++/* Proxy for DO connection */
+
++@protocol ImageViewerProtocol
++
++- (oneway void)setResizer:(id)anObject;
++
++- (oneway void)imageReady:(NSDictionary *)dict;
++
++@end
diff --git a/gnustep-apps/gworkspace/gworkspace-0.9.4-r1.ebuild b/gnustep-apps/gworkspace/gworkspace-0.9.4-r1.ebuild
new file mode 100644
index 000000000000..774ee0d4ccf5
--- /dev/null
+++ b/gnustep-apps/gworkspace/gworkspace-0.9.4-r1.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+inherit gnustep-2
+
+DESCRIPTION="A workspace manager for GNUstep"
+HOMEPAGE="http://www.gnustep.org/experience/GWorkspace.html"
+SRC_URI="ftp://ftp.gnustep.org/pub/gnustep/usr-apps/${P}.tar.gz"
+
+KEYWORDS="~amd64 ~ppc ~x86"
+LICENSE="GPL-2"
+SLOT="0"
+
+IUSE="+gwmetadata"
+
+DEPEND=">=gnustep-base/gnustep-gui-0.25.0
+ gwmetadata? (
+ >=gnustep-apps/systempreferences-1.0.1_p24791
+ >=dev-db/sqlite-3.2.8
+ )"
+RDEPEND="${DEPEND}"
+
+PATCHES=( "${FILESDIR}"/${P}-ImageViewerProtocol.patch )
+
+src_configure() {
+ local myconf=""
+ use kernel_linux && myconf="${myconf} --with-inotify"
+ use gwmetadata && myconf="${myconf} --enable-gwmetadata"
+
+ egnustep_env
+ econf ${myconf}
+}
+
+src_install() {
+ egnustep_env
+ egnustep_install
+
+ if use doc;
+ then
+ dodir /usr/share/doc/${PF}
+ cp "${S}"/Documentation/*.pdf "${D}"/usr/share/doc/${PF}
+ fi
+}