Nope. Removed that shortcut but nothing changed. Docky still freezes on bookmarks docklet removal. My thread dump: Full thread dump: "" tid=0x0x7fb81c18f730 this=0x0x7fb81c042e58 thread handle 0x404 state : not waiting owns () at (wrapper managed-to-native) System.DateTime.GetNow () <0x00042> at (wrapper managed-to-native) System.DateTime.GetNow () <0xffffffff> at System.DateTime.get_UtcNow () <0x0000f> at Docky.Interface.DockWindow.m__4F (Docky.Items.AbstractDockItem) <0x000b7> at System.Linq.Enumerable/c__AnonStorey2F`1.<>m__60 (int,object) <0x00037> at System.Linq.Enumerable.Sum (System.Collections.Generic.IEnumerable`1,System.Func`3) <0x0006a> at System.Linq.Enumerable.Sum (System.Collections.Generic.IEnumerable`1,System.Func`2) <0x000bd> at Docky.Interface.DockWindow.get_DockWidth () <0x00077> at Docky.Interface.DockWindow.UpdateMaxIconSize () <0x000e3> at Docky.Interface.DockWindow.DrawDock (Docky.CairoHelper.DockySurface) <0x000ef> at Docky.Interface.DockWindow.OnExposeEvent (Gdk.EventExpose) <0x00203> at Gtk.Widget.exposeevent_cb (intptr,intptr) <0x00077> at (wrapper native-to-managed) Gtk.Widget.exposeevent_cb (intptr,intptr) <0xffffffff> at (wrapper managed-to-native) Gtk.Application.gtk_main () <0x00052> at (wrapper managed-to-native) Gtk.Application.gtk_main () <0xffffffff> at Gtk.Application.Run () <0x0000b> at Docky.Docky.Main (string[]) <0x00277> at (wrapper runtime-invoke) Docky.Docky.runtime_invoke_void_object (object,intptr,intptr,intptr) <0xffffffff> "" tid=0x0x7fb8077ee910 this=0x0x7fb80d67c4c8 thread handle 0x428 state : interrupted state owns () at (wrapper managed-to-native) System.Threading.WaitHandle.WaitAny_internal (System.Threading.WaitHandle[],int,bool) <0x0004b> at (wrapper managed-to-native) System.Threading.WaitHandle.WaitAny_internal (System.Threading.WaitHandle[],int,bool) <0xffffffff> at System.Threading.WaitHandle.WaitAny (System.Threading.WaitHandle[],System.TimeSpan,bool) <0x00077> at System.Threading.RegisteredWaitHandle.Wait (object) <0x000bb> at (wrapper runtime-invoke) object.runtime_invoke_void__this___object (object,intptr,intptr,intptr) <0xffffffff> "" tid=0x0x7fb807bf8910 this=0x0x7fb80d67c990 thread handle 0x425 state : interrupted state owns () "" tid=0x0x7fb807df9910 this=0x0x7fb80dd897f8 thread handle 0x41f state : interrupted state owns () at (wrapper managed-to-native) System.Threading.WaitHandle.WaitAny_internal (System.Threading.WaitHandle[],int,bool) <0x0004b> at (wrapper managed-to-native) System.Threading.WaitHandle.WaitAny_internal (System.Threading.WaitHandle[],int,bool) <0xffffffff> at System.Threading.WaitHandle.WaitAny (System.Threading.WaitHandle[],System.TimeSpan,bool) <0x00077> at System.Threading.RegisteredWaitHandle.Wait (object) <0x000bb> at (wrapper runtime-invoke) object.runtime_invoke_void__this___object (object,intptr,intptr,intptr) <0xffffffff> Full thread dump: "" tid=0x0x7fb807bf8910 this=0x0x7fb80d67c990 thread handle 0x425 state : interrupted state owns () "" tid=0x0x7fb81c18f730 this=0x0x7fb81c042e58 thread handle 0x404 state : not waiting owns () at (wrapper managed-to-native) Gtk.Application.gtk_main () <0x00052> at (wrapper managed-to-native) Gtk.Application.gtk_main () <0xffffffff> at Gtk.Application.Run () <0x0000b> at Docky.Docky.Main (string[]) <0x00277> at (wrapper runtime-invoke) Docky.Docky.runtime_invoke_void_object (object,intptr,intptr,intptr) <0xffffffff> "" tid=0x0x7fb80c80b910 this=0x0x7fb80dd89990 thread handle 0x4f9 state : interrupted state owns () "" tid=0x0x7fb8077ee910 this=0x0x7fb80d67c4c8 thread handle 0x428 state : interrupted state owns () Terminated