Commit Graph

152 Commits

Author SHA1 Message Date
Stephen Boddy
54b4223c4d Add some nice window icon setting abilities, plus I noticed a few options were missing from the manpage. 2012-06-28 18:07:00 +02:00
Stephen Boddy
bc9539f187 Adds ability to override the WMCLASS_NAME of a window. 2012-06-28 15:38:01 +02:00
Stephen Boddy
cbb86c48c5 Spotted some unevenness in the initial position of new splits. This fixes it to 50:50 2012-06-25 20:01:35 +02:00
Stephen Boddy
b6a75be607 Fix the inability to drag the splitters 2012-06-25 19:05:43 +02:00
Chris Jones
12e76b7c78 Merge branch from Bruno Braga that implements a checkbox when closing multiple terminals, to suppress future dialogs 2012-04-19 11:06:26 +01:00
Andre Hilsendeger
e95bdcf964 Add possibility to rotate the paned containers. 2012-04-04 17:48:29 +02:00
abdcc0f201 Changed the dbus method new_window to use an array of options instead of only
passing the layout, also formatted a little the help strings in the optionparse 
module (to fit in 80 chars without breaking the indent)
2011-12-29 21:39:09 +01:00
Bruno Braga
df68c6c94d Implemented checkbox into the multiple terminals confirmation dialog, in oder to suppress it if users don't want this annoying message all the time. 2011-12-08 23:12:29 +10:00
Przemek Wesolek
6d6d73568d New terminal inherits the current one's profile. 2011-11-05 16:49:01 +01:00
Chris Jones
c6fca1dd73 Create some basic architecture to persist metadata across containers being removed/recreated as terminals are exiting. Fixes LP#711356 2011-08-22 21:05:38 +01:00
Chris Jones
b0f5ab21b9 Layouts with more than two tabs would fail to load. Fixes LP #646826 2011-08-21 00:38:50 +01:00
Stephen Boddy
8f90c582a6 Defer the resize callbacks into the gobject.idle_add queue. Huge difference in splitter dragging in complex layouts 2011-02-23 22:46:55 +01:00
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
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
Peter B. Jørgensen
656c2b3b76 Merged with trunk 2010-07-13 14:19:42 +02: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
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
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
5b5739df0e Add some more debugging to layout creation 2010-06-15 15:19:05 +01: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
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
6a5f3381a7 Block tab creation while zoomed. Closes LP #563911 2010-04-15 20:32:25 +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
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
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
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
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
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
16bc247b0e Attach the debug server to the context menu 2010-03-19 22:16:08 +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
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
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
b213e76461 Fix up drag and drop to work more often, between more widgets 2010-03-02 12:39:47 +00: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
b78938a145 Refactor the next/prev directional navigation to work properly 2010-02-14 22:03:06 +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
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
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
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
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
ab02add397 Make the move-tab keyboard shortcuts work 2010-01-24 22:15:54 +00:00
Chris Jones
05a61f802d FIXME another method that just does a pass 2010-01-24 13:18:50 +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
7b0bb5818d dbg() which kind of colormap we're setting 2010-01-21 20:36:02 +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
e2db10fc09 Implement urgent bell handler 2010-01-21 00:13:56 +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
4a1a65dfbd Make icon setting more rubust 2010-01-19 20:03:05 +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
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
7d08d790e2 port Terminal to use Signalman 2010-01-18 19:48:24 +00:00
Chris Jones
9d5d9a286c Add another possible exception to the tomboy keybinding 2010-01-14 23:39:49 +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
be413d3622 Track a couple of pre-existing connection IDs in Terminal.cnxid 2010-01-10 17:17:31 +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
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
9744f3ebb6 Add keyword arguments to Window.__init__() for command line options 2010-01-05 12:49:57 +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
88cd14ac64 Remove a couple of stale FIXMEs 2009-12-11 14:25:38 +00:00
Chris Jones
f9725242ec Make tab opening conext menu work 2009-12-08 13:01:13 +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
9cbc6f1282 Add the very barest of support for tabs. 2009-11-21 22:28:39 -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
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
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
6e0718c829 make zooming and unzooming work 2009-11-14 18:56:50 +00:00
Chris Jones
e5301362e4 tidy up some pylint issues 2009-11-14 17:30:03 +00:00
Chris Jones
6b4c660cbc Start implementing our Paned container and switch to it 2009-11-07 01:40:43 +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
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
f00c265f4c Make the window title update with the terminal title 2009-09-02 21:10:28 +01:00
Chris Jones
93d8118c33 add some more add/remove love to Window 2009-08-28 00:20:22 +01:00
Chris Jones
326bb4fa94 Remove the default_setup function, it's very broken 2009-08-19 19:00:47 +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
196dde427b improve pylint score by disabling tests. winrar \o/ 2009-08-18 13:57:35 +01:00
Chris Jones
28a5b963f0 Remove static config object 2009-08-18 12:52:30 +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
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
598eededd2 Implement equivalent functionality as previous iterations wrt handling the availability of the hide_window keybinding 2009-08-09 23:25:53 +01:00