Commit Graph

1607 Commits

Author SHA1 Message Date
Stephen Boddy
b3bee59c9d Cache the maker instance for three heavy users (Container.get_visible_terminals, Window.get_visible_terminals and Window.set_rough_geometry_hints) 2011-02-17 02:57:30 +01:00
Stephen Boddy
03791c753b Swap order of imports to avoid needlessly throwing ImportError all the time, and cache as much as we can (imported classes, keys) 2011-02-17 02:28:38 +01:00
Tony Baker
472ad50c6e Changed set_cursor_blinks() to set_cursor_blink_mode(), set_cursor_blinks is deprecated as of vte 0.17.1. Made change to set_color_cursor to fix Launchpad Bug# 700969. 2011-02-07 23:17:46 -05:00
Chris Jones
35842b6ff7 When creating a new window via dbus, pass on the layout request if there is one 2010-11-29 20:46:49 +00:00
Chris Jones
2e94df2033 Merge Peter B. Jørgensen's branch improving dropdown behaviours/features 2010-10-15 12:57:30 +01:00
Chris Jones
43bd78c6c5 Merge Emilien Klein's branch to make the --help output translatable 2010-10-15 12:44:32 +01:00
Chris Jones
7253eda0c8 Add a couple of handy debugging statements for config file/dir problems 2010-10-15 12:40:29 +01:00
Emilien Klein
223909b361 Translate the help text (the output of terminator -h) - bug#630063 2010-09-04 11:03:57 +02:00
Peter B. Jørgensen
356646c8bc merged with trunk 2010-08-30 22:36:33 +02:00
Chris Jones
2981b1ad67 Update tree for 0.95 2010-08-24 21:42:46 +01:00
Chris Jones
0c6ba18d2b Cowardly disable the dbus server by default 2010-08-24 21:38:15 +01:00
Chris Jones
d760685866 Move window focus detection before other kinds of focus detection, since it involves fewer variables existing. This reduces unnecessary error messages when unfocussing a complex window 2010-08-24 20:44:29 +01:00
Chris Jones
b5c6662359 For now TERM is hardcoded to xterm 2010-08-20 10:58:36 +01:00
Chris Jones
db0acc7b28 Merge dbus branch 2010-08-17 12:58:24 +01:00
Chris Jones
015311ced9 Merge up with trunk 2010-08-17 12:45:12 +01:00
Julien Nicoulaud
f3ef3c7bbd Fix regexps matching Maven plugins version and goals 2010-08-15 17:24:02 +02:00
Julien Nicoulaud
b70dd7afe2 Maven plugin goals can contain capital letters too 2010-08-12 22:25:56 +02:00
Julien Nicoulaud
299c817714 Add support for plugins goals, document 2010-08-09 20:07:33 +02:00
Julien Nicoulaud
e6fe1768bd Split Maven plugin to a separate file and add support for both Apache and Codehaus plugins 2010-08-09 13:57:06 +02:00
Julien Nicoulaud
0ccb264f3c Add an URL handler for Apache Maven plugins 2010-08-09 11:44:42 +02:00
Chris Jones
8ebfd7c89f Refactor pid cwd finding to trap exceptions 2010-07-27 13:03:55 +01:00
Chris Jones
f20b437caf Allow disabling of dbus from the command line, and make use of that when spawning a new terminator process 2010-07-22 13:59:06 +01:00
Chris Jones
93104c42a2 Add debugging and hash the X11 display (suggestion from Andrea) 2010-07-22 09:24:47 +01:00
Chris Jones
9044ffabb0 Land a modified and extended patch from Andrea Corbellini that adds a dbus server and a new default behaviour to use the dbus server to make terminator processes singletons 2010-07-21 23:17:34 +01:00
Peter B. Jørgensen
7d28aba91c merge with trunk 2010-07-15 16:43:58 +02:00
Peter B. Jørgensen
89230457a1 only prevent faulty reappearing when hide_on_lose_focus is enabled 2010-07-15 16:42:31 +02:00
Peter B. Jørgensen
b30197de06 Fixed window flicker and/or reappearing when hide on lose focus is enabled 2010-07-14 15:31:13 +02:00
Peter B. Jørgensen
6a26db7465 Fixed window not getting input focus when skip taskbar is set 2010-07-13 15:07:40 +02:00
Chris Jones
bab0cc27d5 Make font antialiasing configurable 2010-07-13 13:50:33 +01:00
Peter B. Jørgensen
656c2b3b76 Merged with trunk 2010-07-13 14:19:42 +02:00
Chris Jones
5395c21f64 Give the prefs window a decent window title 2010-07-04 18:53:18 +01:00
Chris Jones
d78cb9c92b Prepare for 0.94 release 2010-07-04 18:49:43 +01:00
Chris Jones
e4890ebdd1 Describe and restore custom tab labels in the layout. Closes LP #568500 2010-07-04 17:22:39 +01:00
Chris Jones
4a2b8c77e1 Allow the split menu items to be translatable. Closes LP #575827 2010-07-03 21:46:41 +01:00
Chris Jones
31e197d1bc Try to always keep a focussed terminal. Closes LP #570706 2010-07-03 21:30:17 +01:00
Chris Jones
7522bb2b9d Deprecate the hide_tabbar config option and instead add a 'hidden' value to tab_position and update the code/UI/docs accordingly. 2010-07-03 20:42:33 +01:00
Chris Jones
d1989ec4a6 When a window loses focus, update all the terminals within to show the inactive titlebar colours. Closes LP #576276 2010-07-03 20:00:04 +01:00
Chris Jones
597f4ff75d Expose keybindings for setting the broadcast modes. Closes LP #598410 2010-07-03 18:54:53 +01:00
Chris Jones
6c2d6bbea6 Clear window urgency hint when a window gains focus. Closes LP #600280 2010-07-03 18:22:59 +01:00
Chris Jones
9d2f5d6466 Clear the WM urgency hint on all mouse clicks. Partially closes LP #600280 2010-07-03 18:14:37 +01:00
Chris Jones
baa7c81593 When closing a window, formally close all the terminals within. Closes LP #308025 2010-07-03 18:08:46 +01:00
Chris Jones
581a738c62 Preserve cwd into new windows. Closes LP #597651 2010-07-03 16:16:50 +01:00
Chris Jones
838d27bb60 Be even more defensive about URL handling. Closes LP #554571 2010-07-03 16:05:15 +01:00
Chris Jones
fdf169a2fd Only display the menu item for Preferences if there is support for Gtk Builder 2010-07-02 11:09:21 +01:00
Chris Jones
5fb0f518c8 Apply a slightly modified version of Mike Miller's patch to improve backwards compatibility with older pygtk. Closes LP #589216 2010-06-30 11:33:34 +01:00
Chris Jones
29ee8ace1b Add copy_on_selection to the profile editor 2010-06-24 21:56:18 +01:00
Chris Jones
0533af23ae Enable selecting a profile's encoding via the prefs UI. Closes LP #597340 2010-06-23 12:03:04 +01:00
Chris Jones
b13d7fc43c Remove a spurious print 2010-06-23 07:30:59 +01:00
Chris Jones
45a9c26cf2 Switch the plugin prefs pane back to live loading/unloading of plugins without silly compromises 2010-06-23 00:48:06 +01:00
Chris Jones
70a66ee218 Switch the plugin enabling/disabling to not work online, but to save the state for later 2010-06-21 22:44:09 +01:00
Chris Jones
51fe811b85 Add a method for determining if a plugin is permanent - i.e. if it cannot be unloaded 2010-06-20 23:56:11 +01:00
Chris Jones
80289911f1 Some plugins can't ever be disabled. Detect and obey 2010-06-20 22:56:19 +01:00
Chris Jones
c649da9949 Partially populate the Plugin tab in the prefs UI so plugins can be enabled and disabled 2010-06-20 22:41:55 +01:00
Chris Jones
6bc310d58c Also grandfather in the apturl url handler plugin, since that was previously enabled by default 2010-06-18 13:08:17 +01:00
Chris Jones
69e4ae1875 Switch plugins from being enabled by default to being disabled by default. An annoying change to have to make, but since almost nobody is using them yet, hopefully nobody will notice 2010-06-18 13:07:02 +01:00
Chris Jones
df43e67239 Fix pasting so we always use our own paste method rather than VTE's so pasting with the keyboard shortcut works in groups 2010-06-17 14:08:54 +01:00
Chris Jones
5b5739df0e Add some more debugging to layout creation 2010-06-15 15:19:05 +01:00
Chris Jones
a30ae88e2b Add a plugin that allows one to watch a terminal for activity 2010-06-15 14:59:27 +01:00
Chris Jones
6cdd57c67c This is an ugly, ugly method to be adding, but it's probably necessary, sadly 2010-06-15 14:54:43 +01:00
Chris Jones
e753470633 We should destroy the gerr dialog in the context it exists in 2010-06-15 14:54:24 +01:00
Chris Jones
6dce92b1a0 Make pylint happier with plugins 2010-06-10 16:56:17 +01:00
Chris Jones
ff9763cf2b Make pylint happy and simplify the handling of the savefile dialog 2010-06-10 16:53:53 +01:00
Chris Jones
44f99c7738 Remove an unused demo/test plugin 2010-06-10 16:53:23 +01:00
Chris Jones
3c0d7bd566 Fix cancellation of Terminalshot dialog 2010-06-10 14:51:24 +01:00
Chris Jones
6229de7387 Add a plugin that saves screenshots of individual terminals 2010-06-10 13:52:36 +01:00
Peter Bjørn Jørgensen
4a01a4ea5b Merged with trunk 2010-06-04 00:16:42 +02:00
Chris Jones
cdf5f9f14e Improve label used to describe titlebar foreground colour. Closes LP #576279 2010-06-03 22:54:22 +01:00
Chris Jones
3018ebee21 Drop an avoidable incompatibility with python 2.4. Closes LP #589200 2010-06-03 16:37:58 +01:00
Chris Jones
f2c62067c1 Handle creation of multiple tabs in a layout. Closes LP #583041 2010-05-25 20:08:20 +02:00
Peter Bjørn Jørgensen
2ef3964b39 Merged with trunk 2010-05-17 22:50:03 +02:00
Peter Bjørn Jørgensen
e67c092600 Merged with trunk 2010-05-15 20:21:21 +02:00
Peter Bjørn Jørgensen
b956c0ede3 Implemented the show/hide feature
added the following options to make terminator
	able to behave like a drop-down terminal:
		hide from taskbar
		always on top
		hide on lose focus (experimental)
		sticky (Show on all workspaces)
2010-05-15 20:07:07 +02:00
Chris Jones
3aba98dade Don't override the default profile when deleting that profile, and don't explode if a profile goes away 2010-05-15 16:00:09 +02:00
Chris Jones
c64d71b809 Restore the command line -p option to specify a particular profile. This is then enforced as the default for new terminals 2010-05-15 15:51:20 +02:00
Chris Jones
622604d9b5 Appease the folks who demand totally hidden titlebars, by making the titlebars able to totally hide. This does not yet fully address the issue of showing group membership and/or event transmission/reception state while grouped without losing a line of terminal to forced titlebar display. That can come later if it is reasonably possible 2010-05-15 15:30:13 +02:00
Chris Jones
4184acef3c Add a fixme 2010-05-15 14:18:22 +02:00
Chris Jones
d12223769b guard against gtk/pygtk not letting us call set_orientation() on gtk.Box 2010-05-13 09:17:30 +02:00
Chris Jones
630da9b06d I think tabs should always be homogeneous. Let's see how that works out 2010-05-05 12:53:01 +01:00
Chris Jones
4fca314259 Note the deprecation of Terminal::get_cursor_position 2010-05-05 09:46:09 +01:00
Chris Jones
785ed8b591 Apply modified patch from Juan Manuel Santos to improve the directional navigation by not relying on bogus assumptions about the behaviour of get_cusor_position 2010-05-05 09:44:55 +01:00
Chris Jones
70ab3b0f71 Store terminal titles in layouts 2010-04-22 23:14:03 +01:00
Chris Jones
f02f08314e Make inserted pages when splitting also be reorderable. Closes LP #563445 2010-04-20 12:38:49 +01:00
Chris Jones
5eba5c7751 Actually set a profile if it's specified in a layout 2010-04-20 12:30:43 +01:00
Chris Jones
dfaaec5458 Store a Terminal's group in a layout, if it has one. Restore it too. Closes LP #566925 2010-04-19 23:41:54 +01:00
Chris Jones
682f0bd3f7 Apply some policy to the original cwd we inherit - if it's / then our parent process is probably some kind of app launcher, so we'll try to be helpful and make our cwd be ~ 2010-04-18 09:49:32 +01:00
Chris Jones
b24425f1d3 Release actions for 0.93 2010-04-15 21:15:02 +01:00
Chris Jones
6a5f3381a7 Block tab creation while zoomed. Closes LP #563911 2010-04-15 20:32:25 +01:00
Chris Jones
9a90d48137 Wrap our dbg/err prints in an exception handler, since std.stderr is unfunctional in certain circumstances. Closes LP #562490 2010-04-15 12:59:19 +01:00
Chris Jones
291f4d6ff2 Set the GtkCellRendererAccel used to represent keybindings into its OTHER mode so it handles Ctrl-Tab. I don't fully understand the implications of this, but in testing it seems to work. Closes LP #561710 2010-04-15 12:49:01 +01:00
Chris Jones
4b6724c8a4 Make the palette selection handle custom palettes better and ignore case when matching colourschemes 2010-04-15 12:31:49 +01:00
Chris Jones
a9707f4bbf Handle custom colourschemes better 2010-04-15 12:22:54 +01:00
Chris Jones
4f6235bc5e Thanks to some #pygtk folks we now have a way out of the ridiculous 16bit colour values that Gtk+ gives us from the ColorPicker widget. Now we get the 8bit values that everyone is used to 2010-04-13 23:17:52 +01:00
Chris Jones
5ac45778d5 Relax the checking of navigability slightly, to handle the case where handle_size=0. Closes LP #562039 2010-04-13 12:55:10 +01:00
Chris Jones
f05986fe72 Update the configuration when text entries change, not when they're activated 2010-04-13 12:52:16 +01:00
Chris Jones
909d424911 Remove duplicate alternate_screen_scroll 2010-04-13 12:31:37 +01:00
Chris Jones
da8df9daa2 seriously, pygtk does some weird things. Make the url handler even more defensive about which scheme it chooses. Closes LP #554571 2010-04-12 22:45:45 +01:00
Chris Jones
bd3da1e8ff When removing a notebook child and adding a new one we need to do it in one move so we can preserve the tab ordering. Closes LP #490627 2010-04-12 21:35:24 +01:00
Chris Jones
51ae3cd95a Set a tab as reorderable after adding it, not before 2010-04-11 23:08:00 +01:00
Chris Jones
c284baa7c0 This is how everyone else styles their notebook tab close buttons. It's a bit bigger than we had before, but that's the price you pay I guess. Closes LP #559185 2010-04-11 18:55:35 +01:00
Chris Jones
58921fbcc7 Include the final page of children in the list of children of the Notebook. Closes LP #546665 2010-04-11 15:51:18 +01:00
Chris Jones
463ea45d3a When removing a Notebook, make sure focus goes to a terminal. Closes LP #558375 2010-04-11 15:31:42 +01:00
Chris Jones
4b1b58544e gtk.Widget.has_focus() is too new, look for gtk.HAS_FOCUS in flags() instead 2010-04-11 00:54:07 +01:00
Chris Jones
68da0b24b3 Tidy up some focus grabbing on new Terminal creation. Closes LP #558376 2010-04-09 12:58:46 +01:00
Chris Jones
71e6acd6e4 Prevent splitting while a terminal is maximised/zoomed. Closes LP #558330 2010-04-09 12:38:33 +01:00
Chris Jones
29015d7969 Apply slightly modified patch from Kees Cook which allows configuration of VTE's alternate screen scrolling. Closes LP #558832 2010-04-09 12:34:05 +01:00
Chris Jones
5c43b371e9 Handle on_hide_window() being called with no data. It may actually always be called that way 2010-04-09 12:30:47 +01:00
Chris Jones
f9352625c4 Tidy up handle size handling a little, but it is still insufficient, albeit not regressive 2010-04-07 22:23:31 +01:00
Chris Jones
09e8f37cb2 Administrivia for 0.92 2010-04-07 21:58:51 +01:00
Chris Jones
b3e1f3750b Handle older gtk versions that lack gtk.show_uri(), making them use xdg-open with a fallback to webbrowser.open(). Closes LP#554571 2010-04-07 12:27:39 +01:00
Chris Jones
240d81c5cd Add another layer of protection against weird things making us set a stupid geometry hint that stops us from being able to resize smaller 2010-04-07 12:17:11 +01:00
Chris Jones
cf8cf9a506 Take the easy way out of fixing geometry hinting to work with Notebooks - cowardly refuse to do it. 2010-04-07 12:14:31 +01:00
Chris Jones
f488231ad1 Fix a couple of subtle bugs relating to closing tabs. Closes LP #556490 2010-04-06 23:45:05 +01:00
Chris Jones
182a0971bb Switch the default to a palette more like 0.14 had 2010-04-06 22:55:40 +01:00
Chris Jones
87283a927a Hook up the palette options in Preferences 2010-04-06 22:36:09 +01:00
Chris Jones
fd8bc65654 remove enable_real_transparency setting and instead attempt to determine it based on the actual capabilities of the current display 2010-04-06 21:11:11 +01:00
Chris Jones
dec2e53cbb Even if we have an RGBA colourmap, we don't really want one unless we have compositing going on 2010-04-06 20:51:29 +01:00
Chris Jones
ebb262834a Don't store color_scheme in the config file in addition to storing foreground/background colours. We can use those to infer which scheme is in use easily enough 2010-04-06 12:36:45 +01:00
Chris Jones
2b7d22be00 Pick what should be a slightly more reasonable default palette 2010-04-06 12:24:33 +01:00
Chris Jones
23dd4e0b2a Attempt to use the VTE API more correctly, working around a python bindings bug in vte 0.24 2010-04-05 23:28:03 +01:00
Chris Jones
21885c424f Don't spit out multiple identical errors when failing to open a config file 2010-04-05 23:06:30 +01:00
Chris Jones
13a140da7d Switch from using deskbar's key binding interface to python-keybinder which is essentially the same code, but as a standalone module, thus reducing the (albeit soft) dependencies 2010-04-02 17:06:39 +01:00
Chris Jones
0e5e66cce0 We can't ask windows to be less than 1x1 2010-04-02 17:04:54 +01:00
Chris Jones
364a833324 Add support for preserving cwd across tab creation events. Fixes a regression reported by jkaker 2010-04-02 16:45:32 +01:00
Chris Jones
6a2d75c33c Merge (with minor modifications) some fixes for safety wrt font names and rounding background darkness values 2010-04-02 15:04:44 +01:00
Andrew Felske
c77a23a032 Remove TODO for previous commit. 2010-04-02 01:46:46 +00:00
Andrew Felske
7768db9081 Make sure system font name isn't None before trying to set it. Also round the background darkness float value to two decimal places. 2010-04-02 01:21:18 +00:00
Chris Jones
efafd65221 Update tab bar position when it is changed, if apropriate 2010-04-01 23:15:42 +01:00
Chris Jones
fba64128e6 Flip the tab label widget group into a vertical orientation if the tab bar is on the left/right. Closes LP #553426 2010-04-01 23:07:55 +01:00
Chris Jones
d6e011281e Prevent colourscheme oddness setting null foreground/background colours. Closes LP #553383 2010-04-01 22:05:14 +01:00
Chris Jones
dde412a53b Fix handling of background_darkness changing. Closes LP #553276 2010-04-01 14:39:38 +01:00
Chris Jones
14e4b4d3fe Fix --working-directory. Closes LP #552497 2010-03-31 14:02:55 +01:00
Chris Jones
ce2baa8d42 update versions and changelogs for 0.91 2010-03-31 10:57:39 +01:00
Chris Jones
1afd5a3ced Fix the handler for handle size changing 2010-03-31 09:26:09 +01:00
Chris Jones
15c0138dc3 Fix the config filename when saving 2010-03-31 09:25:45 +01:00
Chris Jones
2f5c494f68 Go back to using the real config file name 2010-03-30 23:49:05 +01:00
Chris Jones
0232e0b19a Remove some unused default configs 2010-03-30 22:50:46 +01:00
Chris Jones
bbdf055477 Rather than having people use an ugly value of -1 for infinite scrollback, have it as a separate setting, with all of the extra gubbins involved in making that work neatly. Closes LP #532513 2010-03-24 13:22:37 +00:00
Chris Jones
82af1ddba8 We shouldn't need to push {un,}group_tab up to Terminator() and we haven't been handling it anyway 2010-03-23 21:40:03 +00:00
Chris Jones
f4b1c2cce0 If a profile is configured to not show the titlebar, actually only show 2px of it until it's clicked on. Poor man's autohide, but it achieves all of my objectives - the colour is hinted to people with no visible titlebar and they can still summon the grouping menu 2010-03-23 20:48:04 +00:00
Chris Jones
1a6f659a40 The second part of that being, actually set it to 1 and not True 2010-03-21 00:49:22 +00:00
Chris Jones
53ef40d847 Don't blat options.debug with a simple truth when it should be an integer 2010-03-21 00:48:39 +00:00
Chris Jones
16bc247b0e Attach the debug server to the context menu 2010-03-19 22:16:08 +00:00
Chris Jones
837bd3c5d2 Start working on optional GNOME Session management 2010-03-19 12:39:44 +00:00
Chris Jones
e7c297277f Save the config when adding or removing layouts 2010-03-18 23:11:18 +00:00
Chris Jones
8ed1613951 Describe the current profile if it's non-default 2010-03-18 23:11:07 +00:00
Chris Jones
b4d259f053 Fix splitting from the context menu so it sends the cwd 2010-03-11 14:30:07 +00:00
Chris Jones
2164f32ddb Kludge the layout creation until it works 2010-03-11 13:04:01 +00:00
Chris Jones
8610a845bc Implement a get_children() method in our Container widgets to override gtk.Container.get_children() with something that guarantees ordering in the returned list 2010-03-10 22:51:33 +00:00
Chris Jones
4cb4a9bc48 Deepcopy the layout before we trash it as we unwind it into a tree. 2010-03-10 12:52:50 +00:00
Chris Jones
2e116b09eb inhibit config saving while we're loading the config into the GUI, otherwise it saves a whole bunch for no good reason. Update the LayoutEditor's idea of the layout name when it's renamed. Set the layout item command/profile to the default values if there are no stored values. Save the layout item command/profile when they change. 2010-03-10 12:52:25 +00:00
Chris Jones
2ce78b7903 Add the ability to inhibit config saving 2010-03-10 12:51:16 +00:00
Chris Jones
b7e9c4d02c Switch from static storing of values to storing them immediately when the user changes them. This needs a whole heap of refactoring to make the setter methods more generic, and we need to think about all the calls to Concig.save() 2010-03-09 13:09:07 +00:00
Chris Jones
4d1d293804 Update to use the new split_axis method signature 2010-03-08 21:46:45 +00:00
Chris Jones
27d8223a28 Change all GUI object names to use underscores instead of minus signs, so glade doesn't suggest syntactically invalid signal handler names 2010-03-06 11:09:32 +00:00
Chris Jones
ccc68c9f95 Start adding handlers for all of the objects. We should do instant application instead of the crazy huge set/store methods 2010-03-06 10:13:46 +00:00
Chris Jones
706180976e Set cwd when spawning new shells to be that of the shell being split. Does not currently persist across tab creations 2010-03-05 22:44:38 +00:00
Chris Jones
b8703fdecb Layout item handling is now done via a separate controller object. 2010-03-05 22:20:48 +00:00
Chris Jones
8732754794 Don't grab focus when we're respawning a child 2010-03-05 19:54:39 +00:00
Chris Jones
b617becdd8 Add the Ambience colour theme, add the layout contents TreeView, rework some Cursor settings 2010-03-05 12:42:58 +00:00
Chris Jones
67d9e136f3 Add an Ambience colour scheme, to match the new GNOME Terminal profile in Lucid 2010-03-05 12:29:51 +00:00
Chris Jones
ffc6a67e03 Don't blat the default layout with an empty one 2010-03-05 12:29:02 +00:00
Chris Jones
7cc7ef80d3 Duck typing. This is a defence against Client Side Decorating in Gtk+ and other random weirdnesses 2010-03-04 11:59:36 +00:00
Chris Jones
94f0fd194c get_children() is unhelpful in this context for some reason, use get_child() instead 2010-03-02 21:01:20 +00:00
Chris Jones
cc77c3bc4e Drag and drop ordering continues to be insane. Refactor it so we're not double-negativing. This appears to fix everything about it 2010-03-02 20:38:28 +00:00
Chris Jones
8e0c5aacbc pylint fix, add a docstring 2010-03-02 20:37:52 +00:00
Chris Jones
79c48b21ca fix incorrect method signature 2010-03-02 20:37:41 +00:00
Chris Jones
950da4dec3 pylint cleanups 2010-03-02 20:35:06 +00:00
Chris Jones
b213e76461 Fix up drag and drop to work more often, between more widgets 2010-03-02 12:39:47 +00:00
Chris Jones
afdbaa3fe6 Upgrade configobj to 4.7.2 2010-03-02 00:25:44 +00:00
Chris Jones
45708d267b Remove terminal zoom scaling handler with the correct signal name, and be more errorial when we're refusing to change the font size 2010-02-27 14:38:01 +00:00
Chris Jones
da7e7850b0 Add support for window sizes in the layout 2010-02-27 15:18:08 +01:00
Chris Jones
499206f3e9 Config.options is not suitable for use as Terminal layout command overrides. Add a simple thing that is 2010-02-27 15:02:16 +01:00
Chris Jones
64a0f70c41 Build out support for containers to report a position to the layout. This now works for Windows, but will require significantly more work for Paneds 2010-02-27 14:55:38 +01:00
Chris Jones
d51d9cd700 Stop using goocanvas for now 2010-02-27 14:06:53 +01:00
Chris Jones
98c3979b88 Don't debug print the layout 2010-02-27 14:05:08 +01:00
Chris Jones
7d80561710 Create paned layouts in a consistent order 2010-02-27 14:04:50 +01:00
Chris Jones
684c6875cb Start implementing layout creation in Notebook 2010-02-27 14:04:15 +01:00
Chris Jones
9b6cdcd4ac Previous split_axis() changes were insufficient. Apply the changes across all of the Containers and improve the implementation generally 2010-02-27 13:30:38 +01:00
Chris Jones
94a568ee1c Drag and drop ordering was not paying attention to the requested order. Now it is 2010-02-27 11:26:30 +01:00
Chris Jones
bdac9e620a Revert that and instead make the Terminal usage of the options object be more optional 2010-02-21 11:58:17 +00:00
Chris Jones
f9e5a69c71 Initialise command_line_options 2010-02-21 11:55:29 +00:00
Chris Jones
ad1b1ecc79 Fix drag and drop, which had become horribly sensitive to the internal widget structure of Terminal 2010-02-20 23:05:51 +00:00
Chris Jones
b1e4d7710d Add two new debugging option strings for filtering on specific classes/methods 2010-02-17 21:16:52 +01:00
Chris Jones
54305c8254 Add basic support for filtering in dbg() to reduce the noise if someone only cares about a few classes/methods 2010-02-17 21:15:33 +01:00
Chris Jones
8e8c33b5b8 Make this debug actually be a debug 2010-02-17 21:04:57 +01:00
Chris Jones
71919fce55 Create a layout if requested, otherwise create a default one or just open a window 2010-02-17 20:57:05 +01:00
Chris Jones
4fcf72a5ba Preserve layout object properties when constructing the tree 2010-02-17 20:47:33 +01:00
Chris Jones
b78938a145 Refactor the next/prev directional navigation to work properly 2010-02-14 22:03:06 +00:00
Chris Jones
fdb5784b15 Simplest possible GooCanvas usage for the layout preview. 2010-02-12 08:16:18 +00:00
Chris Jones
bfb3bec7d4 Set foreground colour properly, this was missed from the epic-refactor work 2010-02-11 22:14:07 +00:00
Chris Jones
c387197b93 Add preferences dialog entries for icon bell and generally re-arrange the bell options into their own section 2010-02-11 13:45:02 +00:00
Chris Jones
b3eaa85cc9 default to an icon based terminal bell indication, and add such an icon from Tango. 2010-02-11 13:05:12 +00:00
Chris Jones
07a142c6a0 Cache gconf values, and handle them changing 2010-02-09 22:33:47 +00:00
Chris Jones
5520fe11c8 Remove ad-hoc titlebar visibility control and make the preferences setting be applied by Terminal::reconfigure() 2010-02-09 13:08:07 +00:00
Chris Jones
79a340539b Make the titlebar presence configurable by config file and context menu. If it's missing, draw a frame around the Terminal, to indicae colour 2010-02-09 00:23:21 +00:00
Chris Jones
eb7fcf5189 Expose cursor blinking and colour in the prefs editor 2010-02-08 22:10:59 +00:00
Chris Jones
8307951001 Catch any/all exceptions from config file parsing 2010-02-08 21:11:38 +00:00
Chris Jones
79381c61d0 Edit new profiles/layouts as they are created. Partly because the default names suck, but partly to clearly hint that they are editable 2010-02-08 21:03:43 +00:00
Chris Jones
ad5c927d15 Add a section to the global config for setting the various fg/bg colours of the titlebars 2010-02-08 20:22:08 +00:00
Chris Jones
7450a57013 Reparse keybindings after the prefs window is OK'd 2010-02-07 22:32:55 +00:00
Chris Jones
f99fbf1094 Don't fail to find a plugin section 2010-02-07 12:41:08 +00:00
Chris Jones
8806c97612 We need to improve the vte mouse enter handler 2010-02-07 11:59:57 +00:00
Emmanuel Bretelle
4c36b25341 Workaround missing 'plugins' entry in configuration 2010-02-06 16:02:16 +01:00
Chris Jones
41a8b2372c Undo my madness 2010-02-05 00:16:24 +00:00
Chris Jones
f8c8a71633 This was a dumb idea 2010-02-04 23:56:17 +00:00
Chris Jones
3444087941 Set the default layout to be 'default' 2010-02-04 23:52:43 +00:00
Chris Jones
882f325a73 Move all the layout stuff onto a separate branch so trunk can shape up for 0.90 2010-02-04 23:24:27 +00:00
Chris Jones
102463acb3 Skip widget pixbuf generation for older gtks, not newer ones 2010-02-04 01:00:35 +00:00
Chris Jones
15ea22b4ff Only spawn a child in the sibling if we created it 2010-02-04 00:59:11 +00:00
Chris Jones
1aadbae30b Rework layout config to flatten and build up trees 2010-02-02 00:39:41 +00:00
Chris Jones
9ac5f913fa Ensure we don't set a zero sized font when zooming. Doing so causes vte to explode 2010-02-01 20:15:53 +00:00
Chris Jones
678057a0d3 First run at layout loading, creating, enumerating and saving. It sucks and works poorly at the moment, but here it is 2010-02-01 12:11:44 +00:00
Chris Jones
5392585893 previous_selection was being mistakenly overloaded for profiles and layouts. split it out into two variables 2010-01-31 16:24:45 +00:00
Chris Jones
f5dfd404c9 run the layouts config sections through dict_dff to avoid saving defaults unnecessarily 2010-01-31 16:24:20 +00:00
Chris Jones
a3aa45a43d Flesh out the Layouts tab a little 2010-01-31 16:14:25 +00:00
Chris Jones
f1fe0bbf20 Stop the default profile/layout from being editable 2010-01-30 15:33:37 +00:00
Chris Jones
0501ceb8d4 The beginnings of a layout editor 2010-01-30 00:27:57 +00:00
Chris Jones
061aef9fd8 Glade changes for the Layouts tab 2010-01-30 00:05:09 +00:00
Chris Jones
a6f065aedd Friendly name for the terminator spawning keyboard shortcut 2010-01-30 00:04:55 +00:00
Chris Jones
e3438b3bdf Fix up the startup cwd tracking so self-spawning works in non-absolute paths, and handle the key_new_window => key_new_terminator switch 2010-01-29 23:52:21 +00:00
Chris Jones
a5ac05bcc9 Add a new shortcut to take over duties of spawning a new Terminator process 2010-01-29 23:49:16 +00:00
Chris Jones
ece0cfdde0 Refactor the creation of a new Window/Terminal pair and joining them, into Terminator, and call it from the top level terminator script 2010-01-29 23:41:18 +00:00
Chris Jones
1236a85370 Windows need to commit suicide when their last terminal exits. Previously there was an assumption of only having one window, so monitoring the global terminal list was acceptable. no more 2010-01-29 23:37:25 +00:00
Chris Jones
4b58b0c738 Refactor navigate_terminals from Terminator to Window 2010-01-29 13:12:33 +00:00
Chris Jones
789092bb07 Refactor some code from Notebook into a standalone function that finds all descendant widgets of a given container that are Containers or Terminals and returns lists of them, and use this when closing a tab. This function will form the basis of layout enumeration 2010-01-28 13:41:44 +00:00
Chris Jones
0817d2651d refactor tab creation signals to propagate to the Window of a Terminal, not Terminator 2010-01-28 12:49:38 +00:00
Chris Jones
b3435e534f tidy up some FIXME stuff, including removing a duplicate call to gtk.Button.set_relief() that can't possibly be needed 2010-01-26 12:39:44 +00:00
Chris Jones
a8748fbbeb This FIXME is fixed 2010-01-26 11:06:28 +00:00
Chris Jones
8aebcf62a2 Signal additions now return a handler 2010-01-26 11:05:00 +00:00
Chris Jones
02a5c07ccf Remove unused argument to store_profile_values() 2010-01-26 00:30:43 +00:00
Chris Jones
9bb77729b4 Enhance earlier os.kill() commit by ignoring all failures from that 2010-01-25 13:00:29 +00:00
Chris Jones
23ccad813d Call Signalman::remove_all() when each of the Container subclasses commits suicide. SHould stop any stale signal handler connections existing 2010-01-25 12:55:38 +00:00
Chris Jones
8d8681e63f This makes us very UNIX dependent (as if we weren't before anyway), but we now specifically send a SIGHUP to the child of a terminal when that terminal is explicitly close()d 2010-01-25 12:35:34 +00:00
Chris Jones
60983e3584 Handle popup menu being triggered without a full event, e.g. when the menu keyboard key is pressed 2010-01-25 12:26:32 +00:00
Chris Jones
ab02add397 Make the move-tab keyboard shortcuts work 2010-01-24 22:15:54 +00:00
Chris Jones
9f348c349a Fix backspace/delete bindings to actually do what they say they should, per GNOME Terminal behaviour. Closes LP #511875 2010-01-24 15:45:47 +00:00
Chris Jones
05a61f802d FIXME another method that just does a pass 2010-01-24 13:18:50 +00:00
Chris Jones
6a9febe952 Signalman doesn't need to whine about leftover signals unless we're debugging 2010-01-24 12:58:30 +00:00
Chris Jones
489bc2cbb6 Slight refactoring of each derived Container's add() to handle all the Terminal signals the same way. 2010-01-24 12:55:03 +00:00
Chris Jones
6beba121be further pylint appeasement 2010-01-23 00:50:28 +00:00
Chris Jones
2ba83ab4cd Make prefseditor.py more pylint friendly 2010-01-22 22:53:23 +00:00
Chris Jones
41897508e1 pylint cleaning 2010-01-22 19:08:12 +00:00
Chris Jones
bc308c30e4 Fix minor pylint induced syntax issue 2010-01-22 19:04:37 +00:00
Chris Jones
5c0a882aaa minor pylint adjustements 2010-01-22 19:03:58 +00:00
Chris Jones
22c2d64707 remove an unused variable and shorten a line to appease pylint 2010-01-22 19:00:53 +00:00
Chris Jones
62c0cef759 Remove an unused variable 2010-01-22 18:57:31 +00:00
Chris Jones
9e625ed16b split a long line 2010-01-22 18:56:12 +00:00
Chris Jones
ff56fedcf0 Refactor save() a little to reduce the branch complexity, and tidy up some other parts to appease pylint 2010-01-22 18:54:36 +00:00
Chris Jones
9ef6122a97 Set the background type before updating the background tab, so it's actually arranged correctly 2010-01-22 18:39:09 +00:00
Chris Jones
055e6f837b This FIXME is no longer true 2010-01-22 13:24:42 +00:00
Chris Jones
d025954c60 Make prefseditor.py enable debugging when it's run directly 2010-01-22 13:00:26 +00:00
Chris Jones
e9e1101d26 Pay attention to the other optional value for the scrollbar_position when reconfiguring a Terminal 2010-01-21 22:38:52 +00:00
Chris Jones
df992c284e Look up GNOME system font and focus settings via gconf 2010-01-21 21:39:05 +00:00
Chris Jones
c00cf071c7 Fix the palette default to be the same as gtkcolorpickers produce, i.e. lower case 2010-01-21 21:20:01 +00:00
Chris Jones
4822530ce2 Fix all the GtkAdjustments in the glade file 2010-01-21 21:10:24 +00:00
Chris Jones
a5222ba6b2 Add various bits of debugging and fix solid backgrounds 2010-01-21 20:58:07 +00:00
Chris Jones
356f9e90bf fix up transparent background functioning 2010-01-21 20:36:18 +00:00
Chris Jones
7b0bb5818d dbg() which kind of colormap we're setting 2010-01-21 20:36:02 +00:00
Chris Jones
e3cbb3e717 Fix a prefs editor guiget() call, and set the background type in the config file 2010-01-21 20:35:43 +00:00
Chris Jones
81e00fca0b Mask some incompatibilities with older gtk 2010-01-21 13:23:39 +00:00
Chris Jones
21caae2517 Start implementing a tab moving signal. It isn't handled yet. This is a regression from trunk until it is handled 2010-01-21 13:02:37 +00:00
Chris Jones
0eb6994620 Add the (un)group_(all|tab) connections that should have been in the previous commit 2010-01-21 13:00:50 +00:00
Chris Jones
14f98c1b89 Implement (un)group_all and (un)group_tab 2010-01-21 12:55:57 +00:00
Chris Jones
9c72b6287d Implement tab changing keyboard shortcuts 2010-01-21 12:33:42 +00:00
Chris Jones
0f5b6e97a7 Fix WM_URGENT removal by using the right signal name 2010-01-21 12:14:12 +00:00
Chris Jones
e2db10fc09 Implement urgent bell handler 2010-01-21 00:13:56 +00:00
Chris Jones
29d0414a04 Fix inverted groupsend handling and generally make it clearer what we mean here by not using the magic groupsend type values 2010-01-20 23:46:13 +00:00
Chris Jones
a10babeb5d Port geometry hinting from trunk to epic-refactor. HEY THEO. 2010-01-20 23:36:11 +00:00
Chris Jones
021f5cef98 remove the silly old comments in the directional navigation section and add some better ones describing how it works 2010-01-20 19:57:16 +00:00
Chris Jones
ee72ae478f refactor out the last two decisions in the directional navigation so instead of being test code that can only move left, they now move in all four directions 2010-01-20 13:04:14 +00:00
Chris Jones
ddce3a862d URL dragging was broken because Terminator::get_target_terms() makes no assumptions about which terminal to examine, but it used to 2010-01-20 12:11:02 +00:00
Chris Jones
db7b0cc0a0 Directional navigation. Only works for going left yet, see included FIXME 2010-01-20 00:54:35 +00:00
Chris Jones
36631b20e4 Teach Notebook how to hoover itself since it might be called during drag&drop, and refactor its suicide detection into that function 2010-01-19 22:44:05 +00:00
Chris Jones
4a1a65dfbd Make icon setting more rubust 2010-01-19 20:03:05 +00:00
Chris Jones
35910b7a85 Tidy up the email match, and fix the nntp one (thanks dutchie) 2010-01-19 19:44:23 +00:00
Chris Jones
ac95dddfbe start working on a set of methods to walk the widget tree to find the visible ones, and collect their gtk allocation (i.e. where they are and how big they are). This is expected to form the basis of directional navigation and layout display/saving 2010-01-19 13:06:09 +00:00
Chris Jones
5cad06295e Make the prefs editor not explode on cycle_* 2010-01-19 11:22:51 +00:00
Chris Jones
df6a370bf3 This is a very subtle bug, Multiple exception catches need to be a tuple. We were previously creating an exception object *called* NameError when we caught a KeyError 2010-01-19 11:14:01 +00:00
Chris Jones
abe9b24518 Implement titlebar colours 2010-01-18 23:27:22 +00:00
Chris Jones
bdbe359767 Restore -e and -x support 2010-01-18 22:56:43 +00:00
Chris Jones
e6ad61831d Remove unnecessary print statements 2010-01-18 20:40:52 +00:00
Chris Jones
3f214bf686 Restore ctrl-tab/ctrl-shit-tab 2010-01-18 20:39:46 +00:00
Chris Jones
7d08d790e2 port Terminal to use Signalman 2010-01-18 19:48:24 +00:00
Chris Jones
f17fab0610 Slightly improve docstrings 2010-01-18 13:23:50 +00:00
Chris Jones
f015aaebf4 Move test-only files into tests/ 2010-01-18 13:21:03 +00:00
Chris Jones
8ad7ac07b1 Create a new class Signalman which is used to track the glib signals on a widget since at least two of our classes were doing this themselves. Also integrated it into one of those classes, Container() where it is only used by VPaned and HPaned. Also add doctests for it 2010-01-18 13:17:35 +00:00
Chris Jones
8c7218121f get and set palette values 2010-01-15 23:32:38 +00:00
Chris Jones
0e01618dfa isdir is in os.path, not os 2010-01-15 23:32:16 +00:00
Chris Jones
3917ea568b Add tiny test coverage for util.py 2010-01-14 23:48:15 +00:00
Chris Jones
32a3933b6c Add some basic test coverage of factory.py 2010-01-14 23:40:02 +00:00
Chris Jones
9d5d9a286c Add another possible exception to the tomboy keybinding 2010-01-14 23:39:49 +00:00
Chris Jones
aec2dd5add Add minimal, feeble tests for cwd.py 2010-01-14 23:33:06 +00:00
Chris Jones
62d5672a88 Extent Config test coverage, and make del_profile() more robust 2010-01-14 23:29:47 +00:00
Chris Jones
fb0beb42f3 Split out borg doctests and test classes so they work properly with trial 2010-01-14 23:03:47 +00:00
Chris Jones
375d272ee8 make the config directory if it doesn't exist, and don't explode if we can't write it 2010-01-14 22:58:41 +00:00
Chris Jones
8f88537bc5 obvious stupid reason why the email URL matching wasn't working. excess whitespace 2010-01-14 13:52:48 +00:00
Chris Jones
4d216633fc -d now automatically infers the Class::method in dbg(), and -d additionally adds a trailing (filename:line) item. debugserver is now moved to -ddd 2010-01-14 13:15:05 +00:00
Chris Jones
1bcbe94e6a Fix confusion around focus and scrollbar position settings not being consistent 2010-01-13 23:13:19 +00:00
Chris Jones
df7a3b978d The titlebar is no longer optional, it probably never should have been, it's just too complicated 2010-01-13 23:06:42 +00:00
Chris Jones
02c1a482df Add a get_profile() to Config and use it in Terminal::set_profile() to make sure we don't set a profile that already is 2010-01-13 23:02:17 +00:00
Chris Jones
f808a9edc9 set_active triggers the 'activate' signal, which makes sense I suppose, but means we were changing profile to the profile we already were set to, which is a waste 2010-01-13 23:00:42 +00:00
Chris Jones
606ca3707b Extend previous commit to cover the titlebar itself, which previously would suffer subtle focus failures 2010-01-12 01:05:53 +00:00
Chris Jones
8276a6de77 Fix silly focus issue when creating groups - terminals were instantly stealing focus and cancelling the group name creation 2010-01-12 00:58:50 +00:00
Chris Jones
c257a3abff remove old file 2010-01-12 00:49:44 +00:00
Chris Jones
8846328137 scrollbar toggling is now significantly more useful and consistent 2010-01-12 00:33:55 +00:00
Chris Jones
23f469add3 Fix up handle_size to work properly 2010-01-11 23:46:18 +00:00
Chris Jones
adfaf600fa Store the command line options in Config rather than overwriting parts of it, and passing them around 2010-01-11 20:56:30 +00:00
Chris Jones
257cc3ead6 Remove the old terminator.py, rename newterminator.py accordingly and update all the references to it 2010-01-11 20:06:53 +00:00
Chris Jones
949dc81574 Clear up some import errors found by pyflakes 2010-01-11 20:03:54 +00:00
Chris Jones
75b5cd11cf Terminator::reconfigure_terminals should just be called reconfigure, and needs to start paying attention to global values 2010-01-11 10:28:47 +00:00
Chris Jones
7a06c86310 spinbutton gives us a float, but we should store an int 2010-01-11 10:10:35 +00:00
Chris Jones
b8aac8874a Disable DEBUG for now 2010-01-11 10:10:19 +00:00
Chris Jones
5ae299e6da Make the OK button in the preferences editor reconfigure all live terminals 2010-01-10 23:58:05 +00:00
Chris Jones
295aeed2e2 Unset the previous profile selection if we just removed it 2010-01-10 23:54:51 +00:00
Chris Jones
e5d52fee52 Implement most of Terminal::reconfigure 2010-01-10 23:47:55 +00:00
Chris Jones
c5bd227197 Improve indication of what some debugging is 2010-01-10 23:47:36 +00:00
Chris Jones
976e3124f7 two lines of debugging for each Config() lookup is mad, drop it to one 2010-01-10 23:47:15 +00:00
Chris Jones
27d0a13330 print more useful errors when the config file format is invalid, and update the configspec generator to know that our undefined default keybindings are now '' instead of None 2010-01-10 17:36:55 +00:00
Chris Jones
b7fa984a52 config dependent signal handling should be marshalled by Terminal::reconfigure 2010-01-10 17:35:03 +00:00
Chris Jones
be413d3622 Track a couple of pre-existing connection IDs in Terminal.cnxid 2010-01-10 17:17:31 +00:00
Chris Jones
cc11effd3b Store a reference to the signal handlers for config-dependent features, so they can be cancelled later 2010-01-10 17:15:14 +00:00
Chris Jones
da7f1a6ea1 renaming the current profile wasn't updating Config.profile with the new value. Now it is. 2010-01-10 00:53:27 +00:00
Chris Jones
371aebc067 Add the keybinding descriptions 2010-01-10 00:35:38 +00:00
Chris Jones
180ccbbf03 Hook up the keybindings tab in the preferences editor. Loads and saves 2010-01-10 00:20:24 +00:00
Chris Jones
2cc76de609 gtkscale insists on getting float values 2010-01-09 22:27:56 +00:00
Chris Jones
2b7be76004 Move our preferences glade file to terminatorlib/ so we can use the built-in knowledge of where that is on-disk to find the .glade file 2010-01-09 17:49:14 +00:00
Chris Jones
80e0926a05 remove some old data, fix up a few defaults that didn't quite match up with reality, and implement the final bits of functionality to make the OK button DTRT 2010-01-09 17:42:59 +00:00
Chris Jones
92e7eb1dff support adding and removing profiles, and returning their values to Config() when switching between them 2010-01-09 15:51:56 +00:00
Chris Jones
f273c198c9 Finish off the Compatibility tab and the other UI toggles in the profile tabs. 2010-01-09 11:52:30 +00:00
Chris Jones
dd45d51725 fix up all of the profile apart from the palette 2010-01-09 00:47:49 +00:00
Chris Jones
594ee47912 Complete the Terminal Command profile tab. Teach the colour scheme picker how to exist in the config and how to be controlled by the prefs UI 2010-01-08 23:51:45 +00:00
Chris Jones
1924c2f81a fix up the General profile tab in the prefs editor and hook all of its elements up to code 2010-01-08 08:39:21 +00:00
Chris Jones
c14e955310 profilelist is a list, not a callable object 2010-01-08 01:04:06 +00:00
Chris Jones
4aa1b50fe6 Change the way window state config works. Initial workings of preferences window. 2010-01-08 01:02:49 +00:00
Chris Jones
68ade515eb Add support for disabling modules and add CustomCommandsMenu and TestPlugin to it 2010-01-06 00:27:58 +00:00
Chris Jones
8c117ff6e9 Tidy custom_commands plugin up and port it to using our shiny new plugin config API 2010-01-05 22:29:02 +00:00
Chris Jones
7328d9aa4f If plugins have defined extra menu items, insert a spacer before they start 2010-01-05 22:28:14 +00:00
Chris Jones
0b5cf876ba Move the base plugin classes to plugin.py for cleaner importing in additional plugins 2010-01-05 22:22:13 +00:00
Chris Jones
710b8a4834 Plugins that have never given us config before need a dict created for them before they can set values 2010-01-05 22:15:56 +00:00
Chris Jones
299e4cc5a8 Add plugin config API 2010-01-05 21:44:12 +00:00
Emmanuel Bretelle
08b65f8b2a plugins:
* enable custom command using terminal_menu plugin hook
2010-01-05 18:57:46 +01:00
Chris Jones
266b662923 Support --geometry 2010-01-05 12:58:05 +00:00
Chris Jones
1625326838 Support setting the window role 2010-01-05 12:55:05 +00:00
Chris Jones
fe7e03d00f Add some old command line options as dummies, and make some command line options influence the config object. This is probably a poor long-term strategy as it means supplying command line options and saving the config will cause the command line options to be baked into the config 2010-01-05 12:51:53 +00:00
Chris Jones
9744f3ebb6 Add keyword arguments to Window.__init__() for command line options 2010-01-05 12:49:57 +00:00
Chris Jones
58fd86486d Switch to using **kwargs instead of *args for the added flexibility it brings. We need to support keyword arguments for Window.__init__() 2010-01-05 12:49:04 +00:00
Elliot Murphy
7beb3bf424 Hook up doctests so they are discoverable via trial:
trial terminatorlib
2010-01-04 23:47:51 -05:00
Chris Jones
91830e22df Move configobj into its own subdirectory, since its a separate upstream product 2010-01-05 00:03:16 +00:00
Chris Jones
b4370235b5 We don't use this anymore 2010-01-05 00:00:47 +00:00
Chris Jones
dbe683e259 hey look it's 2010 already 2010-01-04 23:56:28 +00:00
Chris Jones
ba63f8fc2b Merge old terminator option parsing into a new file that parses command line arguments and includes them in the loaded config 2010-01-04 23:52:39 +00:00
Chris Jones
723dfef697 Bump the version number to signify the progress of this branch 2010-01-04 23:51:55 +00:00
Chris Jones
42e022a938 Make the factory uglier, but better able to handle not running from inside the library, and make the plugins import from the library. These changes make it possible to run epicrefactor from outside itself, which is necessary to make the top level terminator script work with it 2010-01-04 13:46:55 +00:00
Chris Jones
df9abd4523 Move the test.py launcher to the top level to start shaking out namespace bugs 2010-01-04 13:24:45 +00:00
Chris Jones
be224f3016 Undo previous change that had Factory registering windows and terminals. Instead make them self-register since they already have a Terminator reference anyway. Remove calls to register_terminla from elsewhere. 2010-01-04 13:11:16 +00:00
Chris Jones
293beb2331 our test starter can get away with only depending on Factory now 2010-01-04 13:05:58 +00:00
Chris Jones
6d1831824a Add a policy that if we have no open windows we should quit 2010-01-04 13:05:28 +00:00
Chris Jones
995aa99b2e Teach Factory how to make a Window, and have it register terminals windows automagically 2010-01-04 13:04:46 +00:00
Chris Jones
26f0b2be69 Rename the Profile editor to a general preferences editor and only show a choice of profiles if there's more than one 2010-01-03 17:53:25 +00:00
Chris Jones
6058727cdb Port RainCT's LP Code URL handler to a plugin 2010-01-02 01:40:26 +00:00
Chris Jones
8141a3496d call sys.exit() with doctest failure results 2009-12-30 11:26:22 +00:00
Chris Jones
a13581a4c8 Handle exceptions in a way that doesn't make python 2.5 really angry 2009-12-30 01:50:47 +00:00
Chris Jones
714425dfbe Fix apturl handler name and rename LaunchpadURLHandler to LaunchpadBugURLHandler since we are likely to grow a handler for code URLs 2009-12-30 01:50:18 +00:00
Chris Jones
4cfc1c6fd2 Improve debugging relating to URL mangler plugins 2009-12-30 01:05:51 +00:00
Chris Jones
1e187b0333 make the configspec debug output named better 2009-12-29 01:37:32 +00:00
Chris Jones
98015093d8 Add a test to make sure that we correctly load boolean types as python bools 2009-12-28 22:16:47 +00:00
Chris Jones
dc9ae3363d Add ConfigObj's validate.py and construct a config specification and use it to validate the configuration. Most crucially this causes ConfigObj to know about the correct types it should be converting the different entries into 2009-12-28 22:06:23 +00:00
Chris Jones
f690cd6e5f Get ProfileEditor to the barest state of functionality possible 2009-12-27 02:32:16 +00:00
Chris Jones
4c025273c9 rename and import the profile editor 2009-12-27 01:01:34 +00:00
Chris Jones
896bd1af35 Start the epic refactor of the profile editor 2009-12-27 00:59:44 +00:00
Chris Jones
945a547344 pluralise 2009-12-27 00:59:29 +00:00
Chris Jones
ee81bd4f76 Make the terminal context menu list available profiles and switch between them 2009-12-26 20:09:16 +00:00
Chris Jones
2a56e328ac Add methods to Config to list and delete profiles 2009-12-26 19:52:58 +00:00
Chris Jones
f09e9947cd Make the config loading and saving significantly more functional, but also horrifyingly complex, with very little error handling 2009-12-26 19:43:01 +00:00
Chris Jones
825abbb658 Flesh out Config.load() so it actually loads a config 2009-12-26 13:39:14 +00:00
Chris Jones
5bd1b3f9af Make sure ConfigBase() only uses a copy of DEFAULTS so we never change DEFAULTS, allowing us to add dict_diff() so we can avoid including things in the config file that aren't default 2009-12-26 01:19:42 +00:00
Chris Jones
71fcada828 add a fixme 2009-12-25 21:42:57 +00:00
Chris Jones
07f7906f86 Don't write to stdout, write to a config file, but one with a different name for now 2009-12-25 21:25:31 +00:00
Chris Jones
f91d76e9b4 Add ConfigObj 4.6.0 from http://www.voidspace.org.uk/python/configobj.html. Add a really simple implementation of config saving 2009-12-25 21:22:04 +00:00
Chris Jones
60a1b085b4 Add a utility function for finding ~/.config/terminator and use it in PLuginRegistry to load plugins from the user's homedir 2009-12-24 21:35:07 +00:00
Chris Jones
0a67d73592 Extend the url_handler plugins to include apt: support 2009-12-23 17:30:26 +00:00
Chris Jones
df317bd2cd mildly change the debugging output of objects, and handle ^C a little better 2009-12-23 16:40:54 +00:00
Chris Jones
f33dc6f28a Expand Config() test coverage a little 2009-12-23 10:09:53 +00:00
Chris Jones
8068ef656f extend testing, make ConfigBase settable, drop ConfigBase derivation from dict 2009-12-23 00:10:57 +00:00
Chris Jones
8d3158c152 Make ConfigBase() do some debugging. Hugely verbose, but potentially very useful for now 2009-12-22 00:32:21 +00:00
Chris Jones
9ce380ef90 port to new borg __init__() 2009-12-22 00:25:25 +00:00
Chris Jones
89425256ec port to new borg __init__() 2009-12-22 00:25:17 +00:00
Chris Jones
2c8e2d14e4 port to new borg __init__() 2009-12-22 00:25:05 +00:00
Chris Jones
4a96bf99d4 add some test coverate, split the defaults into sections and move the borg element to a new base object, converting it to use the new borg __init__ syntax. 2009-12-22 00:24:53 +00:00
Chris Jones
90c8b7e8c5 extend test coverage to ensure borg state is unique between borg types. add some debugging info and support the ability to have multiple borg classes via an ugly parameter to __init__() 2009-12-22 00:24:03 +00:00
Chris Jones
a6a1acd26d Clear up the position re licencing of the two external sources of code in our refactoring 2009-12-19 15:07:22 +00:00
Chris Jones
0b5ac38793 Hand merge in from trunk 2009-12-19 02:08:35 +00:00
Chris Jones
48e8637ca5 Add a FIXME 2009-12-18 09:24:23 +00:00
Chris Jones
fe22a9cf47 Integrate the plugin system into the context menus for Terminal 2009-12-18 00:45:08 +00:00
Chris Jones
5dc643a3b2 Add some docstrings 2009-12-17 23:30:12 +00:00
Chris Jones
30f5225884 Add crashproof code for adding URL handlers from plugins, and reacting to them 2009-12-17 23:17:32 +00:00
Chris Jones
b84f593404 port over launchpad specific URL handling from Terminal 2009-12-17 23:17:03 +00:00
Chris Jones
603da6ec16 Since PluginRegistry is a borg we can easily track if we have been loaded before and if so, not load plugins again. 2009-12-17 23:16:42 +00:00
Chris Jones
01bb454d90 stop (ab)using __subclasses__ isntead interrogating the imported plugin modules for a predefined list of the plugin classes they contain, and always instantiate them when they are imported. Add a test plugin only useful for doctest 2009-12-17 13:51:55 +00:00
Chris Jones
9029e519f9 add a test plugin 2009-12-17 12:54:47 +00:00
Chris Jones
6088084fdf handle import failures and add some very borked doctesting 2009-12-17 12:54:42 +00:00
Chris Jones
209c37aa34 ridiculously simple and non-functional plugin 2009-12-17 01:09:13 +00:00
Chris Jones
2660d0795f Add a first run at a plugin system 2009-12-17 01:07:01 +00:00
Chris Jones
ecdbe15420 Add some fixmes for things I know are currently broken, and improve a couple of logging messages 2009-12-16 09:15:53 +00:00
Chris Jones
fabc62ba99 who knows, we might even stick to a testing regime this time 2009-12-11 14:43:19 +00:00
Chris Jones
88cd14ac64 Remove a couple of stale FIXMEs 2009-12-11 14:25:38 +00:00
Chris Jones
7d897eaef7 Make title propagation work properly 2009-12-10 23:25:52 +00:00
Chris Jones
602c6a3b57 Make title changes propagate better, albeit not perfectly yet 2009-12-10 13:20:03 +00:00
Chris Jones
f10f43fa8a pylint 2009-12-10 11:52:26 +00:00
Chris Jones
33e6254ad2 pylint 2009-12-10 11:37:53 +00:00
Chris Jones
dfe85f1e9b pylint quiescing 2009-12-10 11:36:46 +00:00
Chris Jones
0d319e8a57 Improve pylint.sh to be much less noisy and annoying 2009-12-09 13:32:35 +00:00
Chris Jones
c31758179e pylint fixes 2009-12-09 13:22:34 +00:00
Chris Jones
7ed5a573d5 at the suggestion of pylint, refactor Factory::isinstance() to be more succinct 2009-12-09 13:22:27 +00:00
Chris Jones
a432d10d24 Add a quick debugging entry 2009-12-09 13:02:45 +00:00
Chris Jones
67b79ff1da There's no reason anymore to special-case notebook here 2009-12-09 13:02:31 +00:00
Chris Jones
24b6082155 Add more debugging and make sure we don't fall into the trap of iterating over a list we're modifying 2009-12-09 13:02:13 +00:00
Chris Jones
7b24823fd6 Fix a stupid typo 2009-12-09 13:01:41 +00:00
Chris Jones
34da8ffe3a fix a bunch of bugs in tab handling and attempt to handle closing a tab with multiple children, but all of this is still entirely buggy 2009-12-08 13:57:29 +00:00
Chris Jones
f9725242ec Make tab opening conext menu work 2009-12-08 13:01:13 +00:00
Chris Jones
2db2e0f75e Beginnings of making the tab close button work, only handles the simplest case so far 2009-12-08 09:10:39 +00:00
Chris Jones
0796e70808 Don't create a one-off TabLabel for the first tab, Notebook.newtab() makes them and now the order of creation is fixed they even show up properly 2009-12-07 20:32:47 +00:00
Chris Jones
ced0e4f3f5 And make pylint happy about it 2009-11-30 09:52:38 +00:00
Chris Jones
595a3a02e5 Might as well do this for all errors 2009-11-30 09:51:34 +00:00
Chris Jones
05fb49bed6 Make Paned widgets eat themselves when they go from 2 to 1 tabs 2009-11-25 12:51:14 +00:00
Chris Jones
4577c14c6e Only connect terminal signals to terminals 2009-11-25 09:07:48 +00:00
Chris Jones
2a76382e47 migrate to using the factory and extend it to have an isinstance() 2009-11-25 00:37:29 +00:00
Chris Jones
0447c8f6f2 quiesce pylint 2009-11-24 23:49:03 +00:00
Chris Jones
f8ab3d8308 remove testing 2009-11-24 23:47:44 +00:00
Chris Jones
2dd44ddc8a Add an object factory to get us out of our dependency hell 2009-11-24 23:47:32 +00:00
Chris Jones
1d7adc8283 Port TabLabel across and integrate it. 2009-11-23 15:17:33 +00:00
Chris Jones
9cbc6f1282 Add the very barest of support for tabs. 2009-11-21 22:28:39 -06:00
Chris Jones
b6703153a1 Start a new class derived from Container for gtk.Notebook 2009-11-21 21:53:38 -06:00
Chris Jones
8842d3ecf6 Add a FIXME note for later 2009-11-21 21:53:01 -06:00
Chris Jones
ded962d651 introduce global keybindings, force real transparency, handle window closing with the confirmation dialog 2009-11-21 12:47:38 -06:00
Chris Jones
cdf7d37e5a we hate the buggy past and love the futur. assume rgba is win for everyone 2009-11-21 12:19:01 -06:00
Chris Jones
5e104972a7 Fix keybinding for closing ourself 2009-11-21 12:11:50 -06:00
Chris Jones
db3ac95171 introduce the dialog to confirm closing something 2009-11-21 12:09:47 -06:00
Chris Jones
c5711cbe15 get_top_window moved to util 2009-11-20 16:53:06 -06:00
Chris Jones
0deda2434d pylint fixes 2009-11-20 16:52:39 -06:00
Chris Jones
ac1a58e8b3 Always a good idea to call your new function 2009-11-20 16:52:26 -06:00
Chris Jones
025c5d3dd1 Fix up config.py slightly to make pylint happier 2009-11-20 16:46:50 -06:00
Chris Jones
279ebf55d6 use the paned hoovering function introduced in revision 910 2009-11-20 09:31:07 -06:00
Chris Jones
1db6a242b1 add a sanity check function. This probably shouldn't exist, but is useful right now 2009-11-20 09:30:50 -06:00
Chris Jones
aa531014ef improve debugging and ensure that we can't register terminals/windows multiple times 2009-11-20 09:30:28 -06:00
Chris Jones
39098fdefb Add functions for emitting events 2009-11-20 00:18:21 -06:00
Chris Jones
a51454e9f6 make the broadcast menu items activate correctly 2009-11-20 00:11:12 -06:00
Chris Jones
7a3f553d82 If there are no more Terminals, destroy all Windows 2009-11-19 23:45:33 -06:00
Chris Jones
efbeffb060 Always return focus to the VTE widget after playing with group names 2009-11-19 23:42:49 -06:00
Chris Jones
0ff5aa3159 Tidy up some debugging and fix group hoovering 2009-11-19 23:40:31 -06:00
Chris Jones
132daeb447 Fix up some handling of unzooming and closing terminals while zoomed 2009-11-19 23:16:20 -06:00
Chris Jones
7d9575df5f Make drag and drop of terminals work 2009-11-16 22:56:55 -06:00
Chris Jones
ec1c20540a switch to new window registration logic 2009-11-16 21:58:12 -06:00
Chris Jones
c48c1d4fd6 fix up debugging statements 2009-11-14 23:12:58 +00:00
Chris Jones
3591aec862 Add very simple ability to register de-register window widgets 2009-11-14 23:12:38 +00:00
Chris Jones
22dccb6728 make focus always switch to the most relevant terminal 2009-11-14 23:04:15 +00:00
Chris Jones
bf77106529 switch to using new Container methods for handling child signals. 2009-11-14 22:58:42 +00:00
Chris Jones
0f7a9aa40b Improve some error message and switch to using new Container methods for handling child signals. 2009-11-14 22:58:22 +00:00
Chris Jones
29d661b26a self.signals shouldn't be a class variable. add helper functions to connect child widget signals and disconnect them. 2009-11-14 22:57:35 +00:00
Chris Jones
6e0718c829 make zooming and unzooming work 2009-11-14 18:56:50 +00:00
Chris Jones
e93a95162d Add a menu item to restore zoomed/maximised layouts 2009-11-14 18:56:34 +00:00
Chris Jones
4ee756b5ec fix up zoom signal, add an unzoom signal. generally make zooming work 2009-11-14 18:55:51 +00:00
Chris Jones
6f93a51b5f fix stupid bug that registered all Paned widgets as HPaned ones. Fix ordering of adding children so things are never de-parented. Hook up terminal zooming signals. 2009-11-14 18:55:07 +00:00
Chris Jones
0190f2dea9 make signal registration more robust, and add a function to walk up the widget tree to find the top-level Window object 2009-11-14 18:54:12 +00:00
Chris Jones
e5301362e4 tidy up some pylint issues 2009-11-14 17:30:03 +00:00
Chris Jones
095ba4dbe3 decouple a little more 2009-11-09 22:35:55 +00:00
Chris Jones
4284cf67ee Start making some navigation work 2009-11-09 22:33:17 +00:00
Chris Jones
5dd6ae0154 improve container signal registration function to never double-register. add a fake resize-term signal to Paned for nested terminal resizes. Implement terminal resizing. 2009-11-08 23:06:26 +00:00
Chris Jones
5352731984 make paneds be splittable, set their initial position properly and don't call reconfigure() all the time 2009-11-08 01:06:31 +00:00
Chris Jones
6b4c660cbc Start implementing our Paned container and switch to it 2009-11-07 01:40:43 +00:00
Chris Jones
c60aae8bed make closing of group terminals work 2009-11-04 23:42:54 +00:00
Chris Jones
830863d711 more group work 2009-11-04 23:28:09 +00:00
Chris Jones
55c79f56d5 remove some cruft and replace the hacky backwards search with a more correct one. There are still some issues though 2009-11-04 20:41:01 +00:00
Chris Jones
8d19561f85 fix up Terminal some more and make the searching work, and include a hacky backwards search 2009-11-04 18:06:34 +00:00
Chris Jones
565257672a fix terminal spawning and font zooming 2009-10-28 23:07:42 +00:00
Chris Jones
6f2fd988b4 Fix keybinding dispatch in Terminal and add handler functions for all of the keybindings, but basically every single one is broken right now 2009-10-28 12:53:18 +00:00
Chris Jones
ede7fc7552 Fix bogus child spawning. realize happens more than you might hope. 2009-10-27 23:23:59 +00:00
Chris Jones
ef1e82e5b0 Fix titlebar drag starting
Remove useless resize-window handler
Implement the Terminal() end of group creation
Finish drag and drop handling
Implement methods relating to focus changes
Fill out a few method docstrings
2009-10-27 23:05:12 +00:00
Chris Jones
f7d0d957cd Add function to snapshot a widget and its children as a pixbuf 2009-10-27 21:03:11 +00:00
Chris Jones
0ef7c99022 remove an unused variable 2009-10-26 13:36:34 +00:00
Chris Jones
e2086578bb Group creation is now presented via the titlebar, but still doesn't actually have any backending in functional reality yet. 2009-10-15 14:17:37 +01:00
Chris Jones
667d31e394 Drop all our URL madness and make it pygtk's problem. Requires pygtk >=2.14 2009-10-15 12:57:50 +01:00
Chris Jones
7970033368 Add an important FIXME 2009-10-15 12:54:16 +01:00
Chris Jones
cd1d858d3c Start making keybindings work in Terminal(). They don't work yet 2009-10-14 13:05:07 +01:00
Chris Jones
fdcd1c89f9 Add signals for when we want to be zoomed or maximised 2009-10-12 22:05:19 +01:00
Chris Jones
b43695b23d Flesh out the borg a little 2009-10-09 12:25:06 +01:00
Chris Jones
c1c81d3a91 pylint fixes 2009-10-09 00:30:03 +01:00
Chris Jones
7605957efa pylint fix 2009-10-09 00:24:58 +01:00
Chris Jones
49f374e3b2 hook up focus changes to Terminator so it can update all the titlebars 2009-10-09 00:22:01 +01:00
Chris Jones
9d6b961fc3 undo an indenting fail 2009-10-08 21:29:45 +01:00
Chris Jones
3d78428aae now make the encoding submenu work 2009-10-08 21:27:00 +01:00
Chris Jones
f0d7f2a9ca refactor the popup menu out because it's so annoyingly long 2009-10-08 20:27:49 +01:00
Chris Jones
d9e9cf364a ditch extreme_tabs, it's a terrible feature. Flesh out the terminal context menu some more, including figuring out how we will track whether a window is in a zoomed state - gobject properties 2009-10-07 00:08:13 +01:00
Chris Jones
209caf3745 start some basic splitting in Window() and try to be slightly smarter about handling the terminal's signals 2009-10-05 22:16:28 +01:00
Chris Jones
414e7f0731 Add a mechanism to de-register a Terminal() that's being destroyed 2009-10-05 22:15:22 +01:00
Chris Jones
7ea1e18f20 Tiny cleanup 2009-10-01 22:15:50 +01:00
Chris Jones
2aae5da8f1 lose a function to re-emit a signal, and an unnecessary invocation thereof 2009-09-06 23:53:48 +01:00
Chris Jones
a31c0ef411 If something isn't used outside one function, don't make it be a class variable 2009-09-06 23:53:21 +01:00
Chris Jones
d5ff98211c Swap out some noop code for pylint suppression 2009-09-06 23:52:58 +01:00
Chris Jones
1d2e96ac72 tidy up some more lambdas, pylint errors and start fleshing out the context menu 2009-09-06 22:55:37 +01:00
Chris Jones
0912fb8aae fix up a pylint error and migrate some pure functions from terminal.py 2009-09-06 22:54:52 +01:00
Chris Jones
690bb61788 add a signal for ungrouping all terminals, and tidy up some lambdas 2009-09-06 21:54:33 +01:00
Chris Jones
5e54d42eca work on grouping/ungrouping of all terminals in a tab 2009-09-05 00:34:09 +01:00
Chris Jones
bb073887fc hook up the terminal enumeration menu items 2009-09-04 22:48:35 +01:00
Chris Jones
2a65918209 Fix some typos and flesh out the group menu 2009-09-04 22:12:13 +01:00
Chris Jones
28e7ee6116 Add some more of our attributes 2009-09-04 22:11:52 +01:00
Chris Jones
718a15706f handle URLs 2009-09-04 20:12:35 +01:00
Chris Jones
b58a7224aa handle the window closing properly 2009-09-04 20:12:04 +01:00
Chris Jones
09a6913d98 Flesh out the Terminal button handler and some associated functions 2009-09-03 14:47:14 +01:00
Chris Jones
c40c360c20 no reason for the groupsend types to be global 2009-09-03 13:59:17 +01:00
Chris Jones
1e4af9883b keep pylint a little happier 2009-09-03 10:34:31 +01:00
Chris Jones
799d508708 Make _entry_handler_id not be a static class attribute because it doesn't need to be 2009-09-03 09:03:37 +01:00
Chris Jones
9bac025795 Add support for grabbing focus after a label is edited and the rudimentary basics of the group popup menu 2009-09-03 00:52:36 +01:00
Chris Jones
846e0c0fff Emit a signal when editing is done 2009-09-03 00:51:46 +01:00
Chris Jones
bf20587edc decouple Terminal from Terminator, and add the minimum necessary group icon handling 2009-09-02 23:17:54 +01:00
Chris Jones
0f5cf7c496 remove titletips, it's a terrible option 2009-09-02 23:17:08 +01:00
Chris Jones
d007bc45c5 bare minimum titlebar functionality 2009-09-02 22:38:27 +01:00
Chris Jones
9f7834fb5b simplify title changes 2009-09-02 21:18:36 +01:00
Chris Jones
f00c265f4c Make the window title update with the terminal title 2009-09-02 21:10:28 +01:00
Chris Jones
187484271c clean up EditableLabel 2009-09-02 20:43:45 +01:00
Chris Jones
9d82f13989 merge in latest changes from trunk 2009-09-02 20:39:25 +01:00
Chris Jones
1d332c915e Only attempt to set an image if there actually is an image configured. Closes LP #404846 2009-09-02 11:01:30 +01:00
Chris Jones
f136b6d78e add a stub function to the titlebar 2009-08-28 01:11:13 +01:00
Chris Jones
93d8118c33 add some more add/remove love to Window 2009-08-28 00:20:22 +01:00
Chris Jones
4111a80f7a reduce debug verbosity a little, add a handler to automagically spawn children. add the correct number of parameters to various signal handlers. flesh out the child spawning codepath 2009-08-19 19:02:33 +01:00
Chris Jones
d17981b581 Add another stub function to the titlebar class 2009-08-19 19:01:11 +01:00
Chris Jones
326bb4fa94 Remove the default_setup function, it's very broken 2009-08-19 19:00:47 +01:00
Chris Jones
428f931bf3 oops, don't show the searchbar by default 2009-08-19 19:00:33 +01:00
Chris Jones
71fff759f1 fix gobject init, add drag&drop functionality, add widget signals and a load of stub functions 2009-08-19 01:06:38 +01:00
Chris Jones
f3d5fa61e4 config is now a borg, so there's no need to pass a reference around. Also fix a config keyerror 2009-08-19 01:06:07 +01:00
Chris Jones
f5ee9d54c5 use the correct gobject init call and add a stub function 2009-08-19 01:05:44 +01:00
Chris Jones
09780a6500 Use the correct gobject init call 2009-08-19 01:05:30 +01:00
Chris Jones
ac7769b556 return the newly created terminal 2009-08-19 01:05:15 +01:00
Chris Jones
96114aa863 now config is borg we don't need to pass handles around 2009-08-19 01:04:53 +01:00
Chris Jones
4d7d734587 Simple bootstrapper, temporary during epic refactor 2009-08-19 01:04:37 +01:00
Brian Murray
48e5a7e6ca expand launchpad url match to mirror Ubuntu Policy Manual and linkify each bug number 2009-08-18 10:59:06 -07:00
Chris Jones
196dde427b improve pylint score by disabling tests. winrar \o/ 2009-08-18 13:57:35 +01:00
Chris Jones
d6ac973f54 remove some currently unused imports and split up some overly long lines 2009-08-18 13:54:46 +01:00
Chris Jones
0b90e29b16 remove unused import and disable a pointless pylint check 2009-08-18 13:52:02 +01:00
Chris Jones
089b708e2c shut pylint up 2009-08-18 13:51:09 +01:00
Chris Jones
f0260456c9 we don't need to re-emit the search keypress, all it does is conditionally emit end-search anyway 2009-08-18 13:48:04 +01:00
Chris Jones
5f339da4e1 Use the right class name 2009-08-18 13:47:46 +01:00
Chris Jones
d538b47a50 initial import of a titlebar class 2009-08-18 13:45:57 +01:00
Chris Jones
53f33109b4 start fleshing out Terminal 2009-08-18 13:44:41 +01:00
Chris Jones
1fdd357058 switch to new style translation import 2009-08-18 13:44:16 +01:00
Chris Jones
a5cccbe757 refactor this to not use gettext's __builtin__ hack 2009-08-18 13:43:39 +01:00
Chris Jones
d6d3192d82 refactoring out of the search bar into its own class 2009-08-18 13:43:18 +01:00
Chris Jones
65767693df It always helps to return the thing you're called for 2009-08-18 12:59:06 +01:00
Chris Jones
1cb1f166cf fix a typo 2009-08-18 12:55:52 +01:00
Chris Jones
1e12ece0ea tidy up the imports, move the graphical error to a generic gerr() function in util.py and add a function for injecting URL regexps 2009-08-18 12:55:37 +01:00
Chris Jones
28a5b963f0 Remove static config object 2009-08-18 12:52:30 +01:00
Chris Jones
ad372bbdcd Make a generic graphical error function 2009-08-18 12:52:06 +01:00
Chris Jones
1f156248ee Refactor the config. For now it's defaults only 2009-08-18 12:46:41 +01:00
Chris Jones
d00e2fe9dd reformat slightly so we get a pylint 10 2009-08-18 12:35:06 +01:00
Emmanuel Bretelle
cdbed05293 ...actually adding the class... 2009-08-14 20:30:00 +02:00
Emmanuel Bretelle
51ff0bcb41 Create an EditableLabel class
* make TerminatorNotebookTabLabel use it
 * reuse it in TerminatorTermTitle
2009-08-14 20:15:32 +02:00
Chris Jones
4150249f87 refactor some cwd code and start setting some vte attributes 2009-08-11 23:48:19 +01:00
Chris Jones
f110bca103 migrate cwd getting function 2009-08-11 23:36:37 +01:00
Chris Jones
7547eaad4b appease pylint and begin the terminal class 2009-08-11 23:27:56 +01:00
Chris Jones
92fe7007ed add pylint script for laziness 2009-08-11 23:26:18 +01:00
Chris Jones
c2891b26c7 appease pylint 2009-08-11 23:23:34 +01:00
Chris Jones
fe37448440 switch from a singleton to a borg, and don't do circular imports 2009-08-11 23:19:06 +01:00
Chris Jones
0dd4ec66bf clear some migrated code from terminator.py 2009-08-11 00:42:39 +01:00
Chris Jones
eb99ed2c92 remove unnecessary dependencies, appease pylint some more 2009-08-11 00:22:55 +01:00
Chris Jones
0953fca37b move the instance creation to after definition, remove dependency on window.py 2009-08-11 00:20:00 +01:00
Chris Jones
d81de4569c Initial import of new Terminator class 2009-08-11 00:15:40 +01:00
Chris Jones
b3635d2912 Prepare for the new Terminator class 2009-08-11 00:15:31 +01:00
Chris Jones
49510266ed Migrate window icon setting 2009-08-10 23:09:49 +01:00
Chris Jones
0f702e32b6 Migrate WindowTitle class 2009-08-10 23:04:39 +01:00
Chris Jones
70173e6978 remove unnecessary import and default to debugging for now 2009-08-10 00:11:31 +01:00
Chris Jones
dee9745d99 improve pylint compliance of util 2009-08-10 00:10:08 +01:00
Chris Jones
034e264fe5 add some docstrings, fix the hide_window handling even more, and generally quiesce pylint 2009-08-10 00:07:40 +01:00
Chris Jones
1ab776bcb8 remove the unnecessary __main__ code 2009-08-09 23:56:08 +01:00
Chris Jones
adb1c2a1f8 raise the correct exception if methods are called from the base class that must be overridden by subclasses. Remove unnecessary dependencies and achieve 10/10 from pylint 2009-08-09 23:54:14 +01:00
Chris Jones
598eededd2 Implement equivalent functionality as previous iterations wrt handling the availability of the hide_window keybinding 2009-08-09 23:25:53 +01:00
Chris Jones
3df46d1d85 attempt to dodge gobject's inability to do multiple inheritance 2009-08-09 22:00:43 +01:00
Chris Jones
ea767f4164 migrate many more methods 2009-08-09 18:48:06 +01:00
Chris Jones
5d1ea593d8 migrate dbg,err to util.py 2009-08-08 01:22:31 +01:00
Chris Jones
b15a78fdea import the name and version into the library root 2009-08-08 01:00:58 +01:00
Chris Jones
8700c9456f migrate window class to its own file 2009-08-08 00:31:44 +01:00
Chris Jones
2ac04e20be Entirely fix up the previous commit, the exception wasn't working at all 2009-08-07 22:47:30 +01:00
Chris Jones
b3c6e06964 Only hide the window if we can actually bind the hide_window key 2009-08-07 22:31:18 +01:00
Chris Jones
c2cf103374 start an epic refactor 2009-08-07 10:21:37 +01:00
Chris Jones
88f005ee09 on newer gtks we are likely to have menu icons disabled, force them on for the horiz/vert split items since they are deeply useful 2009-08-04 12:58:05 +01:00
Chris Jones
a45344f98d Improve handling of custom encoding settings. Closes LP #403545 2009-08-04 02:56:02 +01:00
Chris Jones
d1a4b8a3c9 sync encodings with gnome-terminal 2009-08-03 11:19:19 +01:00
Chris Jones
e469c144ba Tiny whitespace fix 2009-08-03 11:10:47 +01:00
Chris Jones
ebec046caf Apply patch from Stephen Boddy to fix some layout issues with grouping, fix a colouring issue and improve the layout. Closes LP #408098 2009-08-02 23:44:51 +01:00
Chris Jones
945d2f277d It's about time we enabled real transparency by default and just dealt with any fallout 2009-07-30 10:53:08 +01:00
Chris Jones
2e098c56a1 update titlebar colours when grouping with keyboard shortcuts. Closes LP #406642 2009-07-30 00:44:36 +01:00
Chris Jones
0995147861 group label text should follow the colour scheme the same as the titlebar. Patch from Stephen Boddy. Closes LP #406639 2009-07-30 00:30:27 +01:00
Chris Jones
1283aafd42 Fix up a missing None string handler from the previous commit 2009-07-22 09:43:41 +01:00
Chris Jones
dcd997b3de Allow a keybinding to be set to a string value of None so it can be deconfigured. Also supports clearing a keybinding through the prefs profile. Closes LP #391778 2009-07-22 09:40:35 +01:00
Chris Jones
34c9c816ea Dont use underscores in group names as accelerators. Closes LP #401191 2009-07-21 20:50:06 +01:00
Chris Jones
48324ba7bc move the enumeration menu items to the group menu and improve the wording. Closes LP #314909 2009-07-14 12:53:42 +01:00
Chris Jones
fee8039fdc don't append the title, so it doesn't multiple up. Closes LP #393668 2009-07-14 00:47:55 +01:00
Chris Jones
d9e5174140 fix icons 2009-07-14 00:25:07 +01:00
Chris Jones
05e5323097 fix the group_all hotkey 2009-07-14 00:15:34 +01:00
Chris Jones
b044cd385c fix wording harder. fix group removal and grouping all 2009-07-14 00:14:21 +01:00
Chris Jones
dc9fc3c7ca improve some wording and fix the grouping of ungrouped terminals 2009-07-14 00:04:30 +01:00
Chris Jones
73cd0bb2bc remove superfluous colour setting code since the titlebar is integrated 2009-07-13 23:55:23 +01:00
Chris Jones
08775aecec remove spurious menu separator 2009-07-13 23:54:31 +01:00
Chris Jones
f8dcd9d846 Rewording 2009-07-13 23:54:18 +01:00
Chris Jones
715bb639e2 put the group image and label into sufficient gtk boxes that they can match the styling of the rest of the titlebar 2009-07-13 23:53:57 +01:00
Chris Jones
2a5cffb63f remove the Group context menu 2009-07-13 23:37:23 +01:00
Chris Jones
13c11e1475 merge in trunk 2009-07-13 23:36:45 +01:00
Chris Jones
acd8a776fb add quotes to pathchars to support more broken URLs 2009-07-10 16:46:52 +01:00
Chris Jones
2bcff19fa3 only actually set the colour as a GdkColor 2009-07-02 21:35:18 +01:00
Chris Jones
b3a156c786 I think this is more correct. the theme_colors setting elsewhere should only apply to font settings, not terminal colours 2009-07-02 21:30:53 +01:00
Andrea Corbellini
7d987903a3 Remove the empty parenthesis in the declaration of TerminatorWindowTitle
to fix the compatibility with Python 2.4.
2009-06-26 13:12:46 +02:00
Chris Jones
8825cdc8ba Don't try and set an active dropdown item that doesn't exist. Closes LP #361481 2009-06-16 18:50:52 +01:00
Chris Jones
46b73f406a Handle get_first_notebook_page() failing. Closes LP #354495 2009-06-16 18:26:16 +01:00
Chris Jones
2aaba264af Connect click events on the titlebar widget to focus for that terminal. Closes LP #385229 2009-06-09 23:47:59 +01:00
Chris Jones
78594bfd62 Increment tab number in group name, so they don't start at zero. Closes LP #382156 2009-06-06 02:00:40 +01:00
Chris Jones
20b25c6c5d prepare for 0.13 release 2009-05-29 21:56:06 +02:00
Chris Jones
2cd90552f9 Add pid_get_cwd support for SunOS. Patch from Lewis Thompson. Closes LP #381610. 2009-05-29 16:34:48 +02:00
Chris Jones
ac56c18501 Add support for spawning new windows as new Terminator processes. Closes LP #381193 2009-05-28 10:29:56 +02:00
Chris Jones
98a5fee1f6 Attempt to fix horizontal directional navigation when handle_size is 0. Closes LP #325028 2009-05-26 22:45:13 +02:00
Chris Jones
8fc337de9f Remove old SEGBUG debugging 2009-05-26 11:42:08 +02:00
Chris Jones
67753449a0 Make the choice of Paned slightly less pained 2009-05-26 11:27:26 +02:00
Chris Jones
69265ec036 Add keybindings for group_all, ungroup_all, group_tab and ungroup_tab. Closes LP #376351 2009-05-23 18:05:50 +02:00
Chris Jones
e77a3e6c07 Add context menu functionality for grouping/ungrouping all terminals in a tab. Closes LP#378603 2009-05-23 17:34:23 +02:00
Chris Jones
18d4df6af8 Refactor get_first_parent_paned into a generic, non-recursive function for finding the first parent widget of a given type 2009-05-21 00:09:00 +02:00
Chris Jones
14f6525195 refactor pixbuf getting thing out to a separate function 2009-05-17 12:45:38 +01:00
Chris Jones
47b5aaed64 take a snapshot of the terminal, scale it if necessary and use that for the drag icon 2009-05-16 22:17:04 +01:00
Chris Jones
b1d10e8817 Add some warning text in the profile editor 2009-05-12 21:17:56 +01:00
Chris Jones
7010d17b73 add a comment for further investigation later 2009-05-11 21:54:23 +01:00
Chris Jones
0aa107005e Re-order context menu to keep Close item away from the mouse. Closes LP #374792 2009-05-11 21:36:40 +01:00
Chris Jones
7529d1c32f Improve PEP 8 compliance 2009-05-07 02:35:23 +01:00
Chris Jones
1a88613904 Tidy up keybindings.py for pylint ease 2009-05-07 02:06:38 +01:00
Chris Jones
b7661b005b remove tests since they're so woefully incomplete and I have no real intention of completing them 2009-05-07 01:47:52 +01:00
Chris Jones
69c2bca7b7 call parent init, just to be safe 2009-05-07 01:44:59 +01:00
Chris Jones
b0302e6fab split out translation support into an separate file so it can be more correctly included everywhere 2009-05-07 01:44:42 +01:00
Chris Jones
841fa18c58 improve exception handler 2009-05-07 01:25:51 +01:00
Chris Jones
ee1490dc4a Add a commandline argument to allow specifying the window title. Closes LP #370064 2009-05-04 02:00:44 +01:00
Chris Jones
676ddfdb0c Refactor window title code into a separate class 2009-05-04 01:51:01 +01:00
Chris Jones
6de8e1ca6e Add the terminal size to the titlebar. Closes LP#242288 2009-04-30 21:55:30 +01:00
Chris Jones
f81b724abc Merge changes from debian package 2009-04-24 10:57:17 +01:00
Chris Jones
9b530862e7 Make the zoomed/maximised titlebar optional 2009-04-09 11:23:33 +01:00
Chris Jones
c4409fb03d prevent the font size from decreasing when zooming 2009-04-01 10:21:16 +01:00
Chris Jones
9d4e07f0bf If people are mad enough to use Ctrl-C for Copy, at least let them still be able to kill things. Closes LP #340604 2009-03-27 12:20:12 +00:00
Chris Jones
8b3b71599a Handle older VTEs that have no beep signal. Closes LP #349158 2009-03-26 21:09:30 +00:00
Chris Jones
5e78509499 Fix scrolling on patched VTEs. Note that this will only work if the patched VTEs also have python support for their modifications. Closes LP #291184 2009-03-26 10:36:47 +00:00
Chris Jones
f1d2b527ed Only set cursor shape when the function exists in vte. Patch from Jordan Callicoat. Closes LP #348760 2009-03-26 10:34:02 +00:00
Chris Jones
4fc90e8ba5 Add support for VoIP URIs. Patch from Jordan Callicoat. Closes LP #235906 2009-03-25 13:04:49 +00:00
Chris Jones
711986766a Allow user configurability of the cursor shape. Patch from Jordan Callicoat. Closes LP #348244 2009-03-25 12:58:55 +00:00
Chris Jones
44e958f53e Allow user configurability of the cursor colour. Patch from Jordan Callicoat. Closes LP #348231 2009-03-25 12:48:27 +00:00
Chris Jones
e912c6a239 grab focus into the text entry widget after creating it 2009-03-23 21:09:40 +00:00
Chris Jones
254d0782c5 Allow users to edit the tab label in-place and retain a custom label, or switch back to an automatic one. Closes LP: #246448 2009-03-23 18:34:53 +00:00
Chris Jones
3d60c96b44 I think connect_after makes more sense here 2009-03-21 01:39:49 +00:00
Chris Jones
de62f1bda4 Make the bell options more explicit and allow multiple bell actions, including a new one to set the window manager urgent hint. Closes LP: #272749 2009-03-20 10:13:29 +00:00
Chris Jones
d54f21c203 be more explicit about setting background transparency so we always update the state correctly. Closes LP #328994 2009-03-20 01:24:24 +00:00
Chris Jones
4944ccabe7 make tab bar more configurable. Closes LP: #287307 2009-03-20 00:23:37 +00:00
Chris Jones
2ea44fb8bc Unify the the preparation of URLs so they work properly with ctrl-click, and also to reduce duplication. Closes LP #344617 2009-03-19 22:03:44 +00:00
Chris Jones
2c7648c7e4 hideous rewrite of font scaling code. Err on the side of caution with the fantastically crass magic constant multipier. 2009-03-17 01:08:12 +00:00
Chris Jones
2b8c2cadc5 set close button style regardless of the handle size being correct. Closes LP: #343607 2009-03-16 23:55:57 +00:00
Chris Jones
e3449d4142 fix for older gtk/pygtk 2009-03-16 23:50:48 +00:00
Chris Jones
e14e400b6c since values is no longer static, we need to call the base class __init__ to initialise it 2009-03-06 11:30:56 +00:00
Chris Jones
2fb6b9b329 be more careful about static class properties 2009-03-06 11:25:15 +00:00
Chris Jones
5e46e1a967 merge approved branch. Closes LP #328235 2009-03-06 11:15:41 +00:00
Chris Jones
118032dc35 Swap the Cancel button for a Close one, and stop Apply from closing the profile editor. This way makes much more sense. Closes LP #329977 2009-02-20 11:26:43 +00:00
jmonreal
d467d1ae75 Direction Fixed 2009-02-16 11:03:42 -03:00
Chris Jones
26e6eba2b5 Make transparency support much saner by making it much simpler. This means that enable_real_transparency being False doesn't prevent transparency from working, it just means it falls back to the fake transparency. Closes LP #328994 2009-02-13 10:43:11 +00:00
Chris Jones
46f17589da quite why people want this, I don't know, but they do. see LP question 59635 2009-02-02 23:01:00 +00:00
Chris Jones
2528353e2a Easier than actually tracking which kind it is 2009-02-02 17:20:16 +00:00
Chris Jones
859c463a48 Make the terminal title updater aware of zooming, and show it when we're zoomed, saying that we're zoomed 2009-02-02 17:18:40 +00:00
Chris Jones
71156a487a We don't want a titlebar if there's only one terminal 2009-01-30 15:23:47 +00:00
Chris Jones
4c8c2614be migrate more titlebar show/hide logic into TTT 2009-01-30 12:04:59 +00:00
Chris Jones
bac635fc4a fix correct starting value of titlebar wantedness 2009-01-30 11:44:40 +00:00
Chris Jones
4f8a3a8d34 migrate titlebar wantedness to the titlebar class 2009-01-30 11:42:28 +00:00
Chris Jones
01d4602d43 move all vte customisation to post-realize 2009-01-28 01:18:21 +00:00
Chris Jones
0897c0e16f move the background transparency setting to a handler attached to the vte widget's realize signal 2009-01-27 21:56:28 +00:00
Chris Jones
337c650f34 Back out earlier debugging changes 2009-01-27 21:19:10 +00:00
Chris Jones
cfeac42e2a getting desparate now 2009-01-27 18:29:19 +00:00
Chris Jones
8a4d3fb5de collect the flags, although i think they are a red herring 2009-01-27 18:26:42 +00:00
Chris Jones
cb802ca85e bleh, helps if you actually keep track of what's happening 2009-01-27 18:18:57 +00:00
Chris Jones
c190287d6c Exploratory patch which may fix some weird bugs, or may get reverted soon 2009-01-27 17:09:33 +00:00
Chris Jones
1961fe1d49 add support for an icon in the group label 2009-01-27 00:31:48 +00:00
Thomas Hurst
58e4722763 Block LOCK_MASK from reaching translate_keyboard_state: <Ctrl><Capslock>E now no longer behaves like <Ctrl><Shift>E, the state of capslock is completely ignored for keybinding purposes. 2009-01-26 16:33:00 +00:00
Chris Jones
9f17fc0790 Be able to set the foreground colour of titlebars too 2009-01-26 00:22:11 +00:00
Chris Jones
5055371b1c Refactor the terminal titlebar into its own class 2009-01-26 00:20:03 +00:00
Chris Jones
c3a2b5d2bb remove references to quake, it's unhelpful. It's now 'hide_window' 2009-01-25 18:33:22 +00:00
Chris Jones
201057e7f2 Make quake related error be a dbg() 2009-01-25 15:08:55 +00:00
Chris Jones
c33b89a74c add a description of the quake keybinding 2009-01-25 14:36:51 +00:00
Chris Jones
920a668991 Merge in Chris James' quake branch. 2009-01-25 14:28:27 +00:00
Chris Jones
4236e44e5f Merge in Chris James' quake branch. 2009-01-25 14:26:20 +00:00
Thomas Hurst
a72010a82e Teach the profile editor about undefined keys. 2009-01-21 09:06:16 +00:00
Thomas Hurst
bc24c98164 Merge in jkakar's quick tab switching branch, with minor changes. To avoid bikeshed issues, the bindings are disabled by default. 2009-01-21 08:29:32 +00:00
Jamu Kakar
d9205d83d9 - Alt-N switches to the tab at index N for values of 0 >= N <= 9.
This makes switching to arbitrary tabs very quick.
2009-01-20 21:18:59 -08:00
Chris Jones
6f9955eb6a H9TRANS debugging, should help diagnose weird transparency issues 2009-01-19 14:45:08 +00:00
Emmanuel Bretelle
adf05a6863 * Fixing a potential glitch in translated string
* added FR comment entry to .desktop
2009-01-17 13:44:09 +01:00
Chris Jones
4713eff2dd Merge from Stephen Boddy, fixes some instances where group_hoover is not called or is called incorrectly. Closes LP #315863 2009-01-15 00:31:42 +00:00
Chris Jones
29d5eacbc9 Fix terminal title alignment. Merge from Stephen Boddy's dev branch. Closes LP #308124 2009-01-15 00:07:28 +00:00
Chris Jones
8c62f84357 Track gconf cursor blinking in such a way that it handles the newer GNOME Terminal setting and the older one. Closes LP #283107 2009-01-15 00:02:01 +00:00
Chris Jones
2d57b7888d Fix GNOME Terminal profile loading. Patch from Y W Sing. Closes LP #304016 2009-01-14 22:57:24 +00:00
Chris Jones
45e83bd4b5 Slightly refactor the dialog shown when closing a window with multiple terminals so it can also work for tabs with multiple terminals. Closes LP #315960 2009-01-14 22:02:23 +00:00
Stephen Boddy
775030ba85 Kill last vestage of the single group icon. 2009-01-14 16:16:01 +01:00
Stephen Boddy
f97d1c49f8 Fix middle-click paste in broadcast mode into terminal with no group. Wasn't sent to other terms. Plus: slight reorg of get_target_terms 2009-01-14 13:36:32 +01:00
Stephen Boddy
a55fb5c70e Small change to stop the radio buttons of the 'Assign to' window flying about on resize. It just looks silly\! 2009-01-14 01:59:09 +01:00
Stephen Boddy
7fa0ddede0 Slightly fudge-flavoured fix for the positioning of the 'Assign to' window. Stops it appear all over. Prob. better as proper dialog. 2009-01-14 01:55:46 +01:00