daemon/Makefile
daemon/ibus-daemon
launcher/ibus
+launcher/ibus.desktop
launcher/Makefile
panel/Makefile
panel/ibus-panel
iconsdir = $(pkgdatadir)/icons
sysicons_DATA = \
+ ibus.svg \
ibus-setup.svg \
$(NULL)
bin_SCRIPTS = ibus
-CLEANFILES = \
- $(NULL)
+desktop_DATA = ibus.desktop
+desktopdir = $(datadir)/applications
EXTRA_DIST = \
ibus.in \
+ ibus.desktop.in \
$(NULL)
+CLEANFILES = \
+ $(NULL)
--- /dev/null
+[Desktop Entry]
+Name=IBus
+Comment=Setup utility for IBus
+Exec=ibus
+Icon=ibus
+Terminal=false
+Type=Application
+StartupNotify=true
+Categories=Settings;
# License along with this program; if not, write to the
# Free Software Foundation, Inc., 59 Temple Place, Suite 330,
# Boston, MA 02111-1307 USA
+
import os
+import os.path
import sys
import time
daemon_pid = 0
+logname = os.path.expanduser("~/.ibus-error")
+os.close(0)
+os.close(1)
+os.close(2)
+try:
+ os.unlink(logname)
+except:
+ pass
+fd = os.open(logname, os.O_CREAT | os.O_WRONLY)
+os.dup2(fd, 1)
+os.dup2(fd, 2)
try:
print "start ibus-daemon"
daemon_pid = os.spawnv (os.P_NOWAIT, daemon, [daemon])
self.__move_begined = False
root = gdk.get_default_root_window()
- workarea = root.property_get("_NET_WORKAREA")[2]
def do_button_press_event(self, event):
if event.button == 1:
root = gdk.get_default_root_window()
- desktop = root.property_get("_NET_CURRENT_DESKTOP")[2][0]
- self.__workarea = root.property_get("_NET_WORKAREA")[2][desktop * 4: (desktop + 1) * 4]
+ try:
+ desktop = root.property_get("_NET_CURRENT_DESKTOP")[2][0]
+ self.__workarea = root.property_get("_NET_WORKAREA")[2][desktop * 4: (desktop + 1) * 4]
+ except:
+ self.__workarea = None
self.__move_begined = True
toplevel = self.get_toplevel()
x, y = toplevel.get_position()
x = int(event.x_root - self.__press_pos[0])
y = int(event.y_root - self.__press_pos[1])
+ if self.__workarea == None:
+ toplevel.move(x, y)
+ return
+
if x < self.__workarea[0] and x > self.__workarea[0] - 16:
x = self.__workarea[0]
if y < self.__workarea[1] and y > self.__workarea[1] - 16:
self.__toplevel.add(self)
root = gdk.get_default_root_window()
- workarea = root.property_get("_NET_WORKAREA")[2]
- self.__toplevel.move(workarea[2] - 200, workarea[3] - 40)
+ try:
+ workarea = root.property_get("_NET_WORKAREA")[2]
+ right, bottom = workarea[2], workarea[3]
+ except:
+ right, bottom = 640, 480
+
+ self.__toplevel.move(right - 200, bottom - 40)
def __create_ui(self):
# create move handle
def focus_in(self):
self.__im_menu.set_sensitive(True)
+ self.__toplevel.window.raise_()
def focus_out(self):
self.__im_menu.set_sensitive(False)