-
-
Notifications
You must be signed in to change notification settings - Fork 41
docs(windows): describe windows compliant app implementation with sequence diagram #2326
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from 5 commits
Commits
Show all changes
6 commits
Select commit
Hold shift + click to select a range
b727871
docs(windows): intial TSF commit todo seq diag
rc-swag 6993630
docs(windows): windows compliants no sequence diagram
rc-swag b2e1d9e
docs(windows): add windows compliant sequence diagram
rc-swag 842d4bc
docs(windows): review comments
rc-swag 1f55e0a
docs(windows): remove dulpicate descriptions corrrect
rc-swag d961009
docs(windows): remove un needed review comments
rc-swag File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
26 changes: 26 additions & 0 deletions
26
knowledge-base/assets/kb0118/windows-compliant-app-sequence.mmd
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
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,26 @@ | ||
| sequenceDiagram | ||
| autonumber | ||
| participant User as User | ||
| participant OS as Windows OS | ||
| participant TSF as TSF Manager | ||
| participant Keyman as Keyman TIP | ||
| participant App as Application (Compliant) | ||
|
|
||
| User->>OS: Press key (e.g. 'D') | ||
| OS->>TSF: Deliver key event | ||
| TSF->>Keyman: Call OnKeyDown(ITfContext) | ||
|
|
||
| Note right of Keyman: Keyman create TIPEditSession & requests context | ||
| Keyman->>TSF: ITfContext.GetStatus() | ||
| Keyman->>TSF: ITfContext.GetSelection() | ||
| TSF->>App: Request current selection | ||
| App-->>TSF: Return selection | ||
| TSF-->>Keyman: Return GetSelection | ||
|
|
||
|
|
||
| Note right of Keyman: Keyman applies keyboard rules and inserts or modifies the text in the selection | ||
|
|
||
| Keyman->>TSF: ITfContext.SetSelection() | ||
| TSF->>App: Modified selection is applied to the application | ||
|
|
||
| App-->>User: Display “∆” in document |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
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
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.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This sentence is hard to read and understand.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ok. Reading it again, it is hard to understand.
The point I was trying to make in the in the higlighted text selection case when backspace is pressed, Keyman doesn't use
SetSelectioninstead it emits the keystroke and leaves it up to the application to handle. I think this might be unique to Windows. However, I'm not sure it adds anything to this knowedge base which is more concerned with on complaint vs non-complaint behaviour. It is probably best not to mention it at all.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is an interesting point which should be carried into our compatibility matrix discussion!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I just dumped the note in the document EB had started so we dont' loose it.