Repository navigation
Show the engine's terminal name in the mode tooltip (#202) - #203
Merged
Merged
Conversation
The tooltip named the terminal from the profile (TerminalType.For), but b3270 names it by its own rules: a colour model 4 or 5 is IBM-3278-n-E and any custom size is IBM-DYNAMIC. The backend now parses b3270's terminal-name indication and exposes it as IEmulatorSession.TerminalName, and the tooltip shows it as reported, as x3270's About box does. Before the engine starts there is no name to show. TerminalType.For stays as the -model argument only. Over TN3270E b3270 asks the host for the 3278 form and reports nothing about it, so the tooltip shows the TERMINAL-TYPE name there too; the user guide says so. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- The user guide, the backend notes and the indication's comment said TN3270E always asks for a 3278; a custom size still asks for IBM-DYNAMIC. - The terminal name now dies with its engine (OnProcessEnded, TearDown), as the TLS options do, and is cleared before the Disconnected it raises, so a replacement that reports none cannot show its predecessor's. - A terminal-name report with no text leaves the last name standing. - TerminalType's summary no longer names b3270 in Core. - ModeTip builds the connection sentence once. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Owner
Author
High review: fixes in e3cead9The review raised 8 findings. 5 are fixed, 2 skipped and 1 was wrong. Fixed
Skipped
Not a problem
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes #202.
What changed
The mode field's tooltip named the terminal from the profile (
TerminalType.For). b3270 names it by its own rules (create_3270_termtype), so a colour model 4 or 5 showed3279-4-Ewhile the host was toldIBM-3278-4-E, and a custom size showed3279-2-Einstead ofIBM-DYNAMIC.IndicationParserreads b3270'sterminal-nameindication.B3270Session.TerminalNamekeeps the latest report, and a disconnect leaves it alone.IEmulatorSession.TerminalNameis null until the engine starts.TerminalType.Foris now only the-modelargument, and its comment says so.StatusFormatter.ModeTipshows the name as reported,IBM-prefix included, the way x3270's About box does. Before the first connection attempt the tooltip says only "Not connected".CLAUDE.mdnotes and the CHANGELOG are updated, and the guide HTML is regenerated.TN3270E
terminal-nameandQuery TerminalNameboth reporttermtype, the TELNET TERMINAL-TYPE name. Over TN3270E, b3270's DEVICE-TYPE request always asks for the 3278 form (tn3270e_request). Neither that request nor the host's DEVICE-TYPE IS reply (connected_type) is reported anywhere. The tooltip shows the reported name on every connection, as x3270 does, rather than LizTerm copying the RFC's 3278 rule. So a colour model 2 or 3 over TN3270E showsIBM-3279-2-E, and the user guide explains why. Checked in the 4.5ga6 source and in 4.6pre1.Testing
Parses_terminal_name.Terminal_name_is_the_engines_latest_report_and_outlives_a_disconnect.IBM-3279-2-Efrom the TN3270Eibmlink-help.jsonl, andIBM-DYNAMICfromoversize-100x50.jsonl.EngineTerminalNameTestsruns the bundled engine for colour models 2, 4 and 5, mono model 3 and a custom size. It checkssession.TerminalNameagainstQuery TerminalName. This is the first real-engine confirmation of the model 4 and 5 names.StatusFormatterTestsandSessionViewModelTestsare updated, andFakeEmulatorSessionhas a settableTerminalName.dotnet test LizTerm.slnx: 0 failures.dotnet build --no-incremental: 0 warnings.IBM-3279-2-E,IBM-3278-4-E,IBM-3278-5-E,IBM-3278-3-EandIBM-DYNAMIC. MVS/CE served a screen at 100x50 toIBM-DYNAMIC. TN3270E wasn't checked live, because there's no TN3270E test host.🤖 Generated with Claude Code