Commit Graph

179 Commits

Author SHA1 Message Date
Chris Jones 7d08d790e2 port Terminal to use Signalman 2010-01-18 19:48:24 +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 8f88537bc5 obvious stupid reason why the email URL matching wasn't working. excess whitespace 2010-01-14 13:52:48 +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 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 8846328137 scrollbar toggling is now significantly more useful and consistent 2010-01-12 00:33:55 +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 e5d52fee52 Implement most of Terminal::reconfigure 2010-01-10 23:47: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 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 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 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 4cfc1c6fd2 Improve debugging relating to URL mangler plugins 2009-12-30 01:05:51 +00:00
Chris Jones 4c025273c9 rename and import the profile editor 2009-12-27 01:01:34 +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 30f5225884 Add crashproof code for adding URL handlers from plugins, and reacting to them 2009-12-17 23:17:32 +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 f10f43fa8a pylint 2009-12-10 11:52:26 +00:00
Chris Jones a432d10d24 Add a quick debugging entry 2009-12-09 13:02:45 +00:00
Chris Jones 9cbc6f1282 Add the very barest of support for tabs. 2009-11-21 22:28:39 -06:00
Chris Jones 5e104972a7 Fix keybinding for closing ourself 2009-11-21 12:11:50 -06:00
Chris Jones c5711cbe15 get_top_window moved to util 2009-11-20 16:53:06 -06:00
Chris Jones 279ebf55d6 use the paned hoovering function introduced in revision 910 2009-11-20 09:31:07 -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 0ff5aa3159 Tidy up some debugging and fix group hoovering 2009-11-19 23:40:31 -06:00
Chris Jones 7d9575df5f Make drag and drop of terminals work 2009-11-16 22:56:55 -06:00
Chris Jones c48c1d4fd6 fix up debugging statements 2009-11-14 23:12:58 +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 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 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 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 49f374e3b2 hook up focus changes to Terminator so it can update all the titlebars 2009-10-09 00:22:01 +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 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 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 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 718a15706f handle URLs 2009-09-04 20:12:35 +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 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 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 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 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 d6ac973f54 remove some currently unused imports and split up some overly long lines 2009-08-18 13:54:46 +01:00
Chris Jones 5f339da4e1 Use the right class name 2009-08-18 13:47:46 +01:00
Chris Jones 53f33109b4 start fleshing out Terminal 2009-08-18 13:44:41 +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 4150249f87 refactor some cwd code and start setting some vte attributes 2009-08-11 23:48:19 +01:00
Chris Jones 7547eaad4b appease pylint and begin the terminal class 2009-08-11 23:27:56 +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