Re: [Banshee-List] gtk3 branch



On 11/21/2011 09:44 PM, olivier dufour wrote:
Hello,

Great news!

I have successfully launched banshee GTK3 version.
But in order to do so, I have patch gtk# with a quick hack to fix issue
because we can not cast propertyInfo of a subtype with is generic from a
derived class non generic.
Anyway it work but slow because I get PropertyInfo each time I call it.
Best is to do a cache as Properties in Object.cs but for interface
properties. But done a cache system just for that is very ugly.
Anyway, my patch make things works but I have 2 NRE hiden and a quick
hack witch slow done things.
If people want to test or even fix my patch to make a better one to
commit to ofiicial gtk# branch.

Hey Olivier, that's awesome news.

With your latest patch ( http://monobin.com/1328/ ) I don't get anymore the InvalidCastException but now I get a TargetException:



[1 Debug 21:30:40.867] UpdateAdjustments
[1 Debug 21:30:40.867] UpdateAdjustments
Exception in Gtk# callback delegate
Note: Applications can use GLib.ExceptionManager.UnhandledException to handle the exception. System.Reflection.TargetException: Object of type 'Hyena.Widgets.RoundedFrame' doesn't match target type 'Hyena.Data.Gui.ListView`1[Banshee.Collection.AlbumInfo]' at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x000f8] in /home/abuild/rpmbuild/BUILD/mono-2.10.6/mcs/class/corlib/System.Reflection/MonoMethod.cs:240 at System.Reflection.MonoProperty.SetValue (System.Object obj, System.Object value, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] index, System.Globalization.CultureInfo culture) [0x00064] in /home/abuild/rpmbuild/BUILD/mono-2.10.6/mcs/class/corlib/System.Reflection/MonoProperty.cs:353 at System.Reflection.PropertyInfo.SetValue (System.Object obj, System.Object value, System.Object[] index) [0x00000] in /home/abuild/rpmbuild/BUILD/mono-2.10.6/mcs/class/corlib/System.Reflection/PropertyInfo.cs:93 at GLib.Object.SetPropertyCallback (IntPtr handle, UInt32 property_id, GLib.Value& value, IntPtr param_spec) [0x0006a] in /home/andres121/checkout/gnome/gtk-sharp/glib/Object.cs:359 at (wrapper native-to-managed) GLib.Object:SetPropertyCallback (intptr,uint,GLib.Value&,intptr) at (wrapper managed-to-native) object:wrapper_native_0xb52a0200 (intptr,uint,intptr) at GLib.Object.ConstructorCallback (IntPtr gtypeval, UInt32 n_construct_properties, IntPtr construct_properties) [0x0002c] in /home/andres121/checkout/gnome/gtk-sharp/glib/Object.cs:218 at (wrapper native-to-managed) GLib.Object:ConstructorCallback (intptr,uint,intptr) at (wrapper managed-to-native) GLib.Object:g_object_newv (intptr,int,GLib.Object/GParameter[]) at GLib.Object.CreateNativeObject (System.String[] names, GLib.Value[] vals) [0x000b8] in /home/andres121/checkout/gnome/gtk-sharp/glib/Object.cs:487 at Gtk.Widget.CreateNativeObject (System.String[] names, GLib.Value[] vals) [0x00000] in /home/andres121/checkout/gnome/gtk-sharp/gtk/generated/Widget.custom:370 at Gtk.Bin..ctor () [0x0000b] in /home/andres121/checkout/gnome/gtk-sharp/gtk/generated/Bin.cs:17
  at Hyena.Widgets.RoundedFrame..ctor () [0x00000] in <filename unknown>:0
at Hyena.Widgets.ScrolledWindow.AddWithFrame (Gtk.Widget widget) [0x00000] in /home/andres121/Documents/code/banshee/src/Hyena/Hyena.Gui/Hyena.Widgets/ScrolledWindow.cs:52 at Nereid.PlayerInterface.BuildViews () [0x000c6] in /home/andres121/Documents/code/banshee/src/Clients/Nereid/Nereid/PlayerInterface.cs:305 at Nereid.PlayerInterface.BuildPrimaryLayout () [0x00011] in /home/andres121/Documents/code/banshee/src/Clients/Nereid/Nereid/PlayerInterface.cs:169 at Nereid.PlayerInterface.OnShown () [0x00036] in /home/andres121/Documents/code/banshee/src/Clients/Nereid/Nereid/PlayerInterface.cs:136 at Gtk.Widget.Shown_cb (IntPtr inst) [0x0000d] in /home/andres121/checkout/gnome/gtk-sharp/gtk/generated/Widget.cs:1484 at GLib.ExceptionManager.RaiseUnhandledException(System.Exception e, Boolean is_terminal) in /home/andres121/checkout/gnome/gtk-sharp/glib/ExceptionManager.cs:line 58 at Gtk.Widget.Shown_cb(IntPtr inst) in /home/andres121/checkout/gnome/gtk-sharp/gtk/generated/Widget.cs:line 1486
   at Gtk.Widget.gtk_widget_show(IntPtr )
at Gtk.Widget.Show() in /home/andres121/checkout/gnome/gtk-sharp/gtk/generated/Widget.cs:line 5376 at Banshee.Gui.BaseClientWindow.InitialShowPresent() in /home/andres121/Documents/code/banshee/src/Core/Banshee.ThickClient/Banshee.Gui/BaseClientWindow.cs:line 107 at Nereid.PlayerInterface.Initialize() in /home/andres121/Documents/code/banshee/src/Clients/Nereid/Nereid/PlayerInterface.cs:line 116 at Banshee.Gui.BaseClientWindow.InitializeWindow() in /home/andres121/Documents/code/banshee/src/Core/Banshee.ThickClient/Banshee.Gui/BaseClientWindow.cs:line 141 at Banshee.Gui.BaseClientWindow..ctor(System.String title, System.String configNameSpace, Int32 defaultWidth, Int32 defaultHeight) in /home/andres121/Documents/code/banshee/src/Core/Banshee.ThickClient/Banshee.Gui/BaseClientWindow.cs:line 78
   at Nereid.PlayerInterface..ctor()
at System.Reflection.MonoCMethod.InternalInvoke(System.Reflection.MonoCMethod , System.Object , System.Object[] , System.Exception ByRef ) at System.Reflection.MonoCMethod.Invoke(System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) in /home/abuild/rpmbuild/BUILD/mono-2.10.6/mcs/class/corlib/System.Reflection/MonoMethod.cs:line 526 at System.Reflection.MonoCMethod.Invoke(BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) in /home/abuild/rpmbuild/BUILD/mono-2.10.6/mcs/class/corlib/System.Reflection/MonoMethod.cs:line 541 at System.Reflection.ConstructorInfo.Invoke(System.Object[] parameters) in /home/abuild/rpmbuild/BUILD/mono-2.10.6/mcs/class/corlib/System.Reflection/ConstructorInfo.cs:line 62 at System.Activator.CreateInstance(System.Type type, Boolean nonPublic) in /home/abuild/rpmbuild/BUILD/mono-2.10.6/mcs/class/corlib/System/Activator.cs:line 333 at System.Activator.CreateInstance(System.Type type) in /home/abuild/rpmbuild/BUILD/mono-2.10.6/mcs/class/corlib/System/Activator.cs:line 224 at Banshee.ServiceStack.ServiceManager.RegisterService(System.Type type) in /home/andres121/Documents/code/banshee/src/Core/Banshee.Services/Banshee.ServiceStack/ServiceManager.cs:line 166 at Banshee.ServiceStack.ServiceManager.Run() in /home/andres121/Documents/code/banshee/src/Core/Banshee.Services/Banshee.ServiceStack/ServiceManager.cs:line 139 at Banshee.ServiceStack.Application.Run() in /home/andres121/Documents/code/banshee/src/Core/Banshee.Services/Banshee.ServiceStack/Application.cs:line 108 at Banshee.Gui.GtkBaseClient.Initialize(Boolean registerCommonServices) in /home/andres121/Documents/code/banshee/src/Core/Banshee.ThickClient/Banshee.Gui/GtkBaseClient.cs:line 188 at Banshee.Gui.GtkBaseClient..ctor(Boolean initializeDefault, System.String defaultIconName) in /home/andres121/Documents/code/banshee/src/Core/Banshee.ThickClient/Banshee.Gui/GtkBaseClient.cs:line 91
   at Banshee.Gui.GtkBaseClient..ctor()
   at Nereid.Client..ctor()
at System.Reflection.MonoCMethod.InternalInvoke(System.Reflection.MonoCMethod , System.Object , System.Object[] , System.Exception ByRef ) at System.Reflection.MonoCMethod.Invoke(System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) in /home/abuild/rpmbuild/BUILD/mono-2.10.6/mcs/class/corlib/System.Reflection/MonoMethod.cs:line 526 at System.Reflection.MonoCMethod.Invoke(BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) in /home/abuild/rpmbuild/BUILD/mono-2.10.6/mcs/class/corlib/System.Reflection/MonoMethod.cs:line 541 at System.Reflection.ConstructorInfo.Invoke(System.Object[] parameters) in /home/abuild/rpmbuild/BUILD/mono-2.10.6/mcs/class/corlib/System.Reflection/ConstructorInfo.cs:line 62 at System.Activator.CreateInstance(System.Type type, Boolean nonPublic) in /home/abuild/rpmbuild/BUILD/mono-2.10.6/mcs/class/corlib/System/Activator.cs:line 333 at System.Activator.CreateInstance(System.Type type) in /home/abuild/rpmbuild/BUILD/mono-2.10.6/mcs/class/corlib/System/Activator.cs:line 224 at Banshee.Gui.GtkBaseClient.Startup() in /home/andres121/Documents/code/banshee/src/Core/Banshee.ThickClient/Banshee.Gui/GtkBaseClient.cs:line 78 at Hyena.Gui.CleanRoomStartup.Startup(Hyena.Gui.StartupInvocationHandler startup) in /home/andres121/Documents/code/banshee/src/Hyena/Hyena.Gui/Hyena.Gui/CleanRoomStartup.cs:line 54 at Banshee.Gui.GtkBaseClient.Startup() in /home/andres121/Documents/code/banshee/src/Core/Banshee.ThickClient/Banshee.Gui/GtkBaseClient.cs:line 73 at Banshee.Gui.GtkBaseClient.Startup(System.String[] args) in /home/andres121/Documents/code/banshee/src/Core/Banshee.ThickClient/Banshee.Gui/GtkBaseClient.cs:line 63 at Nereid.Client.Main(System.String[] args) in /home/andres121/Documents/code/banshee/src/Clients/Nereid/Nereid/Client.cs:line 54
make: *** [run] Error 1


Don't you get this? Are you in 64 or 32 bits? I'll see if I have time to investigate.

Cheers,

  Andres

--



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]