There is a bug in SWT on macos - Bug 568777 - with the cache of single
character drawStrings with transparent backgrounds as a performance
boost. This causes the terminal to draw some characters in the
wrong color.
The workaround is to not draw with transparency, which should be fine
because we just filled the background with the same color that the
1 character string will draw with.
The performance, measured with TerminalTextUITest in Fast mode with
no throttling, does not seem affected and in my testing there does
not seem to be any graphic side effects.
Change-Id: I1b0aadae100d81a8f4533ba73273ccc8202e068f
This simplifies error handling as once you have a Charset you don't
have to worry about whether or not an UnsupportedEncodingException can
be thrown anymore. In addition it is a little easier on type safety.
Change-Id: I4292878a7c621f9d05fdb98f5c26a0ae8bfec062
This removes a TODO in the code that makes no sense, and in
most cases the else branch is not taken as a common operating
mode is the default charset/encoding is windows-1252 but the
current charset is utf-8.
The effective difference between the two branches is that
the else does a flush after character rather than after each
string.
Change-Id: I50b3cc5837d783ba20b88c2efa44d9c4e6381d30
The PTY, in case of ConPTY, operates always in UTF-8. This is suggested
back to the user with a decorated combo if they try to change the default.
Change-Id: Iaf4c13e256ea7ee3469eecab4a0ec3df1ceb19a4
Without this bump, Eclipse PDE can assume the contents hasn't changed
so will use the wrong baseline.
Change-Id: I02706b1277f9cfdd664c70b76832d6616e0fbf47
While most of these commands don't actually have spaces in them, or
their arguments, avoid the deprecated methods.
Change-Id: If7b4324695699d5a6d9a2f8a979657977486d8a4
Some of these commands work "by accident" on Windows, but there are lots
of special/corner cases that may not. On Linux they almost certainly
never do the correct thing when spaces are in arguments.
(follow up for 1557c2c4f5)
Change-Id: I126d60423b0e4ff6d9d240d7de2c1a4905763415
org.eclipse.cdt.debug.gdbjtag in the root pom.xml is explictly excluded,
but it seems that the local exclude is needed too:
bc9ecdad17/pom.xml (L739)
Change-Id: Ib7489d8ac1feff5f5ec8542dfabdcba00b620ca7
Other dependencies, such as platform may be updated later in the
dev cycle to increase CDT's minimum dependency version to the 2021-06
or even later releases.
Change-Id: Ib6386dca74f9e1327f2f7beae0adf13f54e668f3
Improvements in SyncUtil's addBreakpoint and runToLocation
methods to make them support hardware breakpoint
Change-Id: If358bf11cab426f48edb8854e9ece911c2839815
Signed-off-by: Abdullah Khalid <abdullah.dev0@gmail.com>
The "eclipse.launcher" property is available when using the eclipse
launcher. If the headless builder app is launched without the eclipse
launcher, fall back to generic "PROGRAM".
The property is not available when running eclipse in runtime mode!
Contributed by STMicroelectronics
Change-Id: If2c99a234fd841451af05e3635d44fe2967c9537
Signed-off-by: Torbjörn Svensson <torbjorn.svensson@st.com>
When starting on older versions of Windows ensure that WinPTY continues
to be used by catching all the types of exceptions that may indicate
that ConPTY is not available. This change catches all Throwables as
we want to know about all RuntimeExceptions and Errors
Change-Id: I7524d9286efe9296f1bb44311c4a3be1e5195c14
Memory region may change access rights during the execution time. For
example, in embedded, a memory location might be clocked or not clocked
depending om some SFR. As the region can be changed during the
execution time, it's not enough to use the initial flags.
Contributed by STMicroelectronics
Change-Id: Ida4d6ed69faf3fb6e515aa0a29fa90ea241135dc
Also-By: Anders Jansson <anders.jansson-ext@st.com>
Signed-off-by: Torbjörn Svensson <torbjorn.svensson@st.com>
Some of these commands work "by accident" on Windows, but there are lots
of special/corner cases that may not. On Linux they almost certainly
never do the correct thing when spaces are in arguments.
Change-Id: Idce714da9c1d6ac7a67dc174d5b30bf619534c53
In Bug 466650, the git bash detector was removed from startup to reduce
overhead on startup. Later during a rewrite it was added back in under
a different code path for Bug 473107. In the context of Bug 573712
which is going to add more detectors that may do much more work on
a full load, reduce the amount of work needed to do the presence check.
Change-Id: If1ae3f12ec51b1edc2d419f0efd89fed81a7b56e
The code was not very extensible and the main purpose of the bug
is to add additional detectors. This first commit refactors
the code to make that easier, and to provide a platform for
what could become an extension point.
Change-Id: I5ce514eda11f2573098d6e16663e324954da961b
There are lots of bugs in WinPTY, while upgrading WinPTY would
resolve some of them, there are others that are unresolvable. See
https://devblogs.microsoft.com/commandline/windows-command-line-introducing-the-windows-pseudo-console-conpty/
for a backgrounder on the general subject.
In this first version ConPTY won't be enabled by default, it requires
system property
org.eclipse.cdt.core.conpty_enabled=true
to be set. i.e. start Eclipse with:
-vmargs -Dorg.eclipse.cdt.core.conpty_enabled=true
In a future version the default will change to on if available,
so to force it off use:
org.eclipse.cdt.core.conpty_enabled=false
Change-Id: Ib2df0095027c23f20daa6aa044d9e5f0b0443164
Instead of silently having opcode bytes not display, show an ellipsis
in the last column of the opcodes if the length required for that line
is too long.
Change-Id: If1379846c2dd7111324933c2bd72244f6abade02
These imports are only used for Javadocs, which is why it was sort
of ok that they were missing until now.
Change-Id: Ia941ca55c56a101766b709290b40609c20fdda9d
The handling of ssecondary ids was problematic, special cases were
not well documented and depending on code paths, a secondary ID
of null would mean different things.
This commit fixes that documentation, defines shared constants, and
fixes the logic so secondary id dispayed terminals restore to the
correct location on restart.
Change-Id: Ia87b64f735a37d505e1a5a7b7a4a8e210dfb8c1e
We receive a string from GDB and then display the same string to the
user. So instead of converting it internally into a Byte[] to then
convert it back into a String, keep it as a String.
This fixes a regression where some GDBs' output format was not as space
separated 8-bit-bytes, but as words or similar.
Change-Id: I4ea241ff9ea45165489604fee26a3593ec3f6756