Ticket #602: enable_metacity.patch

File enable_metacity.patch, 2.3 KB (added by sayamindu, 15 years ago)

Works for me. You may need to install metacity in the sugar-jhbuild environment to make this work

  • bin/sugar-emulator

    diff --git a/bin/sugar-emulator b/bin/sugar-emulator
    index 8c0aa8e..1ba1f5c 100644
    a b def _start_xephyr(dpi, dimensions): 
    7878                    time.sleep(0.1)
    7979
    8080def _start_matchbox():
    81     cmd = ['matchbox-window-manager']
     81    cmd = ['metacity']
    8282
    83     cmd.extend(['-use_titlebar', 'no'])
    84     cmd.extend(['-theme', 'sugar'])
     83    #cmd.extend(['-use_titlebar', 'no'])
     84    #cmd.extend(['-theme', 'sugar'])
    8585
    8686    gobject.spawn_async(cmd, flags=gobject.SPAWN_SEARCH_PATH)
    8787
  • bin/sugar.in

    diff --git a/bin/sugar.in b/bin/sugar.in
    index b9f467c..27ff830 100644
    a b if [ -f ~/.sugar/debug ]; then 
    1616        . ~/.sugar/debug
    1717fi
    1818
    19 matchbox-window-manager -use_titlebar no -theme sugar \
    20                         -kbdconfig @prefix@/share/sugar/data/kbdconfig &
     19#matchbox-window-manager -use_titlebar no -theme sugar \
     20#                        -kbdconfig @prefix@/share/sugar/data/kbdconfig &
     21metacity &
    2122
    2223exec sugar-session
  • src/jarabe/frame/framewindow.py

    diff --git a/src/jarabe/frame/framewindow.py b/src/jarabe/frame/framewindow.py
    index 02bb131..5cb1241 100644
    a b class FrameWindow(gtk.Window): 
    9393            self.resize(self.size, gtk.gdk.screen_height())
    9494
    9595    def _realize_cb(self, widget):
    96         self.window.set_type_hint(gtk.gdk.WINDOW_TYPE_HINT_DIALOG)
     96        self.window.set_type_hint(gtk.gdk.WINDOW_TYPE_HINT_DOCK)
    9797        self.window.set_accept_focus(False)
    9898
    9999    def _enter_notify_cb(self, window, event):
  • src/jarabe/model/shell.py

    diff --git a/src/jarabe/model/shell.py b/src/jarabe/model/shell.py
    index 561cbf6..ebaf363 100644
    a b import gconf 
    2222import wnck
    2323import gobject
    2424import gtk
     25import gtk.gdk
    2526import dbus
    2627
    2728from sugar import wm
    class ShellModel(gobject.GObject): 
    457458            if activity_id:
    458459                home_activity = self.get_activity_by_id(activity_id)
    459460
     461                xid = window.get_xid()
     462                gdkwin = gtk.gdk.window_foreign_new(xid)
     463                gdkwin.set_decorations(gtk.gdk.DECOR_BORDER)
     464
     465                window.maximize()
     466
    460467            if not home_activity:
    461468                home_activity = Activity(activity_info, activity_id, window)
    462469                self._add_activity(home_activity)