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 |