diff --git a/ChangeLog b/ChangeLog index 7394ac0b..2ebacbe4 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,10 +1,18 @@ terminator 0.9: + * Tab support + * Drag & Drop support * Added support for ~/.terminatorrc + * Switch the meanings of "horizontal" and "vertical" wrt splitting, + after extensive user feedback. Added context menu icons to try and + make the meaning clearer. * Added keybindings for terms size and scrollbar manipulation. Thanks Emmanuel Bretelle. + * Alpha transparency support when running in a composited window manager * Completely revamped config system which now transparently makes use of gconf settings if they are available, falls back to sensible defaults if not, and can be overridden entirely by ~/.terminatorrc + * Support terminal zooming - now you can quickly hide all terminals apart + from one * New application icon from Cory Kontros * FreeBSD support (thanks to Thomas Hurst) * Watch the system monospace font setting. Closes LP #197960 @@ -14,12 +22,7 @@ terminator 0.9: * Try much harder to find a usable shell * Support encodings a-la GNOME Terminal * Move python support code to a terminatorlib module - * Tab support - * Drag & Drop support - * Many bug fixes and wider compatibility with GNOME Terminal - * Alpha transparency support when running in a composited window manager - * Support terminal zooming - now you can quickly hide all terminals apart - from one + * Many other bug fixes and wider compatibility with GNOME Terminal terminator 0.8.1: * Fixed ChangeLog diff --git a/data/icons/16x16/actions/terminator_horiz.png b/data/icons/16x16/actions/terminator_horiz.png new file mode 100644 index 00000000..cea06241 Binary files /dev/null and b/data/icons/16x16/actions/terminator_horiz.png differ diff --git a/data/icons/16x16/actions/terminator_vert.png b/data/icons/16x16/actions/terminator_vert.png new file mode 100644 index 00000000..a0ff20c8 Binary files /dev/null and b/data/icons/16x16/actions/terminator_vert.png differ diff --git a/debian/terminator.postinst b/debian/terminator.postinst new file mode 100755 index 00000000..eb90e218 --- /dev/null +++ b/debian/terminator.postinst @@ -0,0 +1,4 @@ +#!/bin/sh + +gtk-update-icon-cache -q -f /usr/share/icons/hicolor/ + diff --git a/doc/terminatorrc.5 b/doc/terminatorrc.5 index 104c16d9..4f713b23 100644 --- a/doc/terminatorrc.5 +++ b/doc/terminatorrc.5 @@ -23,7 +23,7 @@ Default colour of terminal background, as a colour specification (can be HTML-st Default value: \fB#000000\fR .TP .B background_darkness -A value between 0.0 and 1.0 indicating how much to darken the background image. 0.0 means no darkness, 1.0 means fully dark. In the current implementation, there are only two levels of darkness possible, so the setting behaves as a boolean, where 0.0 disables the darkening effect. +A value between 0.0 and 1.0 indicating how much to darken the background image. 0.0 means no darkness, 1.0 means fully dark. If the terminal is set to transparent, this setting controls how transparent it is. 0.0 means fully transparent, 1.0 means fully opaque. Default value: \fB0.5\fR .TP .B background_type diff --git a/setup.py b/setup.py index 842107e5..0f48b134 100755 --- a/setup.py +++ b/setup.py @@ -41,8 +41,7 @@ class BuildData(build): if newer(po, mo): cmd = 'msgfmt -o %s %s' % (mo, po) info('compiling %s -> %s' % (po, mo)) - if os.system(cmd) != 0: - raise SystemExit('Error while running msgfmt') + os.system(cmd) class InstallData(install_data): @@ -83,6 +82,7 @@ setup(name='Terminator', ('share/icons/hicolor/22x22/apps', glob.glob('data/icons/22x22/apps/*.png')), ('share/icons/hicolor/24x24/apps', glob.glob('data/icons/24x24/apps/*.png')), ('share/icons/hicolor/48x48/apps', glob.glob('data/icons/48x48/apps/*.png')), + ('share/icons/hicolor/16x16/actions', glob.glob('data/icons/16x16/actions/*.png')), ], packages=['terminatorlib'], cmdclass={'build': BuildData, 'install_data': InstallData} diff --git a/terminator b/terminator index 15a444bd..bfbc25c9 100755 --- a/terminator +++ b/terminator @@ -189,8 +189,7 @@ class TerminatorTerm (gtk.VBox): def on_drag_begin(self, widget, drag_context, data): dbg ('Drag begins') - if os.path.exists("/usr/share/icons/hicolor/48x48/apps/terminator.png"): - widget.drag_source_set_icon_pixbuf( gtk.gdk.pixbuf_new_from_file("/usr/share/icons/hicolor/48x48/apps/terminator.png")) + widget.drag_source_set_icon_pixbuf(self.terminator.icon_theme.load_icon (APP_NAME, 48, 0)) def on_drag_data_get(self,widget, drag_context, selection_data, info, time, data): dbg ("Drag data get") @@ -513,6 +512,8 @@ text/plain # Set our sloppiness self.focus = self.conf.focus + self._vte.queue_draw () + def on_composited_changed (self, widget): self.reconfigure_vte () @@ -680,6 +681,10 @@ text/plain address = url[0] nameopen = _("_Open Link") namecopy = _("_Copy Link Address") + iconopen = gtk.image_new_from_stock(gtk.STOCK_JUMP_TO, gtk.ICON_SIZE_MENU) + + item = gtk.ImageMenuItem (nameopen) + item.set_property('image', iconopen) else: if url[0][0:7] != "mailto:": address = "mailto:" + url[0] @@ -688,7 +693,8 @@ text/plain nameopen = _("_Send Mail To...") namecopy = _("_Copy Email Address") - item = gtk.MenuItem (nameopen) + item = gtk.MenuItem (nameopen) + item.connect ("activate", lambda menu_item: openurl (address)) menu.append (item) @@ -727,11 +733,22 @@ text/plain menu.append (item) if not self.terminator._zoomed: - item = gtk.MenuItem (_("Split H_orizontally")) + str_horiz = _("Split H_orizontally") + str_vert = _("Split V_ertically") + + item = gtk.ImageMenuItem (str_horiz) + item_image = gtk.Image () + item_image.set_from_icon_name (APP_NAME + '_horiz', gtk.ICON_SIZE_MENU) + item.set_image (item_image) + item.connect ("activate", lambda menu_item: self.terminator.splitaxis (self, False)) menu.append (item) - item = gtk.MenuItem (_("Split V_ertically")) + item = gtk.ImageMenuItem (str_vert) + item_image = gtk.Image () + item_image.set_from_icon_name (APP_NAME + '_vert', gtk.ICON_SIZE_MENU) + item.set_image (item_image) + item.connect ("activate", lambda menu_item: self.terminator.splitaxis (self, True)) menu.append (item) @@ -874,8 +891,8 @@ class Terminator: pass self.conf = config.TerminatorConfig (stores) - #changes to the Paned's handle_size can only be done - # once we loaded the configuration + + self.icon_theme = gtk.IconTheme () if self.conf.handle_size in range (0,6): gtk.rc_parse_string(""" @@ -888,9 +905,8 @@ class Terminator: self.window = gtk.Window () self.window.set_title (APP_NAME.capitalize()) - # FIXME: This really shouldn't be a hardcoded path try: - self.window.set_icon_from_file ("/usr/share/icons/hicolor/48x48/apps/" + APP_NAME + ".png") + self.window.set_icon (self.icon_theme.load_icon (APP_NAME, 48, 0)) except: self.icon = self.window.render_icon (gtk.STOCK_DIALOG_INFO, gtk.ICON_SIZE_BUTTON) self.window.set_icon (self.icon) @@ -1264,7 +1280,7 @@ class Terminator: # create a new terminal and parent pane. terminal = TerminatorTerm (self, self.profile, None, widget.get_cwd()) - pos = vertical and "bottom" or "right" + pos = vertical and "right" or "bottom" self.add(widget, terminal, pos) terminal.show () terminal.spawn_child ()