feat: F4.6f2 the text editor on the document's Y.Text, files both ways while the simulation runs

Oracle TextEditorWindowRun uses Java's text editor window and its file
dialog as a person does. The open file's text is its Y.Text in the
document (plan 7.3): typed is in the file at once, for everyone and for
the running engine. Core openText/saveTextAs without Java's mistakes
(lost saves after save-as onto a file or a removed file, files named
'ordner/d.txt' or ''); doc files.ts (changeFiles, fileText, nodeFiles,
readFilesInto); the room takes a person's files into the engine at once
and writes the engine's files back at the tick they changed; the editor's
window, Java's dialog, the text area following others' changes with the
caret in place, its own undo.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-10-03 17:50:27 +00:00
co-authored by Claude Opus 5.5
parent 3d6655e736
commit 2c7733b575
29 changed files with 3268 additions and 76 deletions
+96
View File
@@ -809,3 +809,99 @@
.mail-question button + button {
margin-left: 8px;
}
/* The text editor (GUIApplicationTextEditorWindow): Java's four buttons
* above, the text below in Courier; 16 pixels, as Safari on the iPad zooms
* into smaller fields. */
.text-editor {
position: relative;
flex: 1;
min-height: 0;
display: flex;
flex-direction: column;
gap: 5px;
padding: 5px;
background: #eeeeee;
}
.text-editor-bar {
display: flex;
flex-wrap: wrap;
justify-content: center;
gap: 5px;
flex: none;
}
.text-editor-bar button,
.file-dialog-folder button {
min-width: 44px;
min-height: 40px;
padding: 0 12px;
border: 1px solid #a0a0a0;
border-radius: 6px;
background: #f8f8f8;
color: #000000;
font: 13px Dialog, sans-serif;
cursor: pointer;
}
.text-editor-bar button:disabled,
.file-dialog-folder button:disabled {
color: #a0a0a0;
cursor: default;
}
.text-editor-text {
flex: 1;
min-height: 0;
resize: none;
padding: 4px;
border: 1px solid #a0a0a0;
background: #ffffff;
color: #000000;
font: 16px 'Courier New', Courier, monospace;
}
/* Java's file dialog (DMTNFileChooser) over the program. */
.file-dialog-folder {
display: flex;
align-items: center;
gap: 10px;
flex: none;
}
.file-dialog-folder span {
flex: 1;
min-width: 0;
overflow-wrap: anywhere;
}
.file-dialog-entries {
flex: 1;
min-height: 96px;
margin: 0;
padding: 0;
overflow: auto;
border: 1px solid #a0a0a0;
background: #ffffff;
list-style: none;
}
.file-dialog-entries button {
display: flex;
align-items: center;
gap: 6px;
width: 100%;
min-height: 32px;
padding: 0 6px;
border: 0;
background: transparent;
color: #000000;
font: 13px Dialog, sans-serif;
text-align: left;
cursor: pointer;
}
.file-dialog-entries button[aria-pressed='true'] {
background: #b8cfe5;
}