As the o.e.tm.terminal.connector.serial , which is based on RXTX,
was taken out of the master terminal.feature, it is now only available
as a separate feature. Consequently, it only makes sense installing
when RXTX is also available - the RXTX dependency was thus made
non-optional.
Change-Id: If6528a6518da57335c7449def359e0f645c77b67
Signed-off-by: Martin Oberhuber <mober.at+eclipse@gmail.com>
In case multiple terminal launcher delegates are registered with
identical label, the ID of a delegate is used as fallback instead
of the label in order to disambiguate.
This doesn't look pretty in the UI but it works and it's a generic
solution for an atypical problem.
Change-Id: I4028e1819f7405c2cb65eacf4e84f437900d884e
Signed-off-by: Martin Oberhuber <mober.at+eclipse@gmail.com>
This is a quick fix to allow users to enter cdtserial port
names that we don't pick up in the device list.
Change-Id: I9473278c6e65e2a2bc7bb40c78e41fdf9d349f44
Teach TextCanvas to provide all the text contained: getAllText().
The actual change takes place on the level of ITextCanvasModel
(interface) and AbstractTextCanvasModel (implementation); TextCanvas
just redirects the request there.
One bit of the existing code has been refactored: part of
AbstractTextCanvasModel.extractSelectedText() has been extracted
into a separate method - scrubLine() - so it can be reused in the
new code.
The primary (and probably the only one) use case of this new
extension is test automation: SWTBot- or Red Deer-based tests can
read content of TextCanvas instances and verify that they contain
what's expected, e.g. output of Docker containers or gdb sessions.
Change-Id: I92092c0f9837639d13d6bc32ae5b47acd24c54c1
Signed-off-by: Václav Kadlčík <vkadlcik@redhat.com>
All features are upreved to 4.3 along with the Parent POM for the
upcoming Terminal 4.3 / Oxygen release. Plugin versions remain
unchanged, keeping them as semantic versions. Along the lines, also
- Introduce a Maven Profile -Pcdtserial, which is active by default
to build the cdtserial plug-ins. This can be de-activated by property
-Dnocdtserial on the mvn command-line. This is necessary to build /
validate Terminal against older streams (juno,mars,...,neon) which
did not have the necessary cdt native serial dependency.
- Update the update site to
http://download.eclipse.org/tm/terminal/updates/4.3
- Update Copyright Year in all features to 2017
- Update p2 repo URLs of Oxygen and Orbit dependencies.
- Update the terminals.psf project-set file adding the new cdtserial.
Change-Id: I8992fe4bb8ac08abe783d33fbb8b00b4e864fd73
Signed-off-by: Martin Oberhuber <martin.oberhuber@windriver.com>
A few short cuts taken but it's usable. There's no memento for this
connector since it's usually not a good idea to always connect to the
serial port on startup since there can only be one client at a time.
Change-Id: If8ea1c770597068346bb44a6444a6d231d38bca9
Signed-off-by: Doug Schaefer <dschaefer@blackberry.com>
The Terminal used to "re-use" icons from org.eclipse.ui.console -
this did not work any more when that plugin changed .gif icons
to .png for better HiDPI support. Copying icons into the terminal
view plugin resolves the problem for all Eclipse versions.
Collect the list of connection types that support the command shell
service and pass that to the RemoteConnectionWidget so that you can
select which one you want.
Also adds a fix to the connection manager that was closing the
terminal of read returned 0 bytes. That's generally not an end of
file condition, especially with Serial Ports. There ugliness to them
where you can't close the port while it's blocked on the read, which
means it needs to return once in a while.
Fix setting of title and force new to match the other delegates.
Change-Id: I6b78d789ca28284379d8f1136062ec180e1a8f5c
Signed-off-by: Doug Schaefer <dschaefer@blackberry.com>
Added the menu contributions to
popup:org.eclipse.jdt.ui.PackageExplorer?before=group.edit additionally
to the ProjectExplorer contributions.
Change-Id: I1438057d82389c332c3678a3568bf0706497b49f
Signed-off-by: Dirk Fauth <dirk.fauth@googlemail.com>
Added auto-detection of Git installations on Windows
Change-Id: I42702126ffb550dd8b289a45ee552d5095a1a615
Signed-off-by: Dirk Fauth <dirk.fauth@googlemail.com>
Added external executables to the terminal combobox on the Open Terminal
Dialog (Ctrl+Alt+Shift+T)
Change-Id: Ia9d9a3959fd95b666c4a1ad4474b519103297920
Signed-off-by: Dirk Fauth <dirk.fauth@googlemail.com>
Moved the code and all related configurations regarding showin from
o.e.tm.terminal.connector.local to o.e.tm.terminal.view.ui
Change-Id: If548ae729173c6127f7cf918aa2f783cd6cb3961
Signed-off-by: Dirk Fauth <dirk.fauth@googlemail.com>
Introduced an ISourceProvider to check if external executables are
configured. Renamed the Terminal context menu "Show In" to "Show in
Local Terminal". Extended the visibleWhen check so that the "Show in
Local Terminal" menu is only visible in the context menu if an external
executable is configured. Otherwise it is possible to open the Terminal
via the inclusion of the command in the default "Show In" menu.
Change-Id: I618b2352a8973d6591cf9e673dc4eb01aeec072e
Signed-off-by: Dirk Fauth <dirk.fauth@googlemail.com>
When TM Terminal sees this:
ESC [ 5 n
It replies indicating that the terminal is OK:
ESC [ 0 n
This escape sequence is documented here:
8.3.35 DSR - DEVICE STATUS REPORT. Page 40.
http://www.ecma-international.org/publications/files/ECMA-ST/Ecma-048.pdf
Motivation: I'd like to switch winpty from using DSR(6) to DSR(5) as its
ESC flushing command. When winpty sees a bare ESC, it can either
synthesize a VK_ESCAPE keypress or wait to see if the ESC was part of some
other escape sequence. It tries to deal with this by generating a DSR(6),
which should flush out the remaining bytes of the sequence, if there are
any. DSR(6) is suboptimal, though, because the reply collides with the
sequence some terminals use for F3 with a modifier:
ESC [ nn ; nn R
DSR(5) generates a DSR(0) reply, which does not have the same problem.
DSR(5) is supported by all the terminal emulators I tested, including
xterm, rxvt, rxvt-unicode, gnome-terminal, konsole, putty, mintty,
OS X's Terminal.app, and IntelliJ/jediterm.
Signed-off-by: Ryan Prichard <ryan.prichard@gmail.com>
Mark Terminal Interfaces as @noextend @noimplement where implementation
doesn't make sense (since it's just constants or an abstract base class
exists for extending). This helps giving room for safely extending
Terminal interfaces in a backward-compatible way in the future, by
leveraging Eclipse API Tooling.
Change-Id: Ia5a99f9379ddd73dd58afe4dec4540ae24633b09
Signed-off-by: Martin Oberhuber <martin.oberhuber@windriver.com>
This fixes API related issues and warnings by adding appropriate markup
where it had been forgotten. This is formally breaking binary
compatibility in some cases, but we are OK releasing as 4.1 since it
just codifies the original intent of the API.
1. org.eclipse.tm.terminal.control/MANIFEST.MF:
- Replace unintuitive "x-friends" with more obvious "x-internal".
- Update the terminal.test/.classpath instead for giving access.
- Add @noimplement keywords on interfaces where appropriate.
2. org.eclipse.tm.terminal.view.ui:
- Add missing @since tags, and mark the view.showin package as
"x-internal", since it was never meant to be API.
- Add @noimplement keywords on interfaces where appropriate.
3. Generally, remove unnecessary @suppress("restriction") warnings
and fix one "Type Safety (ArrayList)" warning.
Change-Id: I75f8b0fb3a5ff0383bff3bc0a4a8d9fd07b71ac9
Signed-off-by: Martin Oberhuber <martin.oberhuber@windriver.com>
As discussed in bugzilla, this extension allows terminal connectors to
implement special features on mouse events (such as clicking on hyperlinks).
Feature-request: https://bugs.eclipse.org/bugs/show_bug.cgi?id=475267
Signed-off-by: Davy Landman <davy.landman@cwi.nl>
Enable API Analysis on all Terminal Connectors, and mark
o.e.tm.terminal.control/provisional/api as API in MANIFEST.MF
such that full API Analysis is available on our de-facto API.
Since the conversion of provisional.api to full API triggers errors,
this needs a patched 4.0 baseline to properly compare against. Use
http://archive.eclipse.org/tm/downloads/tm_4.0_api_baseline.zip
for analysis in 4.1 -- after 4.1 a normal baseline will do.
Change-Id: Ibbc2addd59a629d45f676a97339bf27bba07014e
Signed-off-by: Martin Oberhuber <martin.oberhuber@windriver.com>