[Pkg-cli-apps-commits] [SCM] monodevelop branch, master-experimental, updated. debian/2.6+dfsg-1-10-gdfdeb30
Jo Shields
directhex at apebox.org
Tue Nov 8 01:30:39 UTC 2011
The following commit has been merged in the master-experimental branch:
commit 0c50f481ba76f637de6305e9994a8147d8b13577
Author: Gleb Golubitsky <sectoid at gnolltech.org>
Date: Mon Oct 31 02:26:25 2011 +0200
Removing dependency to non-present lib libobjc.dylib
Signed-off-by: Gleb Golubitsky <sectoid at gnolltech.org>
diff --git a/debian/patches/remove-libobjc-dylib-dep.patch b/debian/patches/remove-libobjc-dylib-dep.patch
new file mode 100644
index 0000000..66d3913
--- /dev/null
+++ b/debian/patches/remove-libobjc-dylib-dep.patch
@@ -0,0 +1,139 @@
+index 0b8ceb6..1fdcd9e 100644
+--- a/src/core/Mono.Texteditor/Mono.TextEditor/GtkWorkarounds.cs
++++ b/src/core/Mono.Texteditor/Mono.TextEditor/GtkWorkarounds.cs
+@@ -32,29 +32,6 @@ namespace Mono.TextEditor
+ {
+ public static class GtkWorkarounds
+ {
+- const string LIBOBJC ="/usr/lib/libobjc.dylib";
+-
+- [DllImport (LIBOBJC, EntryPoint = "sel_registerName")]
+- static extern IntPtr sel_registerName (string selector);
+-
+- [DllImport (LIBOBJC, EntryPoint = "objc_getClass")]
+- static extern IntPtr objc_getClass (string klass);
+-
+- [DllImport (LIBOBJC, EntryPoint = "objc_msgSend")]
+- static extern IntPtr objc_msgSend_IntPtr (IntPtr klass, IntPtr selector);
+-
+- [DllImport (LIBOBJC, EntryPoint = "objc_msgSend")]
+- static extern void objc_msgSend_void_bool (IntPtr klass, IntPtr selector, bool arg);
+-
+- [DllImport (LIBOBJC, EntryPoint = "objc_msgSend")]
+- static extern bool objc_msgSend_bool (IntPtr klass, IntPtr selector);
+-
+- [DllImport (LIBOBJC, EntryPoint = "objc_msgSend")]
+- static extern bool objc_msgSend_int_int (IntPtr klass, IntPtr selector, int arg);
+-
+- [DllImport (LIBOBJC, EntryPoint = "objc_msgSend_stret")]
+- static extern void objc_msgSend_RectangleF (out RectangleF rect, IntPtr klass, IntPtr selector);
+-
+ static IntPtr cls_NSScreen;
+ static IntPtr sel_screens, sel_objectEnumerator, sel_nextObject, sel_frame, sel_visibleFrame,
+ sel_activateIgnoringOtherApps, sel_isActive, sel_requestUserAttention;
+@@ -69,10 +46,6 @@ namespace Mono.TextEditor
+
+ static GtkWorkarounds ()
+ {
+- if (Platform.IsMac) {
+- InitMac ();
+- }
+-
+ var flags = System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.NonPublic;
+ glibObjectSetProp = typeof (GLib.Object).GetMethod ("SetProperty", flags);
+ glibObjectGetProp = typeof (GLib.Object).GetMethod ("GetProperty", flags);
+@@ -84,94 +57,19 @@ namespace Mono.TextEditor
+ }
+ }
+ }
+-
+- static void InitMac ()
+- {
+- cls_NSScreen = objc_getClass ("NSScreen");
+- sel_screens = sel_registerName ("screens");
+- sel_objectEnumerator = sel_registerName ("objectEnumerator");
+- sel_nextObject = sel_registerName ("nextObject");
+- sel_visibleFrame = sel_registerName ("visibleFrame");
+- sel_frame = sel_registerName ("frame");
+- sel_activateIgnoringOtherApps = sel_registerName ("activateIgnoringOtherApps:");
+- sel_isActive = sel_registerName ("isActive");
+- sel_requestUserAttention = sel_registerName ("requestUserAttention:");
+- sharedApp = objc_msgSend_IntPtr (objc_getClass ("NSApplication"), sel_registerName ("sharedApplication"));
+- }
+-
+- static Gdk.Rectangle MacGetUsableMonitorGeometry (Gdk.Screen screen, int monitor)
+- {
+- IntPtr array = objc_msgSend_IntPtr (cls_NSScreen, sel_screens);
+- IntPtr iter = objc_msgSend_IntPtr (array, sel_objectEnumerator);
+- RectangleF visible, frame;
+- IntPtr scrn;
+- int i = 0;
+-
+- while ((scrn = objc_msgSend_IntPtr (iter, sel_nextObject)) != IntPtr.Zero && i < monitor)
+- i++;
+-
+- if (scrn == IntPtr.Zero)
+- return screen.GetMonitorGeometry (monitor);
+-
+- objc_msgSend_RectangleF (out visible, scrn, sel_visibleFrame);
+- objc_msgSend_RectangleF (out frame, scrn, sel_frame);
+-
+- // VisibleFrame.Y is the height of the Dock if it is at the bottom of the screen, so in order
+- // to get the menu height, we just figure out the difference between the visibleFrame height
+- // and the actual frame height, then subtract the Dock height.
+- //
+- // We need to swap the Y offset with the menu height because our callers expect the Y offset
+- // to be from the top of the screen, not from the bottom of the screen.
+- float x, y, width, height;
+-
+- if (visible.Height < frame.Height) {
+- float dockHeight = visible.Y;
+- float menubarHeight = (frame.Height - visible.Height) - dockHeight;
+-
+- height = frame.Height - menubarHeight - dockHeight;
+- y = menubarHeight;
+- } else {
+- height = frame.Height;
+- y = frame.Y;
+- }
+-
+- // Takes care of the possibility of the Dock being positioned on the left or right edge of the screen.
+- width = System.Math.Min (visible.Width, frame.Width);
+- x = System.Math.Max (visible.X, frame.X);
+-
+- return new Gdk.Rectangle ((int) x, (int) y, (int) width, (int) height);
+- }
+-
+- static void MacRequestAttention (bool critical)
+- {
+- int kind = critical? NSCriticalRequest : NSInformationalRequest;
+- objc_msgSend_int_int (sharedApp, sel_requestUserAttention, kind);
+- }
+-
+ public static Gdk.Rectangle GetUsableMonitorGeometry (this Gdk.Screen screen, int monitor)
+ {
+- if (Platform.IsMac)
+- return MacGetUsableMonitorGeometry (screen, monitor);
+-
+ return screen.GetMonitorGeometry (monitor);
+ }
+
+ public static int RunDialogWithNotification (Gtk.Dialog dialog)
+ {
+- if (Platform.IsMac)
+- MacRequestAttention (dialog.Modal);
+-
+ return dialog.Run ();
+ }
+
+ public static void PresentWindowWithNotification (this Gtk.Window window)
+ {
+ window.Present ();
+-
+- if (Platform.IsMac) {
+- var dialog = window as Gtk.Dialog;
+- MacRequestAttention (dialog == null? false : dialog.Modal);
+- }
+ }
+
+ public static GLib.Value GetProperty (this GLib.Object obj, string name)
diff --git a/debian/patches/series b/debian/patches/series
index e73c65f..330707b 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -16,3 +16,4 @@ use_csc.patch
#remove_support_for_soft_debugger.patch
remove_support_for_moonlight.patch
no_appmenu
+remove-libobjc-dylib-dep.patch
\ No newline at end of file
--
monodevelop
More information about the Pkg-cli-apps-commits
mailing list