Chris Jones
209c37aa34
ridiculously simple and non-functional plugin
2009-12-17 01:09:13 +00:00
Chris Jones
2660d0795f
Add a first run at a plugin system
2009-12-17 01:07:01 +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
fabc62ba99
who knows, we might even stick to a testing regime this time
2009-12-11 14:43:19 +00:00
Chris Jones
88cd14ac64
Remove a couple of stale FIXMEs
2009-12-11 14:25:38 +00:00
Chris Jones
7d897eaef7
Make title propagation work properly
2009-12-10 23:25:52 +00:00
Chris Jones
602c6a3b57
Make title changes propagate better, albeit not perfectly yet
2009-12-10 13:20:03 +00:00
Chris Jones
f10f43fa8a
pylint
2009-12-10 11:52:26 +00:00
Chris Jones
33e6254ad2
pylint
2009-12-10 11:37:53 +00:00
Chris Jones
dfe85f1e9b
pylint quiescing
2009-12-10 11:36:46 +00:00
Chris Jones
0d319e8a57
Improve pylint.sh to be much less noisy and annoying
2009-12-09 13:32:35 +00:00
Chris Jones
c31758179e
pylint fixes
2009-12-09 13:22:34 +00:00
Chris Jones
7ed5a573d5
at the suggestion of pylint, refactor Factory::isinstance() to be more succinct
2009-12-09 13:22:27 +00:00
Chris Jones
a432d10d24
Add a quick debugging entry
2009-12-09 13:02:45 +00:00
Chris Jones
67b79ff1da
There's no reason anymore to special-case notebook here
2009-12-09 13:02:31 +00:00
Chris Jones
24b6082155
Add more debugging and make sure we don't fall into the trap of iterating over a list we're modifying
2009-12-09 13:02:13 +00:00
Chris Jones
7b24823fd6
Fix a stupid typo
2009-12-09 13:01:41 +00:00
Chris Jones
34da8ffe3a
fix a bunch of bugs in tab handling and attempt to handle closing a tab with multiple children, but all of this is still entirely buggy
2009-12-08 13:57:29 +00:00
Chris Jones
f9725242ec
Make tab opening conext menu work
2009-12-08 13:01:13 +00:00
Chris Jones
2db2e0f75e
Beginnings of making the tab close button work, only handles the simplest case so far
2009-12-08 09:10:39 +00:00
Chris Jones
0796e70808
Don't create a one-off TabLabel for the first tab, Notebook.newtab() makes them and now the order of creation is fixed they even show up properly
2009-12-07 20:32:47 +00:00
Chris Jones
ced0e4f3f5
And make pylint happy about it
2009-11-30 09:52:38 +00:00
Chris Jones
595a3a02e5
Might as well do this for all errors
2009-11-30 09:51:34 +00:00
Chris Jones
05fb49bed6
Make Paned widgets eat themselves when they go from 2 to 1 tabs
2009-11-25 12:51:14 +00:00
Chris Jones
4577c14c6e
Only connect terminal signals to terminals
2009-11-25 09:07:48 +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
0447c8f6f2
quiesce pylint
2009-11-24 23:49:03 +00:00
Chris Jones
f8ab3d8308
remove testing
2009-11-24 23:47:44 +00:00
Chris Jones
2dd44ddc8a
Add an object factory to get us out of our dependency hell
2009-11-24 23:47:32 +00:00
Chris Jones
1d7adc8283
Port TabLabel across and integrate it.
2009-11-23 15:17:33 +00:00
Chris Jones
9cbc6f1282
Add the very barest of support for tabs.
2009-11-21 22:28:39 -06:00
Chris Jones
b6703153a1
Start a new class derived from Container for gtk.Notebook
2009-11-21 21:53:38 -06:00
Chris Jones
8842d3ecf6
Add a FIXME note for later
2009-11-21 21:53:01 -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
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
5e104972a7
Fix keybinding for closing ourself
2009-11-21 12:11:50 -06:00
Chris Jones
db3ac95171
introduce the dialog to confirm closing something
2009-11-21 12:09:47 -06:00
Chris Jones
c5711cbe15
get_top_window moved to util
2009-11-20 16:53:06 -06:00
Chris Jones
0deda2434d
pylint fixes
2009-11-20 16:52:39 -06:00
Chris Jones
ac1a58e8b3
Always a good idea to call your new function
2009-11-20 16:52:26 -06:00
Chris Jones
025c5d3dd1
Fix up config.py slightly to make pylint happier
2009-11-20 16:46:50 -06:00
Chris Jones
279ebf55d6
use the paned hoovering function introduced in revision 910
2009-11-20 09:31:07 -06:00
Chris Jones
1db6a242b1
add a sanity check function. This probably shouldn't exist, but is useful right now
2009-11-20 09:30:50 -06:00
Chris Jones
aa531014ef
improve debugging and ensure that we can't register terminals/windows multiple times
2009-11-20 09:30:28 -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
7a3f553d82
If there are no more Terminals, destroy all Windows
2009-11-19 23:45:33 -06:00
Chris Jones
efbeffb060
Always return focus to the VTE widget after playing with group names
2009-11-19 23:42:49 -06:00
Chris Jones
0ff5aa3159
Tidy up some debugging and fix group hoovering
2009-11-19 23:40:31 -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
c48c1d4fd6
fix up debugging statements
2009-11-14 23:12:58 +00:00
Chris Jones
3591aec862
Add very simple ability to register de-register window widgets
2009-11-14 23:12:38 +00: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
0f7a9aa40b
Improve some error message and switch to using new Container methods for handling child signals.
2009-11-14 22:58:22 +00:00
Chris Jones
29d661b26a
self.signals shouldn't be a class variable. add helper functions to connect child widget signals and disconnect them.
2009-11-14 22:57:35 +00:00
Chris Jones
6e0718c829
make zooming and unzooming work
2009-11-14 18:56:50 +00:00
Chris Jones
e93a95162d
Add a menu item to restore zoomed/maximised layouts
2009-11-14 18:56:34 +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
6f93a51b5f
fix stupid bug that registered all Paned widgets as HPaned ones. Fix ordering of adding children so things are never de-parented. Hook up terminal zooming signals.
2009-11-14 18:55:07 +00:00
Chris Jones
0190f2dea9
make signal registration more robust, and add a function to walk up the widget tree to find the top-level Window object
2009-11-14 18:54:12 +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
55c79f56d5
remove some cruft and replace the hacky backwards search with a more correct one. There are still some issues though
2009-11-04 20:41:01 +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
f7d0d957cd
Add function to snapshot a widget and its children as a pixbuf
2009-10-27 21:03:11 +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
b43695b23d
Flesh out the borg a little
2009-10-09 12:25:06 +01:00
Chris Jones
c1c81d3a91
pylint fixes
2009-10-09 00:30:03 +01:00
Chris Jones
7605957efa
pylint fix
2009-10-09 00:24:58 +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
9d6b961fc3
undo an indenting fail
2009-10-08 21:29:45 +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
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
414e7f0731
Add a mechanism to de-register a Terminal() that's being destroyed
2009-10-05 22:15:22 +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
a31c0ef411
If something isn't used outside one function, don't make it be a class variable
2009-09-06 23:53:21 +01:00
Chris Jones
d5ff98211c
Swap out some noop code for pylint suppression
2009-09-06 23:52:58 +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
0912fb8aae
fix up a pylint error and migrate some pure functions from terminal.py
2009-09-06 22:54:52 +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
28e7ee6116
Add some more of our attributes
2009-09-04 22:11:52 +01:00
Chris Jones
718a15706f
handle URLs
2009-09-04 20:12:35 +01:00
Chris Jones
b58a7224aa
handle the window closing properly
2009-09-04 20:12:04 +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
c40c360c20
no reason for the groupsend types to be global
2009-09-03 13:59:17 +01:00
Chris Jones
1e4af9883b
keep pylint a little happier
2009-09-03 10:34:31 +01:00
Chris Jones
799d508708
Make _entry_handler_id not be a static class attribute because it doesn't need to be
2009-09-03 09:03:37 +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
846e0c0fff
Emit a signal when editing is done
2009-09-03 00:51:46 +01:00
Chris Jones
bf20587edc
decouple Terminal from Terminator, and add the minimum necessary group icon handling
2009-09-02 23:17:54 +01:00
Chris Jones
0f5cf7c496
remove titletips, it's a terrible option
2009-09-02 23:17:08 +01:00
Chris Jones
d007bc45c5
bare minimum titlebar functionality
2009-09-02 22:38:27 +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
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
Chris Jones
1d332c915e
Only attempt to set an image if there actually is an image configured. Closes LP #404846
2009-09-02 11:01:30 +01:00
Chris Jones
f136b6d78e
add a stub function to the titlebar
2009-08-28 01:11:13 +01:00
Chris Jones
93d8118c33
add some more add/remove love to Window
2009-08-28 00:20:22 +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
d17981b581
Add another stub function to the titlebar class
2009-08-19 19:01:11 +01:00
Chris Jones
326bb4fa94
Remove the default_setup function, it's very broken
2009-08-19 19:00:47 +01:00
Chris Jones
428f931bf3
oops, don't show the searchbar by default
2009-08-19 19:00: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
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
f5ee9d54c5
use the correct gobject init call and add a stub function
2009-08-19 01:05:44 +01:00
Chris Jones
09780a6500
Use the correct gobject init call
2009-08-19 01:05:30 +01:00
Chris Jones
ac7769b556
return the newly created terminal
2009-08-19 01:05:15 +01:00
Chris Jones
96114aa863
now config is borg we don't need to pass handles around
2009-08-19 01:04:53 +01:00
Chris Jones
4d7d734587
Simple bootstrapper, temporary during epic refactor
2009-08-19 01:04:37 +01:00
Brian Murray
48e5a7e6ca
expand launchpad url match to mirror Ubuntu Policy Manual and linkify each bug number
2009-08-18 10:59:06 -07:00
Chris Jones
196dde427b
improve pylint score by disabling tests. winrar \o/
2009-08-18 13:57:35 +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
0b90e29b16
remove unused import and disable a pointless pylint check
2009-08-18 13:52:02 +01:00
Chris Jones
089b708e2c
shut pylint up
2009-08-18 13:51:09 +01:00
Chris Jones
f0260456c9
we don't need to re-emit the search keypress, all it does is conditionally emit end-search anyway
2009-08-18 13:48:04 +01:00
Chris Jones
5f339da4e1
Use the right class name
2009-08-18 13:47:46 +01:00
Chris Jones
d538b47a50
initial import of a titlebar class
2009-08-18 13:45:57 +01:00
Chris Jones
53f33109b4
start fleshing out Terminal
2009-08-18 13:44:41 +01:00
Chris Jones
1fdd357058
switch to new style translation import
2009-08-18 13:44:16 +01:00
Chris Jones
a5cccbe757
refactor this to not use gettext's __builtin__ hack
2009-08-18 13:43:39 +01:00
Chris Jones
d6d3192d82
refactoring out of the search bar into its own class
2009-08-18 13:43:18 +01:00
Chris Jones
65767693df
It always helps to return the thing you're called for
2009-08-18 12:59:06 +01:00
Chris Jones
1cb1f166cf
fix a typo
2009-08-18 12:55:52 +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
28a5b963f0
Remove static config object
2009-08-18 12:52:30 +01:00