Commit Graph

347 Commits

Author SHA1 Message Date
Stephen Boddy 9f09d9c334 (trunk-1647) Fix for those not running IBus, where the IBus workaround caused broken keys in other keymaps set with non-IBus tools
(New dependancy added (python-psutil) for detecting the IBus process)
2015-11-30 21:54:23 +01:00
Stephen Boddy cd68c0e264 Fix the "Run command as login shell" 2015-11-30 19:08:04 +01:00
Stephen Boddy d3a0d5193e Remove unsupported utmp for now, till alternative solution 2015-11-30 19:07:43 +01:00
Stephen Boddy df0d9aa0eb Fix right-click for mouse aware apps 2015-11-29 23:57:13 +01:00
Stephen Boddy b85796d64b Fix Ctrl-click on URL if terminal has padding 2015-11-29 23:43:45 +01:00
Stephen Boddy 14fb184df8 Fix exception when Ctrl-clicking the terminal when not over a URL 2015-11-29 23:37:02 +01:00
Stephen Boddy 9bd8b5ea09 Fix cwd when new term spawned from a symlinked directory 2015-11-29 20:19:11 +01:00
Stephen Boddy 80b157ee33 Add dimming for 256 colour palettes 2015-11-29 05:27:59 +01:00
Stephen Boddy ecd3cb6b63 Fix copy on selection to work on already open terminals 2015-11-29 03:07:13 +01:00
Stephen Boddy 918b53c6f0 Fix the palette for inactive terminals after Prefs window 2015-11-29 02:51:26 +01:00
Stephen Boddy c1f92495d8 Fix positioning of group popup menu for later versions of GTK 2015-11-29 00:01:55 +01:00
Stephen Boddy 6db2337c56 Add word chars back in if VTE is 0.40+ 2015-11-28 20:28:01 +01:00
Stephen Boddy b5b74e8071 Add option to toggle the rewrap on resize 2015-11-28 20:14:14 +01:00
Stephen Boddy 8f7b7f9a27 Remove an outstanding VERIFY item. Gtk-3.0.gir function def says to ignore it (gtk2->gtk3) 2015-11-07 01:29:12 +01:00
Stephen Boddy 4269a99598 Reimplement visual flash that got removed from libvte, reusing the DnD overlay to flash the terminal (gtk2->gtk3) 2015-09-29 02:24:36 +02:00
Stephen Boddy 7b769ae1d8 * Fix the DBus interface (gtk2-gtk3)
* Disable the wm_class feature. Seems not possible in GTK3, and breaks
  the DBus call for new_window.
(trunk-1651)
* As part of GTK3 fixup, some improvements to the DBus interface, and
  remotinator (Steve Boddy)
  * Can now open a window or tab using remotinator
  * Can get the window uuid, or title using remotinator
  * Moved new tab key handling into the terminal for consistency
  * Standardise response when a new term is created (split, win
    or tab) to reply with new terms uuid
  * For GTK3 gave the DBus a slightly different name so they it
    can run at same time as GTK2
  * remotinator now uses argparse for commandline option handling,
    vastly improving the option handling
  * remotinator help strings are translatable now
2015-09-19 05:25:25 +02:00
Stephen Boddy f64d3e67fa (trunk-1599/1600/1601)
* setup.py can install the manual (and by extension do can debuild)
* setup.py has (inactive) code for generating the html from the source
  but this will break if rtd theme is not available
* A few changes to doc strings to make the autodoc prettier
* Added help shortcut, by default F1 to open the local manual
* Added button to About tab to launch manual
* A couple of additional string to translate related to manual/help

* Small tweak to setup.py to seperate build and install, and always attempt
  to install manual by default.

* Small fix for systems (i.e. my 12.04 LTS) that don't set LANGUAGE for
  whatever reason. This breaks the manual lookup
2015-09-01 22:50:09 +02:00
Stephen Boddy 2e21276b64 (trunk-1619) Slight change to how the zoomed font is calculated. This just
seems to give a more natural size when zooming over the previous. Can be
reverted if people don't like it. Also using this as a sneaky way to close 6
year old bug.
2015-08-21 00:09:01 +02:00
Stephen Boddy 933237adce (trunk-1618)
* Remove the old_padding and allocation stuff from the zoom_scaled function in terminal which iasn't used anyway
* Remove another unneeded assignment in is_zoomed function in terminal
2015-08-20 23:55:42 +02:00
Stephen Boddy 8b8376c331 Fix the zoom/maximise terminal function (gtk2->gtk3) 2015-08-16 21:19:24 +02:00
Stephen Boddy e723f0df25 (trunk-1611) Fix composed characters when broadcast is turned on to appear in all receivers now (LP:#1463704) 2015-08-10 22:51:56 +02:00
Stephen Boddy d6b62b61d8 Minor gtk3 fix for setting urgent flag on window for highlight in task bar 2015-08-06 21:45:07 +02:00
Stephen Boddy 275086501b * (trunk-1594) Add and improve the mnemonics in the group menu
* Also fix the group radio buttons after the mnemonics additions broke them
  (GTK3 is such a pain - there may be a better solution, I just couldn't find it)
2015-08-04 20:45:22 +02:00
Stephen Boddy d53b036642 Dual solution for cwd based on comments 36 & 37 by Egmont Koblinger in LP#1030562 2015-07-13 16:30:27 +02:00
Stephen Boddy 43c134b5c5 (trunk-1575) Fix drag and drop of files (Schplurtz le Déboulonné, LP#1311481) and some tweaks (Steve Boddy)
Schplurtz le Déboulonné
    - multiple files can be dropped in terminal
    - correctly sh-quote filenames, even those with '
    - also fixes LP#1311481 (\n after dropped filename)
Steve Boddy
    - changes to the logic, where all lines are now checked for the file:// prefix
    - text blocks now insert in full, not just first line
    - Oddly gtk3 changes dropped text blocks from '\n' to '\r\n' (gtk2->gtk3)
2015-07-13 00:39:09 +02:00
Stephen Boddy d56da596b3 Fix the drag-and-drop of terminals/text back to pre-port functionality - a real pain this one (gtk2->gtk3) 2015-07-12 22:06:36 +02:00
Stephen Boddy 8b566b9859 (trunk-1574) Add shortcuts for next/prev profile (Peter E Lind, LP#1314734) 2015-07-12 00:27:59 +02:00
Stephen Boddy cf81fe937a (trunk-1573) Global setting for changing the titlebar font (partially from Eli Zor branch), but expanded and improved (docs/GUI), plus some minor fixup from this. 2015-07-10 21:37:35 +02:00
Stephen Boddy 1a435127f2 Fix URL opening. Little too much removed in original port, meaning one click = two copies of page opened. 2015-07-02 21:42:40 +02:00
Stephen Boddy 912545e5da Remove comment re right way to keep menus visible - Happy with solution 2015-07-02 21:40:53 +02:00
Stephen Boddy e4edaa1ffa Add Ctrl+Shift+mousewheel and Ctrl+Super+mousewheel actions to zoom receivers or all terminals 2015-06-21 20:38:03 +02:00
Stephen Boddy d9ba9c41cf Small fix in get_allocation override to prevent exceptions/hung process on exiting with close button. 2015-06-21 18:54:37 +02:00
Stephen Boddy 7e89aa14b3 Revert to gtk2 of cwd detection, as method from Egmonts gtk3 port only returned None for me 2015-06-19 03:58:41 +02:00
Stephen Boddy 5fecd18da1 Fix pid for spawning now forking is deprecated, but returns are different (vte 0.36 -> 0.38) 2015-06-19 03:38:17 +02:00
Stephen Boddy addb3947dd Fix allocations not having the x,y position just w,h (gtk3 bug? gtk2->gtk3 diff?) 2015-06-19 03:36:41 +02:00
Stephen Boddy 3b290dd563 Fix allocations (no longer an attribute) when balancing (gtk2->gtk3 diff) 2015-06-19 03:34:30 +02:00
Stephen Boddy 724b563073 (trunk-1551) Fix scrollbar doubleclick rebalancing - fixes: lp #1423686 2015-06-19 03:32:24 +02:00
Stephen Boddy 9c9a37eb78 Add Ctrl+MouseWheel Zoom in/out and Shift+MouseWheel page scroll up/down 2015-03-02 22:03:08 +01:00
Stephen Boddy df0043427e Fix the scroll up/down key bindings to use gtk3 method 2015-03-02 21:50:29 +01:00
Stephen Boddy be6128f7be Minor focus grabbing fix from the GTK3 port. 2015-02-26 00:07:14 +01:00
Stephen Boddy 22ed84abdd Apply terminator-gtk3-vte038-v4.patch from Egmont Koblinger 2014-09-19 16:10:43 +02:00
Stephen Boddy 7ca6dd96c6 Changes made by pygi-convert.sh 2014-09-19 16:08:08 +02:00
Peter Lind f3403d72a9 Improved code for cycling through profiles 2014-08-13 18:52:59 +02:00
Peter Lind 16cf86d5ab Adding feature to switch between profiles using keybindings
- adding config options
- adding prefeditor code
- adding event handlers to switch back and forth
2014-08-13 09:36:20 +02:00
Stephen Boddy 3fa48565ef Additional shortcuts/code to toggle All/Tab grouping 2014-01-24 23:29:54 +01:00
Stephen Boddy 106afb85df Additional shortcuts/code to toggle All/Tab grouping 2014-01-24 23:29:07 +01:00
Stephen Boddy 581b6eeb92 Add layout save and load of active term for tabs, remember active term on switching tabs, plus more. Too inter-dependant to split into smaller commits. 2013-12-18 18:06:59 +01:00
Stephen Boddy 0272c78739 Add layout save and load of last active term for windows without tabs 2013-11-19 12:46:11 +01:00
Stephen Boddy ef57c5a5f6 Missed import of util function in previous commit 2013-10-31 17:39:16 +01:00
Stephen Boddy f0e3cb7fe5 Terminals now save and load their UUID to and from the layout 2013-10-30 17:12:00 +01:00
Stephen Boddy b7768f62d1 Fix the Group All/Tab shortcuts where titlebars were not updated. Closes LP#1242675 2013-10-25 16:57:14 +02:00
Stephen Boddy 2f9d337687 New feature - Layout launcher opened with option or shortcut 2013-09-03 19:59:28 +02:00
Stephen Boddy a495ce2655 Fix drag-and-drop broken by LP#1192679, and fixing it in the correct place. 2013-09-03 14:20:22 +02:00
Stephen Boddy e14cd19690 Initial cut of layout launcher. It 'aint pretty, but it works 2013-08-28 23:09:17 +02:00
Stephen Boddy 7e85451343 Original layout working directory patch by MoMaT 2013-08-27 19:22:00 +02:00
Stephen Boddy d271137675 Merge feature from nanikata. Closes LP#332267 2013-07-14 21:01:58 +02:00
Chris Jones 59db83ea53 Expand previous fix to be slightly paranoid 2013-05-11 23:09:12 +01:00
Chris Jones 218cf4c1fb Fix prefs window to not be able to set the inactive colour offset to a value >1.0. Doing so has terrible overflow consequences and ends up making the text very dark, instead of leaving it alone. Closes LP#1177506 2013-05-11 23:03:46 +01:00
Chris Jones df41d78f8e Fix up URL drag&drop support to not print so much of the incoming data. Closes LP#1052003 2013-02-15 15:10:55 +00:00
Chris Jones abf0dbfd8c Extra guarding against crashy gtk functions. Closes LP#1089190 2013-01-30 10:53:53 +00:00
Chris Jones b609914cc1 Guard urgency hint against being called on the wrong widget. Closes LP#1083243 2013-01-30 10:26:56 +00:00
Chris Jones bf72c3e4f2 Bring back support for forcing fake transparency. Closes LP#702917 2013-01-30 09:59:52 +00:00
Chris Jones 4516d991a5 Support custom TERM and COLORTERM env vars. Patch from John Feuerstein. Closes LP#794561 2012-10-18 20:51:39 -07:00
Chris Jones 5185657010 Strip newline from text being dragged into the terminal 2012-10-18 14:12:44 -07:00
Chris Jones 6a4e47090b Automatically inject a UUID into any factory object, rather than special-casing terminals. This will be very useful for introspection via dbus 2012-10-18 11:39:28 -07:00
Stephen Boddy a4c0eb453d Merge updates from trunk 2012-07-23 15:30:03 +02:00
Chris Jones 88e65af3a9 Merge a branch from Stephen J Boddy that fixes titlebars not refreshing when using some keyboard shortcuts 2012-07-10 20:27:34 +01:00
Chris Jones 3dd931e19a Merge a branch from Stephen J Boddy to add a keyboard shortcut for changing the window title 2012-07-10 19:41:26 +01:00
Stephen Boddy e5eda24a21 Add shortcut (no default) to edit window title. 2012-06-26 20:29:54 +02:00
Stephen Boddy b4ef645a2f Add shortcuts (no defaults) to insert the group menu numbers. 2012-06-26 20:23:39 +02:00
Stephen Boddy 618e38d18b Clicking with modifier on the group button gives more powerful control. (Shift: Rename, Ctrl: Join current, Super: Include siblings) 2012-06-24 20:42:12 +02:00
Stephen Boddy b85f7c402c Collection of changes that don't add/remove anything, but needed for next checkin to work 2012-06-24 20:36:39 +02:00
Stephen Boddy 383a4b614f Fix titlebars not refreshing when using broadcast shortcut keys 2012-06-24 00:48:23 +02:00
Chris Jones 0a2f1ba7a7 Merge branch from Andre Hilsendeger that fixes initial terminal sizing with non-default font sizes 2012-04-19 11:03:51 +01:00
Chris Jones bca4b8b89f Merge branch from Andre Hilsendeger that implements container rotation 2012-04-19 10:59:33 +01:00
Chris Jones c844184f9f Clear up a signal when closing a terminal and add some debugging 2012-04-19 09:18:05 +01:00
Andre Hilsendeger 5c1bd46177 Set window size after applying font config to ensure a 80x24 terminal. 2012-04-14 13:15:50 +02:00
Andre Hilsendeger e95bdcf964 Add possibility to rotate the paned containers. 2012-04-04 17:48:29 +02:00
Chris Jones 4e2897fa05 Allow users to override the URL handler with a custom executable 2012-01-14 20:39:00 +00:00
Chris Jones cd5c4c1056 Allow plugins to override the open/copy menu items in the terminal context menu. Also set these values for all of the default plugins. When copying a URL, run it through the URL preparer - this means wusers will get the resulting URI on their clipboard, rather than the original text sometimes and the URI some other times, depending on the type of URI 2012-01-14 20:09:25 +00:00
Chris Jones 780c295cf0 Allow font dimming in inactive terminals 2011-10-07 01:20:54 +01:00
Chris Jones 7dc34e7eaf set anti-aliasing even when vte is old and we are on RHEL5 or CentOS5 2011-09-23 21:37:20 +01:00
Chris Jones 007ca36723 Add dbus mechanism to obtain a list of terminals 2011-08-25 22:10:04 +01:00
Chris Jones 2590b36a75 assign each terminal a uuid and expose it via $TERMINATOR_UUID 2011-08-23 23:58:08 +01:00
Chris Jones 807947399f Improved drag&drop support to be more generic and correct. Fixes LP #643425 2011-08-20 23:18:56 +01:00
Chris Jones 8ba7213409 Fix cursor blink/colour issues (Tony Baker) 2011-08-20 16:51:30 +01:00
Chris Jones 32b8d04695 Optimise various low level parts (Stephen Boddy) 2011-08-20 14:53:23 +01:00
Chris Jones ee1d7f1fcf emitting made a poor assumption about focus, which was broken in multiple window situations. No more. 2011-05-11 13:36:47 +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 05520fd5a7 Replace the get_top_window with the much quicker builtin get_toplevel widget call 2011-02-23 22:35:10 +01:00
Tony Baker 472ad50c6e Changed set_cursor_blinks() to set_cursor_blink_mode(), set_cursor_blinks is deprecated as of vte 0.17.1. Made change to set_color_cursor to fix Launchpad Bug# 700969. 2011-02-07 23:17:46 -05:00
Chris Jones b5c6662359 For now TERM is hardcoded to xterm 2010-08-20 10:58:36 +01:00
Chris Jones f20b437caf Allow disabling of dbus from the command line, and make use of that when spawning a new terminator process 2010-07-22 13:59:06 +01:00
Chris Jones bab0cc27d5 Make font antialiasing configurable 2010-07-13 13:50: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 597f4ff75d Expose keybindings for setting the broadcast modes. Closes LP #598410 2010-07-03 18:54:53 +01:00
Chris Jones 581a738c62 Preserve cwd into new windows. Closes LP #597651 2010-07-03 16:16:50 +01:00
Chris Jones 838d27bb60 Be even more defensive about URL handling. Closes LP #554571 2010-07-03 16:05:15 +01:00
Chris Jones 45a9c26cf2 Switch the plugin prefs pane back to live loading/unloading of plugins without silly compromises 2010-06-23 00:48:06 +01:00
Chris Jones df43e67239 Fix pasting so we always use our own paste method rather than VTE's so pasting with the keyboard shortcut works in groups 2010-06-17 14:08:54 +01:00
Chris Jones 5b5739df0e Add some more debugging to layout creation 2010-06-15 15:19:05 +01:00
Chris Jones 6cdd57c67c This is an ugly, ugly method to be adding, but it's probably necessary, sadly 2010-06-15 14:54:43 +01:00
Chris Jones c64d71b809 Restore the command line -p option to specify a particular profile. This is then enforced as the default for new terminals 2010-05-15 15:51:20 +02:00
Chris Jones 4184acef3c Add a fixme 2010-05-15 14:18:22 +02:00
Chris Jones 4fca314259 Note the deprecation of Terminal::get_cursor_position 2010-05-05 09:46:09 +01:00
Chris Jones 70ab3b0f71 Store terminal titles in layouts 2010-04-22 23:14:03 +01:00
Chris Jones 5eba5c7751 Actually set a profile if it's specified in a layout 2010-04-20 12:30:43 +01:00
Chris Jones dfaaec5458 Store a Terminal's group in a layout, if it has one. Restore it too. Closes LP #566925 2010-04-19 23:41:54 +01:00
Chris Jones da8df9daa2 seriously, pygtk does some weird things. Make the url handler even more defensive about which scheme it chooses. Closes LP #554571 2010-04-12 22:45:45 +01:00
Chris Jones bd3da1e8ff When removing a notebook child and adding a new one we need to do it in one move so we can preserve the tab ordering. Closes LP #490627 2010-04-12 21:35:24 +01:00
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 68da0b24b3 Tidy up some focus grabbing on new Terminal creation. Closes LP #558376 2010-04-09 12:58:46 +01:00
Chris Jones b3e1f3750b Handle older gtk versions that lack gtk.show_uri(), making them use xdg-open with a fallback to webbrowser.open(). Closes LP#554571 2010-04-07 12:27:39 +01:00
Chris Jones fd8bc65654 remove enable_real_transparency setting and instead attempt to determine it based on the actual capabilities of the current display 2010-04-06 21:11:11 +01:00
Chris Jones 23dd4e0b2a Attempt to use the VTE API more correctly, working around a python bindings bug in vte 0.24 2010-04-05 23:28:03 +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 14e4b4d3fe Fix --working-directory. Closes LP #552497 2010-03-31 14:02:55 +01:00
Chris Jones bbdf055477 Rather than having people use an ugly value of -1 for infinite scrollback, have it as a separate setting, with all of the extra gubbins involved in making that work neatly. Closes LP #532513 2010-03-24 13:22:37 +00: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 f4b1c2cce0 If a profile is configured to not show the titlebar, actually only show 2px of it until it's clicked on. Poor man's autohide, but it achieves all of my objectives - the colour is hinted to people with no visible titlebar and they can still summon the grouping menu 2010-03-23 20:48:04 +00:00
Chris Jones 16bc247b0e Attach the debug server to the context menu 2010-03-19 22:16:08 +00:00
Chris Jones 8ed1613951 Describe the current profile if it's non-default 2010-03-18 23:11:07 +00:00
Chris Jones 2164f32ddb Kludge the layout creation until it works 2010-03-11 13:04:01 +00:00
Chris Jones 4d1d293804 Update to use the new split_axis method signature 2010-03-08 21:46:45 +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 8732754794 Don't grab focus when we're respawning a child 2010-03-05 19:54:39 +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 45708d267b Remove terminal zoom scaling handler with the correct signal name, and be more errorial when we're refusing to change the font size 2010-02-27 14:38:01 +00:00
Chris Jones 499206f3e9 Config.options is not suitable for use as Terminal layout command overrides. Add a simple thing that is 2010-02-27 15:02:16 +01:00
Chris Jones 98c3979b88 Don't debug print the layout 2010-02-27 14:05:08 +01:00
Chris Jones 94a568ee1c Drag and drop ordering was not paying attention to the requested order. Now it is 2010-02-27 11:26:30 +01:00
Chris Jones bdac9e620a Revert that and instead make the Terminal usage of the options object be more optional 2010-02-21 11:58:17 +00:00
Chris Jones ad1b1ecc79 Fix drag and drop, which had become horribly sensitive to the internal widget structure of Terminal 2010-02-20 23:05:51 +00:00
Chris Jones 8e8c33b5b8 Make this debug actually be a debug 2010-02-17 21:04:57 +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 b3eaa85cc9 default to an icon based terminal bell indication, and add such an icon from Tango. 2010-02-11 13:05:12 +00:00
Chris Jones 5520fe11c8 Remove ad-hoc titlebar visibility control and make the preferences setting be applied by Terminal::reconfigure() 2010-02-09 13:08:07 +00:00
Chris Jones 79a340539b Make the titlebar presence configurable by config file and context menu. If it's missing, draw a frame around the Terminal, to indicae colour 2010-02-09 00:23:21 +00:00
Chris Jones 8806c97612 We need to improve the vte mouse enter handler 2010-02-07 11:59:57 +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 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 a8748fbbeb This FIXME is fixed 2010-01-26 11:06:28 +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 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 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 6beba121be further pylint appeasement 2010-01-23 00:50:28 +00:00
Chris Jones 055e6f837b This FIXME is no longer true 2010-01-22 13:24:42 +00:00