Skip to content

Expose terminal received data signal#52

Draft
GeoKM wants to merge 203 commits into
Swordfish90:unstablefrom
GeoKM:agent/expose-received-data
Draft

Expose terminal received data signal#52
GeoKM wants to merge 203 commits into
Swordfish90:unstablefrom
GeoKM:agent/expose-received-data

Conversation

@GeoKM

@GeoKM GeoKM commented Jul 9, 2026

Copy link
Copy Markdown

Summary

Expose the underlying Session::receivedData signal through KSession.

Why

QML consumers can send text to the terminal session today, but they cannot react to process output without this signal. cool-retro-term needs this for startup automation that waits for telnet login/password prompts before sending credentials.

Validation

  • Built as part of cool-retro-term with qmake6 QMAKE_CXXFLAGS+="-include arm_acle.h" cool-retro-term.pro
  • Ran make -j8

probonopd and others added 30 commits June 7, 2021 10:45
* Quote drag-and-drop filenames

Allows drag-and-drop of files and directories that have spaces in their paths
Closes lxqt/qterminal#474

* Correctly quote files with quotes in the filename
CNL (Cursor Next Line) and CPL (Cursor Previous Line) are used
intensively in Pacman 6.

Upstream commit: KDE/konsole@66c8304

Fixes lxqt#429
Fixes lxqt/qterminal#836
Co-authored-by: pavol polonec <pavolpolonec@gmail.com>
Translate-URL: https://translate.lxqt-project.org/projects/lxqt-desktop/qtermwidget/sk/
Translation: LXQt Desktop/qtermwidget

Co-authored-by: pavol polonec <pavolpolonec@gmail.com>
Co-authored-by: Benoit Carré <benitosquare@gmail.com>
Translate-URL: https://translate.lxqt-project.org/projects/lxqt-desktop/qtermwidget/fr/
Translation: LXQt Desktop/qtermwidget

Co-authored-by: Benoit Carré <benitosquare@gmail.com>
Merge changes from 0.17.0 upstream branch
Co-authored-by: Moo <hazap@hotmail.com>
Translate-URL: https://translate.lxqt-project.org/projects/lxqt-desktop/qtermwidget/lt/
Translation: LXQt Desktop/qtermwidget

Co-authored-by: Moo <hazap@hotmail.com>
* Weblate commits

Co-authored-by: Ács Zoltán <acszoltan111@gmail.com>
Translate-URL: https://translate.lxqt-project.org/projects/lxqt-desktop/qtermwidget/hu/
Translation: LXQt Desktop/qtermwidget

* Weblate commits

Co-authored-by: Dimitar Banchev <banchev_dimitar@abv.bg>
Translate-URL: https://translate.lxqt-project.org/projects/lxqt-desktop/qtermwidget/bg/
Translation: LXQt Desktop/qtermwidget

Co-authored-by: Ács Zoltán <acszoltan111@gmail.com>
Co-authored-by: Dimitar Banchev <banchev_dimitar@abv.bg>
Co-authored-by: Pavel Shlyak <shlyak-pavel2011@ya.ru>
Translate-URL: https://translate.lxqt-project.org/projects/lxqt-desktop/qtermwidget/ru/
Translation: LXQt Desktop/qtermwidget

Co-authored-by: Pavel Shlyak <shlyak-pavel2011@ya.ru>
* fix: use horizontalAdvance instead of width

* fix: use angleDelta

* fix

* fix: use position instead of pos
Co-authored-by: micrococo <micrococo@gmx.com>
Translate-URL: https://translate.lxqt-project.org/projects/lxqt-desktop/qtermwidget/es/
Translation: LXQt Desktop/qtermwidget

Co-authored-by: micrococo <micrococo@gmx.com>
* use QPalette::window()

* use angleDelta

* use exec

* use begin & end

* upd

* Update TerminalDisplay.cpp
Co-authored-by: milotype <mail@milotype.de>
Translate-URL: https://translate.lxqt-project.org/projects/lxqt-desktop/qtermwidget/hr/
Translation: LXQt Desktop/qtermwidget

Co-authored-by: milotype <mail@milotype.de>
* Weblate commits

Co-authored-by: Taras Panchenko <top39@ukr.net>
Translate-URL: https://translate.lxqt-project.org/projects/lxqt-desktop/qtermwidget/uk/
Translation: LXQt Desktop/qtermwidget

* Weblate commits

Co-authored-by: Ihor Hordiichuk <igor_ck@outlook.com>
Translate-URL: https://translate.lxqt-project.org/projects/lxqt-desktop/qtermwidget/uk/
Translation: LXQt Desktop/qtermwidget

Co-authored-by: Taras Panchenko <top39@ukr.net>
Co-authored-by: Ihor Hordiichuk <igor_ck@outlook.com>
Co-authored-by: p-bo <pavel.borecki@gmail.com>
Translate-URL: https://translate.lxqt-project.org/projects/lxqt-desktop/qtermwidget/cs/
Translation: LXQt Desktop/qtermwidget
Co-authored-by: Joan Miró <miro.oro.jm@gmail.com>
Translate-URL: https://translate.lxqt-project.org/projects/lxqt-desktop/qtermwidget/ca/
Translation: LXQt Desktop/qtermwidget
Co-authored-by: KacperMisztal <kacper.misztal@o2.pl>
Co-authored-by: p-bo <pavel.borecki@gmail.com>
Translate-URL: https://translate.lxqt-project.org/projects/lxqt-desktop/qtermwidget/cs/
Translate-URL: https://translate.lxqt-project.org/projects/lxqt-desktop/qtermwidget/pl/
Translation: LXQt Desktop/qtermwidget
Setting the history size to 0 leads to a crash.
In this context 0 means no history, so we just set the history type to
`HistoryTypeNone`.

Closes lxqt#456.
For simetry with QTermwidget::setHistorySize().
Code taken from Konsole.
* handle-zero-size-history:
  Adds a QTermwidget::historySize() method
  Handles setting the history size to 0
* remove-not-used-non-pod-var:
  Fix some code indentation
  Remove not used non POD variable
On Arch Linux, PyQt5 no longer works with sip4 [1]. The long term plan
is switching to sip5, but let's disable Python bindings for now to avoid
confusing CI failures.

[1] archlinux/svntogit-packages@9f73b4a
* added api documentation

* api consistency improvement

* fixed documentation typos

* added pull request template
tsujan and others added 29 commits February 8, 2025 14:16
`QApplication::cursorFlashTime()` may be negative, and a too fast blinking is not good. So, the minimum is set to one second.
The focus signals should be emitted only at the end of `focusOutEvent` and `focusInEvent` because they may change the focus themselves. For example, emitting them at the start caused a problem in cursor blinking.

Also, the focused state should be checked when blinking is set.

Fixes lxqt/qterminal#1244
Translate-URL: https://translate.lxqt-project.org/projects/lxqt-desktop/qtermwidget/en_GB/
Translate-URL: https://translate.lxqt-project.org/projects/lxqt-desktop/qtermwidget/zh_TW/
Translation: LXQt Desktop/qtermwidget

Co-authored-by: Andi Chandler <andi@gowling.com>
Co-authored-by: BigELK176 ≡ <BigELK176@gmail.com>
* Pre-release changes

* Updated Copyright year in `qtermwidget.json`
Because emoji flags are pairs of "regional indicators", they're treated as a special case of extended characters.

NOTE: A few nonstandard flags, that are created by the so-called "emoji tag sequences", aren't supported by this commit. Since this small commit was the result of several hours of work, I'm not motivated to spend more time on adding features like this. However, clean PRs would be appreciated and reviewed.

Closes lxqt/qterminal#1268
Translate-URL: https://translate.lxqt-project.org/projects/lxqt-desktop/qtermwidget/cs/
Translate-URL: https://translate.lxqt-project.org/projects/lxqt-desktop/qtermwidget/en_GB/
Translate-URL: https://translate.lxqt-project.org/projects/lxqt-desktop/qtermwidget/fr/
Translate-URL: https://translate.lxqt-project.org/projects/lxqt-desktop/qtermwidget/zh_TW/
Translation: LXQt Desktop/qtermwidget

Co-authored-by: BigELK176 ≡ <BigELK176@gmail.com>
Co-authored-by: Oliver Chiasson <olivierchiasson@hotmail.fr>
Co-authored-by: novakreo <s92m@benj.dropbear.id.au>
Co-authored-by: p-bo <pavel.borecki@gmail.com>
They are expensive to construct.
And also QStringView::slice().
Commit f73888c used `QStringView::slice()` instead of `QStringView::sliced()`.
It leads to undefined behavior. `pos <= size()` assertion fails.
Closes lxqt#599.
* Implemented highlighting of all matches when searching

Also, "Highlight all matches" is unchecked by default to keep the old behavior and also to prevent high CPU usage when a single letter is typed with a huge terminal text.

NOTE: IMHO, adding codes to save and restore the search options would be overkill, but it's doable (elsewhere).

Closes lxqt/qterminal#120

* Update the display too
… by adding an object name, such that there's no tacit assumption about "markers".

The functionality is the same as before.
* Change render target to Image to avoid Qt 6.10 issues

* Make render target configurable
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.