Commit Graph

255 Commits

Author SHA1 Message Date
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
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
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
efafd65221 Update tab bar position when it is changed, if apropriate 2010-04-01 23:15:42 +01: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
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
2164f32ddb Kludge the layout creation until it works 2010-03-11 13:04:01 +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
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
da7e7850b0 Add support for window sizes in the layout 2010-02-27 15:18:08 +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
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
7450a57013 Reparse keybindings after the prefs window is OK'd 2010-02-07 22:32:55 +00:00
Chris Jones
1aadbae30b Rework layout config to flatten and build up trees 2010-02-02 00:39:41 +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
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
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
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
db7b0cc0a0 Directional navigation. Only works for going left yet, see included FIXME 2010-01-20 00:54:35 +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
abe9b24518 Implement titlebar colours 2010-01-18 23:27:22 +00:00
Chris Jones
e6ad61831d Remove unnecessary print statements 2010-01-18 20:40:52 +00:00
Chris Jones
23f469add3 Fix up handle_size to work properly 2010-01-11 23:46:18 +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
0b5ac38793 Hand merge in from trunk 2009-12-19 02:08:35 +00: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
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
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
0dd4ec66bf clear some migrated code from terminator.py 2009-08-11 00:42:39 +01:00
Chris Jones
5d1ea593d8 migrate dbg,err to util.py 2009-08-08 01:22:31 +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
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
13c11e1475 merge in trunk 2009-07-13 23:36:45 +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
46b73f406a Handle get_first_notebook_page() failing. Closes LP #354495 2009-06-16 18:26:16 +01: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
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
7529d1c32f Improve PEP 8 compliance 2009-05-07 02:35:23 +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
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
c4409fb03d prevent the font size from decreasing when zooming 2009-04-01 10:21:16 +01: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
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
4944ccabe7 make tab bar more configurable. Closes LP: #287307 2009-03-20 00:23:37 +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
2fb6b9b329 be more careful about static class properties 2009-03-06 11:25:15 +00:00
jmonreal
d467d1ae75 Direction Fixed 2009-02-16 11:03:42 -03: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
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
4c8c2614be migrate more titlebar show/hide logic into TTT 2009-01-30 12:04:59 +00:00
Chris Jones
337c650f34 Back out earlier debugging changes 2009-01-27 21:19:10 +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
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
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
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
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
a7e12a13b5 Merge from trunk 2009-01-13 22:32:36 +01:00
Stephen Boddy
29ef912250 Some small fixes after discussion and testing over irc 2009-01-12 17:08:12 +01:00
Stephen Boddy
b69a54b53f Significant grouping improvements. Nearly everything there and works great. Still require 2 GUI related things before done. 2009-01-10 17:13:49 +01:00
Stephen Boddy
895226aaa9 Two minor fixes to prevent unused groups lingering in the submenu when a terminal is close/ungrouped. 2009-01-10 17:00:05 +01:00
Chris Jones
dec20d4069 Loop around tabs when using next_tab or prev_tab keyboard shortcuts. Closes LP #315494 2009-01-10 01:55:46 +00:00
Chris Jones
c7fdbf5aa6 Be able to remove a terminal without destroying it. This should really be factored out into a deparent() and remove(). Closes LP #313553 2009-01-04 02:37:42 +00:00
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
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
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
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
68529502e7 Make prefs_profile.auto_add more robust, add some more global reconfiguration 2008-11-16 02:42:09 +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
901b5a8ea4 Use "%r" % foo instead of "%s" % repr(foo). No functional changes. 2008-11-04 17:01:00 +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
Chris Jones
434c253237 make profile editor opened the conext menu and improve its appearance 2008-11-01 00:50:34 +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
b623f662e8 only do session handling if we have a gnome_client 2008-10-16 11:43:50 +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
76b06bc5f7 Workaround an apparant gtk bug in next/prev_page 2008-09-22 18:31:35 +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
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
Thomas Hurst
3c77ec10c1 Add support for tab_position. 2008-08-28 17:08:15 +01:00
Emmanuel Bretelle
f44955b926 Cleaning up rev 490 2008-08-25 20:16:49 +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
ca66d55bea Make f11_modifier work again. 2008-08-15 13:40:10 +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
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
e65e396d32 Hook up new keybinding code. Making them configurable shouldn't be far away... 2008-08-11 19:02:14 +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
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 James
66c1de7a43 define _hidden on start 2008-08-01 19:22:28 -05:00
Chris James
58747628a5 fixed hide 2008-07-28 03:54:30 -05:00
Chris James
a075a6cc62 Quake mode 2008-07-28 02:10:30 -05:00
Chris Jones
706ff0ca3f merge the candidate branch for LP #245733 2008-07-13 01:04:44 +01:00
Chris Jones
18ffbcd62e Merge Markus Korn's branch for LP #246706 2008-07-13 00:49:30 +01:00
Chris Jones
ab07605083 remove LP bug numbers and TODO. I don't think these things should be in the code. FIXMEs seem ok, but I think the others should be in commit messages and bug tracker (not even TODO, I don't think that should exist either) 2008-07-13 00:33:34 +01:00
Markus Korn
5a8718d912 * terminator, terminatorlib/terminator.py: added a '--no-gconf' commandline
option
* doc/terminator.1: updated manpage
2008-07-08 20:38:51 +02:00
Emmanuel Bretelle
512c8d5091 Fixing LP#247457
resizing the window when creating or destroying the notebook
2008-07-12 13:05:35 +01:00
Emmanuel Bretelle
ace185a76e reverting one change from nxvl 2008-07-12 11:30:47 +01:00
Nicolas Valcárcel
c3aa93eb05 Changed Maximise/Unmaximise underlining as per keybinding 2008-07-11 18:56:44 -05:00
Emmanuel Bretelle
be6229cb9b LP#242852 comment 19 seems to say that real_transparency is causing the issue.
Re-pushing the code removed in rev 398
* added an new conf parameter (enable_real_transparency defaulting to True) so real_transparency can be disabled
* This should be enough to push the release :)
2008-07-06 14:01:44 +01:00
Mackenzie Morgan
a49f4dc43a Move accelerator from A to T on close dialog 2008-07-05 12:55:14 -04:00
Mackenzie Morgan
e3be3519ed Get rid of button label ambiguity 2008-07-05 00:42:12 -04:00
Daniel T Chen
fb3864bded Clarify button labels on close dialog 2008-07-05 00:39:55 -04:00
Chris Jones
909a285200 debug the zooming code more, and make sure we always remove the one-time signal handler 2008-07-05 03:47:13 +01:00
Thomas Hurst
b200044391 Use xrange instead of range. No functional changes; just means we create fewer lists. 2008-07-04 02:49:56 +01:00
Chris Jones
88eb16ce1e tidy up a little in preparation for release 2008-07-03 23:48:29 +01:00
Chris Jones
8a8a183a75 back out RGBA stuff as a candidate fix for LP #242852 2008-07-02 21:00:14 +01:00
Chris Jones
ce0266b0e4 little change to make sure we don't get given gtk1. seems pretty unlikely to happen, but we might as well handle it nicely 2008-07-02 10:16:52 +01:00
Chris Jones
d8a39862f1 Revert commits 291..293 2008-07-01 22:51:12 +01:00
Emmanuel Bretelle
6d1b7080cc Finnaly properly handle close button in notebook tab...
The trick is to use gtk rc_style, yet again, and override default theme values to avoid HUGE tabs
 closing LP#242816
2008-06-29 16:06:56 +01:00
Chris Jones
2fcecce303 minor fix to LP #242852 candidate 2008-06-29 03:01:55 +01:00
Chris Jones
d424fd24e1 candidate fix for LP #242852 2008-06-29 03:01:02 +01:00