Store terminal titles in layouts
This commit is contained in:
parent
f02f08314e
commit
70ab3b0f71
|
@ -130,4 +130,11 @@ class EditableLabel(gtk.EventBox):
|
|||
"""Set the label foreground"""
|
||||
self._label.modify_fg(state, color)
|
||||
|
||||
def is_custom(self):
|
||||
"""Return whether or not we have a custom string set"""
|
||||
return(self._custom)
|
||||
|
||||
def set_custom(self):
|
||||
"""Set the customness of the string to True"""
|
||||
self._custom = True
|
||||
gobject.type_register(EditableLabel)
|
||||
|
|
|
@ -1282,6 +1282,9 @@ for %s (%s)' % (name, urlplugin.__class__.__name__))
|
|||
if layout != "default":
|
||||
# There's no point explicitly noting default profiles
|
||||
layout['profile'] = profile
|
||||
title = self.titlebar.get_custom_string()
|
||||
if title:
|
||||
layout['title'] = title
|
||||
name = 'terminal%d' % count
|
||||
count = count + 1
|
||||
global_layout[name] = layout
|
||||
|
@ -1298,6 +1301,8 @@ for %s (%s)' % (name, urlplugin.__class__.__name__))
|
|||
# This doesn't need/use self.titlebar, but it's safer than sending
|
||||
# None
|
||||
self.really_create_group(self.titlebar, layout['group'])
|
||||
if layout.has_key('title') and layout['title'] != '':
|
||||
self.titlebar.set_custom_string(layout['title'])
|
||||
|
||||
# There now begins a great list of keyboard event handlers
|
||||
def key_zoom_in(self):
|
||||
|
|
|
@ -244,4 +244,16 @@ class Titlebar(gtk.EventBox):
|
|||
self.bellicon.hide()
|
||||
return(False)
|
||||
|
||||
def get_custom_string(self):
|
||||
"""If we have a custom string set, return it, otherwise None"""
|
||||
if self.label.is_custom():
|
||||
return(self.label.get_text())
|
||||
else:
|
||||
return(None)
|
||||
|
||||
def set_custom_string(self, string):
|
||||
"""Set a custom string"""
|
||||
self.label.set_text(string)
|
||||
self.label.set_custom()
|
||||
|
||||
gobject.type_register(Titlebar)
|
||||
|
|
Loading…
Reference in New Issue