Commit Graph

335 Commits

Author SHA1 Message Date
Chris Jones eb39ca548a remove reference to obsolete sighup function 2008-12-26 23:02:27 +00:00
Chris Jones 04aae49867 when we remove a terminal we should remove the vte widget and remove the reference to it from the TerminatorTerm object. It's likely we are still leaking other gtk objects, but that is considerably less important than leaking vte.Terminal objects and thus child processes 2008-12-26 22:56:00 +00:00
Chris Jones 5c09dc4b6b turns out that we are somehow sucking at unreferencing our objects, so we need to start tightening these things up. stop calling destroy() on anything other than toplevels, it makes no sense. Don't send the sighup, only because I want to track this down properly. 2008-12-26 20:24:11 +00:00
Chris Jones f7d649d724 completely remove the config file monitoring, as it has too much potential for failure and very little win to offer in return 2008-12-26 16:31:03 +00:00
Chris Jones d34a2bb12e fix a print to be a dbg() and disable inotify watching of the config file, it seemingly having some problems 2008-12-26 16:15:48 +00:00
Chris Jones 2228e2c3f3 Fix bug reported by Kees Cook - when in grouped mode, pasting did not apply to all grouped terms 2008-12-26 15:43:02 +00:00
Thomas Hurst 70e54005ee Send an explicit sighup from closeterm() 2008-12-24 03:31:39 +00:00
Kees Cook 04cecacdbb take full geometry of the terminals into account 2008-12-19 15:17:43 -08:00
Kees Cook 5c3d3c5c2e first pass at direction terminal control 2008-12-18 23:41:55 -08:00
Chris Jones 3c26a52c12 fix titlebar highlighting. HBox can't have a bg colour. Also it turns out that the fg colour modification has never been working so it might as well go 2008-12-16 15:15:12 +00:00
Brian Murray 9e6d8191ac Increase of possible matches for LP bug numbers as URLs 2008-12-13 21:13:25 -08:00
Chris Jones 75194f24cd Add support for treating LP bug numbers as URLs 2008-12-13 09:12:07 +00:00
Chris Jones 0118cc412c sync with trunk 2008-12-11 08:13:31 +00:00
Chris Jones 653a2ef5e1 this should be a dbg, not an err 2008-12-11 08:13:02 +00:00
Chris Jones dee393cd70 suggestion from Kees Cook - a menu option to instantly group all terminals 2008-12-11 08:07:28 +00:00
Chris Jones b1bf317671 actually make the typing simultaneous, and pretty things up slightly 2008-12-11 07:08:28 +00:00
Chris Jones 9bc24e665b Lay out some UI groundwork ideas for simultaneous typing support 2008-12-10 18:16:55 +00:00
Thomas Hurst 6fcd3c92e2 aelling 2008-12-02 17:22:44 +00:00
Thomas Hurst 952cd02b7b Add another missing setting 2008-12-02 17:13:55 +00:00
Chris Jones 7a695a7434 use a shorter, translatable string for the search box 2008-11-28 12:59:48 +00:00
Chris Jones c7677b9c0e make sure we do return codes properly for key handlers 2008-11-28 12:59:32 +00:00
Emmanuel Bretelle 6631af7e4d fixing rgba_control 2008-11-27 09:52:32 +01:00
Chris Jones 408a7246d9 take care of updating tab close buttons when the setting changes 2008-11-19 17:04:36 +00:00
Chris Jones 8decf82577 Make handle size and tab position updatable on the fly 2008-11-19 13:46:37 +00:00
Chris Jones 0937aa9620 fix collection of changed keybindings and apply them to the current instance 2008-11-17 15:09:39 +00:00
Chris Jones 0c354b6aa2 Remove APP_NAME from the title when we set it, to fix LP: #278004 2008-11-17 11:19:12 +00:00
Chris Jones 0806176067 Improve UI wording for new reset bindings 2008-11-17 10:46:47 +00:00
Chris Jones 4b69bf47aa Add keyboard shortcuts for reset and reset/clear. Closes LP#287634 2008-11-17 10:42:34 +00:00
Chris Jones 16894d5f78 allow keybindings to be edited 2008-11-17 02:24:38 +00:00
Chris Jones 475daf89ef make the keybinding editor prettier and work out when one has changed 2008-11-17 02:08:47 +00:00
Chris Jones ba34813f54 turn some prints to dbg()s 2008-11-17 00:51:11 +00:00
Chris Jones 104206b0eb helps if you read the function documentation. set_attributes() replaces all other attributes, so we had a bunch of empty, editable cells 2008-11-17 00:41:49 +00:00
Chris Jones 3f76ce6401 Attempt to make proper keybinding editors with TreeView and CellRendererAccel. Unsuccessfully thus far 2008-11-17 00:37:50 +00:00
Chris Jones 97fe1cca47 Get the value properly 2008-11-16 18:40:05 +00:00
Chris Jones 4f6d3d8ec7 Remove the real transparency change handler, it won't work while the window is realised, and unrealising it effectively destroys it, so this looks like the only setting that will actually hard-require a restart 2008-11-16 17:54:40 +00:00
Chris Jones 68529502e7 Make prefs_profile.auto_add more robust, add some more global reconfiguration 2008-11-16 02:42:09 +00:00
Chris Jones 2ccd5962c1 Only allow local background files and set the current value. Also close the window when Apply is pressed 2008-11-12 11:58:01 +00:00
Chris Jones e01d69346f Demonstrate how we can change a global property without a restart 2008-11-12 11:36:18 +00:00
Thomas Hurst a068372228 Add a missing setting 2008-11-12 02:44:57 +00:00
Chris Jones f761f40c17 this may fix Apply 2008-11-12 01:45:52 +00:00
Chris Jones 2a852620ac Update prefs_profile to not look at the Defaults, but the current RC file 2008-11-11 11:21:18 +00:00
Thomas Hurst 901b5a8ea4 Use "%r" % foo instead of "%s" % repr(foo). No functional changes. 2008-11-04 17:01:00 +00:00
Chris Jones 8e96d0eaa4 handle int HScale values and remove a debugging print 2008-11-03 23:14:29 +00:00
Chris Jones 5ffe50012b put a default size back in the default font so it's a valid pango name 2008-11-03 23:14:06 +00:00
Chris Jones 156eb8b32a Make the profile editor window atomic. Hook up its cancel button to destroy itself and make the Apply button dump the settings contained within. Requires some modification of auto_add to better keep track of the widgets 2008-11-03 22:55:55 +00:00
Emmanuel Bretelle e852e4185b nicification2 2008-11-02 03:18:23 +01:00
Emmanuel Bretelle d0693a2df3 attempting to nicify the profile editor 2008-11-02 03:06:35 +01:00
Thomas Hurst cb248ac357 Introduce indented config file handling code, disabled for now since nothing uses it, and it has the potential for breaking currently working configs, since indent errors are difficult to recover from sensibly. 2008-11-01 11:31:12 +00:00
Thomas Hurst c3c6e3713d Don't fail horribly if the user doesn't have a config file 2008-11-01 10:07:58 +00:00
Chris Jones 434c253237 make profile editor opened the conext menu and improve its appearance 2008-11-01 00:50:34 +00:00
Thomas Hurst e244329725 Make gio optional; it's way too soon to expect everyone to have this. Fix keybindings error handling. 2008-10-28 22:24:42 +00:00
Chris Jones 565b3d2bb8 Further enhancecment of profile editor UI 2008-10-28 00:29:54 +00:00
Chris Jones 6c483def9d Allow get_cwd to fail 2008-10-28 00:29:41 +00:00
Chris Jones 9c75e20492 Add file watching support to ValuestoreRC. Also slightly improve a debug statement in the root config class 2008-10-23 23:29:26 +01:00
Chris Jones 8ff0dfa72a Don't run the full title change handler every time if the title hasn't changed 2008-10-20 09:29:47 +01:00
Chris Jones 91b8527e2e Ignore a gconf change signal if it's just for the profile's visible_name, which gnome-terminal seems to set on every run. Should fix LP #268476 2008-10-16 16:30:42 +01:00
Chris Jones b623f662e8 only do session handling if we have a gnome_client 2008-10-16 11:43:50 +01:00
Chris Jones 19619bff98 rework keyboard event lookup failure handling with suggestions from Thomas. Relates to LP #280959 2008-10-13 09:37:26 +01:00
Chris Jones 46774d8f9e Abandon attempts to handle empty keypress events. Relates to LP #280959 2008-10-12 23:42:30 +01:00
Chris Jones 0adcd26a41 Add a next button to the search bar. Easy first step for LP #274451 2008-09-25 22:40:44 +01:00
Chris Jones 892c1c5b9d Add a close button to the search bar. Closes LP #274448 2008-09-25 22:33:45 +01:00
Chris Jones fc9b50850e only try to switch pages in a notebook if we actually have one. Not a fix for, but somewhat workaround for the crashing aspect of LP #271850 2008-09-25 22:22:05 +01:00
Thomas Hurst 357992945a unfail more 2008-09-23 17:08:16 +01:00
Chris Jones e49c73cf9e python2.4 unfail 2008-09-23 16:18:00 +01:00
Chris Jones 0a3017bf90 first hint of tests for configfile 2008-09-23 00:53:17 +01:00
Chris Jones 3988d96ff0 ensure debugging is off by default 2008-09-23 00:35:58 +01:00
Chris Jones 28b9c8e1d2 remove worthless testing code from config.py and extend the test suite a little 2008-09-23 00:28:57 +01:00
Chris Jones e63785028e initial skeletal test framework using nosetest 2008-09-23 00:13:48 +01:00
Thomas Hurst 76b06bc5f7 Workaround an apparant gtk bug in next/prev_page 2008-09-22 18:31:35 +01:00
Thomas Hurst e78d57beab Undo error handling brain-damage 2008-09-22 15:45:48 +01:00
Thomas Hurst 00840a13cc Bump version, tsk. 2008-09-21 12:27:05 +01:00
Chris Jones 95d4eed6ce Actually return when we deactivate the gconf object instead of trying to do gconf things with it 2008-09-13 01:58:48 +01:00
Iain Lane 1a975ab7c0 Remove unnecessary try-except block 2008-09-08 21:13:31 +01:00
Iain Lane aead00463c Need to start xdg-open in a new process as it does not do that itself - some browsers (Epiphany) can therefore cause Terminator to block until they are exited 2008-09-08 20:42:26 +01:00
Iain Lane fd8ad1bbea Launch ftp.x.y with an ftp protocol 2008-09-08 20:21:26 +01:00
Iain Lane 6c763fae39 Merge with trunk 2008-09-08 20:02:08 +01:00
Chris Jones c93e99b4c3 fix up backspace/delete binding widgets and fix a related mistake in the terminator_config manpage 2008-09-07 20:10:06 +01:00
Chris Jones e370d9fbb5 more specific updates for the profile editor 2008-09-07 19:43:03 +01:00
Iain Lane 4bb1a11595 Assume http:// for URLs without it 2008-09-06 16:01:12 +01:00
Chris Jones 6b680e4c52 possible option for improving profile editing gui 2008-09-06 01:40:42 +01:00
Chris Jones f14b544668 Apply patch from 'SXW', closing LP #237796 2008-09-04 22:27:13 +01:00
Emmanuel Bretelle bbc17502a8 Fix to LP#252971 making terminator compatible fix Dapper 2008-09-04 18:41:02 +01:00
Thomas Hurst e6497992e8 Drop a useless pass. 2008-09-04 02:59:40 +01:00
Chris Jones a32ec63a46 improve field names, make a couple of things dropdowns 2008-09-04 01:26:49 +01:00
Thomas Hurst 84658d4ea4 Put finally: in their own block for Python 2.4 2008-09-03 19:34:20 +01:00
Thomas Hurst 8fd22efed2 Prevent certain erroring configuration lines from being processed by a later line_ok(). 2008-09-02 16:03:08 +01:00
Chris Jones e8be0f326c fix bogus gconf call 2008-09-02 15:25:12 +01:00
Thomas Hurst a37be8bb35 Change debugging from "Ignoring" to "Skipping", and use repr(). 2008-08-29 21:29:07 +01:00
Thomas Hurst d388885581 Save maximized and fullscreen state. Argument handling needs improving; it'll break if short-form is used and squished together.
Probably we should piece together a command line directly from OptionParser's results, not copy it manually like this.
2008-08-29 19:23:30 +01:00
Thomas Hurst 035b15b6d9 Session support now tests ok with xsm. Note change of default #! line, and addition of dummy arguments to OptionParser. If we move gnome init earlier we can avoid the latter. 2008-08-29 19:22:16 +01:00
Thomas Hurst 0f5c6b361b Handle old Fedora gnome bindings.
save_yourself on startup.

Add geometry back to arguments, they're clearly isn't any wm magic for this stuff.
2008-08-29 19:20:50 +01:00
Thomas Hurst 9d183ed5e1 Introduce X session support by way of gnome.ui.
This involves moving cwd detection and url_show into class Terminator, since we need to initialize gnome earlier.
2008-08-29 19:18:31 +01:00
Chris Jones 11df8b9783 python 2.4 hates Exception.message, and it's not really crucial here anyway, so ditch it. Closes LP #262452 2008-08-29 14:09:29 +01:00
Thomas Hurst 3c77ec10c1 Add support for tab_position. 2008-08-28 17:08:15 +01:00
Thomas Hurst 6016f06775 Instead of a boring old MessageDialog, display errors in a Dialog with a scrolling text gadget containing errors.
This is a lot of effort for a case that should be rather unlikely; i.e. the user having dozens of errors in their config.

IndentErrors might make this more likely in future.  This may be reverted in future, but at least it'll be here if we need it.
2008-08-28 16:34:34 +01:00
Thomas Hurst 4fa5e1a442 Remove some leftovers. 2008-08-28 14:20:52 +01:00
Thomas Hurst f9d96d7210 print -> dbg 2008-08-27 00:58:27 +01:00
Thomas Hurst 32fc1f5082 Only set a setting if the entire line parses 2008-08-27 00:55:57 +01:00
Thomas Hurst a63c1358ca Use a callback for getting settings from ConfigFile, so we can validate them as they come in. 2008-08-27 00:30:13 +01:00
Thomas Hurst 5c8b1e7435 Set a default currvalue so line_ok works on configs starting with comments. 2008-08-28 15:12:05 +01:00
root 7ad31a0ee6 Prevent g-t profile failure 2008-08-28 13:56:16 +01:00
Chris Jones 1771528474 Update various bits of documentation 2008-08-27 01:35:32 +01:00
Thomas Hurst c2524cec47 Actually set a colour value. Only set config options if the entire line parses correctly. 2008-08-27 01:51:37 +01:00
Thomas Hurst d01ed3554f Handle bogus config values better; err() and keep going rather than raising an exception.
If there are exceptions, return to eating them for 0.10.
2008-08-26 23:32:29 +01:00
Chris Jones f020eaa32b Keep a note of when we are using a custom font size, so we don't override it in reconfigure_vte. Closes #256335 2008-08-26 22:24:36 +01:00
Thomas Hurst 31d598bb9b Few gconf fixes; use_system_font should now work again 2008-08-26 21:43:07 +01:00
Thomas Hurst c304b519ad Handle errors a bit more sensibly, especially with quoted strings 2008-08-26 17:12:29 +01:00
Thomas Hurst 9baf905cab Convert the stderr spam into a gtk.MessageDialog. Format and localise the error.
Handle unterminated quoted string errors better
2008-08-26 17:04:53 +01:00
Thomas Hurst a89f18e095 Make config parsing errors non-fatal. Spam stderr with any errors encountered. 2008-08-26 15:41:27 +01:00
Emmanuel Bretelle 47bc7bc378 readding thomas changes 2008-08-25 20:56:08 +01:00
Emmanuel Bretelle f44955b926 Cleaning up rev 490 2008-08-25 20:16:49 +01:00
Thomas Hurst cac821f58a Add a demo font selection button and a spin button for scrollback 2008-08-24 07:39:49 +01:00
Thomas Hurst 0a6acc19dc Ctrl-Tab and Ctrl-Shift-Tab are actually valid keybindings. Teach keybindings.py that some items may have more than one keybinding by supporting optional tuples in defaults. 2008-08-23 23:57:51 +01:00
Thomas Hurst f37324303b Remove some keybinding changes that were only meant for local testing. 2008-08-23 10:01:50 +01:00
Thomas Hurst f685f3e317 source.keybindings -> source['keybindings'] now. 2008-08-22 06:45:31 +01:00
Thomas Hurst 4dafba1270 Don't use __getattr__ in config stores; use __getitem__ and talk to them using store[key] instead of getattr(store, key). Simpler and maybe faster (1 method lookup vs failed attribute lookup + method lookup). 2008-08-22 03:05:22 +01:00
Chris Jones 5f81247353 Feeble exploration of the parts necessary for a graphical profile editor 2008-08-22 00:19:18 +01:00
Chris Jones 93fad0cee1 remove duplicate config default 2008-08-21 23:06:56 +01:00
Thomas Hurst 769b86119b Handle trailing spaces in configs properly; don't make them part of the value.
Handle unquoted palette values.  Parse errors will occur if they're not exact.
2008-08-21 21:57:59 +01:00
Thomas Hurst fc53521c80 Add a --geometry option. Terminator's constructor is getting a bit long. 2008-08-21 08:07:38 +01:00
Emmanuel Bretelle e7c57039a4 Fixing Zoom/UnZoom with notebook pages 2008-08-16 13:37:49 +01:00
Thomas Hurst 8ee6c682ca Avoid silently eating gconf exceptions, at least under debug mode. 2008-08-15 17:34:33 +01:00
Thomas Hurst 7f1dc2729a Really. 2008-08-15 17:27:56 +01:00
Thomas Hurst 6e638af1e7 Defaults have moved 2008-08-15 17:27:16 +01:00
Thomas Hurst 894ba31880 Handle case changing better. <Ctrl>F now works like <Ctrl>f rather than <Ctrl><Shift>F 2008-08-15 16:20:08 +01:00
Thomas Hurst fbd862c1aa Make <Ctrl>plus/minus/etc work 2008-08-15 15:46:38 +01:00
Thomas Hurst ca66d55bea Make f11_modifier work again. 2008-08-15 13:40:10 +01:00
Thomas Hurst 1f0bb51e76 Make sections and settings case-insensitive (stored lowercase).
When we get profiles we should be case-preserving, but this will do for now.
2008-08-15 13:22:07 +01:00
Thomas Hurst c0ab0e3f34 Introduce a cut-down version of my .ini parser; this one doesn't do anything special with indents, and just builds a simple dict on parse. It does introduce the same error handling (other than that for indenting), so some previously working (but highly dubious) configs might break.
Hook up a [keybindings] section, to override the default ones now in config.py; teach TerminatorConfig to merge configured keybindings from available sources; gconf support shouldn't be far away.
2008-08-15 04:11:24 +01:00
Emmanuel Bretelle 0c49debaac Make sure the titlebar is shown consistently
* Fixes LP#249200
2008-08-13 18:12:57 +01:00
Thomas Hurst c471d636a6 Save a method call. 2008-08-13 02:06:49 +01:00
Thomas Hurst 233fd9630b Make search actually only search valid buffer ranges. 2008-08-13 00:17:40 +01:00
Thomas Hurst b02ffdc210 Add a basic scrollback search function, attached to Ctrl-Shift-F for now. Type, hit Enter to search, Enter to continue, and Escape to cancel the search (with the input gadget having focus).
A bit slow because VTE's get_text* API is awful.
2008-08-12 02:12:30 +01:00
Thomas Hurst 07457a29bd Style; remove double lines after some methods. 2008-08-11 20:06:41 +01:00
Thomas Hurst 3a7822253a Fix a few missed keybindings. 2008-08-11 19:30:04 +01:00
Thomas Hurst acaa153810 Style; put method bodies on seperate lines in keeping with the rest. 2008-08-11 19:16:10 +01:00
Thomas Hurst b16c32baa4 Remove some debugging, remove the unused _f11_modifier attribute 2008-08-11 19:14:26 +01:00
Thomas Hurst 9923c9e347 Tidy imports, remove completely useless comments 2008-08-11 19:12:42 +01:00
Thomas Hurst be159574d9 We don't need to do a keyname lookup here any more. 2008-08-11 19:08:26 +01:00
Thomas Hurst e65e396d32 Hook up new keybinding code. Making them configurable shouldn't be far away... 2008-08-11 19:02:14 +01:00
Thomas Hurst d1787e576d Introduce a class for handling keybindings. Not yet hooked up to anything, but initial tests suggest it works. 2008-08-11 15:30:51 +01:00
Thomas Hurst f96018f0bc Use TerminatorTerm's get_window_title(), rather than everyone asking vte and failing to handle it properly. 2008-08-07 23:07:21 +01:00
Thomas Hurst 4c0e500c7b Always set some sort of title; if vte's title is None, use the command the terminal is running.
Add an option to spawn a telnet instance to the local debug server in a tab.  newtab() and splitaxis() now support a command argument for this.
2008-08-07 21:34:47 +01:00
Thomas Hurst 6a14445c74 Debugserver debugging fixups. 2008-08-07 18:20:45 +01:00
Thomas Hurst 9a3ddc0854 Do some tidying. Only spawn a server when running with -dd (debug is now a counter, not just a boolean) 2008-08-07 17:26:46 +01:00
Thomas Hurst 61aafbe028 Give our debugserver a reasonable starting environment 2008-08-07 14:59:10 +01:00
Thomas Hurst d0d81fc152 Introduce a debug service; spawn a Python REPL on a random local TCP port. Supports basic telnet commands, ^C and ^D work, etc. 2008-08-07 05:32:28 +01:00
Chris Jones 807921372b Handle creating popup menus with far less crack, and for kicks, not occasionally spit backtraces trying to create menus. For bonus points, also don't pass the event onto the widget 2008-08-06 23:12:45 +01:00
Thomas Hurst d51ab3a7e2 Change window titles from Terminator: Title to Title - Terminator. 2008-08-05 11:28:46 +01:00
Thomas Hurst 2d6f1c0485 r459 breaks; regexp probing, since \< is valid in both POSIX and GNU regexps; they just don't mean the same thing. This means on !GNU, URL matching silently breaks and POSIX word boundries are never tried.
Since the VTE-warning is annoying people, rather than back it out, try to make everyone happy; Linux now only uses GNU, !Linux always probes, and there's now a try_posix_regexp configuration option who's default reflects this.  Hopefully we will Just Work in most environments.
2008-08-03 03:09:38 +01:00