[PR #2004] [MERGED] add wpf control #24757

Open
opened 2026-01-31 09:05:11 +00:00 by claunia · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/microsoft/terminal/pull/2004
Author: @ghost
Created: 7/17/2019
Status: Merged
Merged: 10/11/2019
Merged by: @miniksa

Base: masterHead: team/wpfcontrol


📝 Commits (10+)

  • 9cc1b9c add wpf control
  • 19421ad add scroll support
  • 74130f9 Merge pull request #1 from dgriffen/dev/dgriffen/scrolling
  • fcb88a5 cleanup erroneous code
  • ef9baf9 Merge pull request #2 from dgriffen/dev/dgriffen/minor-cleanup
  • 8e770d8 add text selection
  • 70d4b3f render default background color in the gutter
  • d753ad6 Merge pull request #3 from dgriffen/dev/dgriffen/text-selection
  • 91948a5 build managed code in "AnyCPU" mode
  • 94539d8 properly destruct hwnd when closing

📊 Changes

29 files changed (+1832 additions, -63 deletions)

View changed files

📝 OpenConsole.sln (+213 -0)
📝 src/buffer/out/textBuffer.hpp (+0 -2)
src/cascadia/PublicTerminalCore/HwndTerminal.cpp (+393 -0)
src/cascadia/PublicTerminalCore/HwndTerminal.hpp (+73 -0)
src/cascadia/PublicTerminalCore/PublicTerminalCore.vcxproj (+56 -0)
src/cascadia/PublicTerminalCore/PublicTerminalCore.vcxproj.filters (+36 -0)
src/cascadia/PublicTerminalCore/pch.cpp (+4 -0)
src/cascadia/PublicTerminalCore/pch.h (+4 -0)
📝 src/cascadia/TerminalControl/TermControl.cpp (+2 -39)
📝 src/cascadia/TerminalCore/ITerminalApi.hpp (+8 -0)
📝 src/cascadia/TerminalCore/ITerminalInput.hpp (+8 -0)
📝 src/cascadia/TerminalCore/Terminal.cpp (+5 -0)
📝 src/cascadia/TerminalCore/Terminal.hpp (+7 -1)
src/cascadia/WpfTerminalControl/ITerminalConnection.cs (+43 -0)
src/cascadia/WpfTerminalControl/NativeMethods.cs (+238 -0)
src/cascadia/WpfTerminalControl/TerminalContainer.cs (+289 -0)
src/cascadia/WpfTerminalControl/TerminalControl.xaml (+18 -0)
src/cascadia/WpfTerminalControl/TerminalControl.xaml.cs (+144 -0)
src/cascadia/WpfTerminalControl/TerminalOutputEventArgs.cs (+29 -0)
src/cascadia/WpfTerminalControl/TerminalTheme.cs (+80 -0)

...and 9 more files

📄 Description

Summary of the Pull Request

This PR adds a WPF control to the terminal repo. This should be mostly ready to merge, barring anywhere where I might have missed renaming source files / assembly names to something more appropriate. Missing features from the control are theming support (to be added in a later PR) and accesibility, for Accesibility I was hoping to get some help from the console team since the UIA tree work is relatively new and your team knows that code the best.

References

PR Checklist

  • Closes #xxx
  • CLA signed. If not, go over here and sign the CLA
  • Tests added/passed
  • Requires documentation to be updated
  • I've discussed this with core contributors already. If not checked, I'm ready to accept this work might be rejected in favor of a different grand plan. Issue number where discussion took place: #xxx

Validation Steps Performed

Control was added to a test application and verified to work.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/microsoft/terminal/pull/2004 **Author:** [@ghost](https://github.com/ghost) **Created:** 7/17/2019 **Status:** ✅ Merged **Merged:** 10/11/2019 **Merged by:** [@miniksa](https://github.com/miniksa) **Base:** `master` ← **Head:** `team/wpfcontrol` --- ### 📝 Commits (10+) - [`9cc1b9c`](https://github.com/microsoft/terminal/commit/9cc1b9cb7f61eb2881679601ed7babe2e7dc3bfb) add wpf control - [`19421ad`](https://github.com/microsoft/terminal/commit/19421ada7cb9f98ebc9e0ce73bc80bff87e3f23b) add scroll support - [`74130f9`](https://github.com/microsoft/terminal/commit/74130f964eb46b076eaa91621a93d23731a231c3) Merge pull request #1 from dgriffen/dev/dgriffen/scrolling - [`fcb88a5`](https://github.com/microsoft/terminal/commit/fcb88a5bba35b56cae6e04c6d7b709e174f2de27) cleanup erroneous code - [`ef9baf9`](https://github.com/microsoft/terminal/commit/ef9baf9193dea8b18211ea86398c5b27b5b9954c) Merge pull request #2 from dgriffen/dev/dgriffen/minor-cleanup - [`8e770d8`](https://github.com/microsoft/terminal/commit/8e770d8193a036ecbb6bd8c633aee214b3ed2f37) add text selection - [`70d4b3f`](https://github.com/microsoft/terminal/commit/70d4b3f28412ce38f25d6599d65d093d4e0cd788) render default background color in the gutter - [`d753ad6`](https://github.com/microsoft/terminal/commit/d753ad6f5a9d03d488fc6cebd2b2db6f87e9232a) Merge pull request #3 from dgriffen/dev/dgriffen/text-selection - [`91948a5`](https://github.com/microsoft/terminal/commit/91948a5cfe298a1b5c418b238cf9d6924bb0246c) build managed code in "AnyCPU" mode - [`94539d8`](https://github.com/microsoft/terminal/commit/94539d825287c85a1480e2341e066ae7c3ae7688) properly destruct hwnd when closing ### 📊 Changes **29 files changed** (+1832 additions, -63 deletions) <details> <summary>View changed files</summary> 📝 `OpenConsole.sln` (+213 -0) 📝 `src/buffer/out/textBuffer.hpp` (+0 -2) ➕ `src/cascadia/PublicTerminalCore/HwndTerminal.cpp` (+393 -0) ➕ `src/cascadia/PublicTerminalCore/HwndTerminal.hpp` (+73 -0) ➕ `src/cascadia/PublicTerminalCore/PublicTerminalCore.vcxproj` (+56 -0) ➕ `src/cascadia/PublicTerminalCore/PublicTerminalCore.vcxproj.filters` (+36 -0) ➕ `src/cascadia/PublicTerminalCore/pch.cpp` (+4 -0) ➕ `src/cascadia/PublicTerminalCore/pch.h` (+4 -0) 📝 `src/cascadia/TerminalControl/TermControl.cpp` (+2 -39) 📝 `src/cascadia/TerminalCore/ITerminalApi.hpp` (+8 -0) 📝 `src/cascadia/TerminalCore/ITerminalInput.hpp` (+8 -0) 📝 `src/cascadia/TerminalCore/Terminal.cpp` (+5 -0) 📝 `src/cascadia/TerminalCore/Terminal.hpp` (+7 -1) ➕ `src/cascadia/WpfTerminalControl/ITerminalConnection.cs` (+43 -0) ➕ `src/cascadia/WpfTerminalControl/NativeMethods.cs` (+238 -0) ➕ `src/cascadia/WpfTerminalControl/TerminalContainer.cs` (+289 -0) ➕ `src/cascadia/WpfTerminalControl/TerminalControl.xaml` (+18 -0) ➕ `src/cascadia/WpfTerminalControl/TerminalControl.xaml.cs` (+144 -0) ➕ `src/cascadia/WpfTerminalControl/TerminalOutputEventArgs.cs` (+29 -0) ➕ `src/cascadia/WpfTerminalControl/TerminalTheme.cs` (+80 -0) _...and 9 more files_ </details> ### 📄 Description <!-- Enter a brief description/summary of your PR here. What does it fix/what does it change/how was it tested (even manually, if necessary)? --> ## Summary of the Pull Request This PR adds a WPF control to the terminal repo. This should be mostly ready to merge, barring anywhere where I might have missed renaming source files / assembly names to something more appropriate. Missing features from the control are theming support (to be added in a later PR) and accesibility, for Accesibility I was hoping to get some help from the console team since the UIA tree work is relatively new and your team knows that code the best. <!-- Other than the issue solved, is this relevant to any other issues/existing PRs? --> ## References <!-- Please review the items on the PR checklist before submitting--> ## PR Checklist * [ ] Closes #xxx * [x] CLA signed. If not, go over [here](https://cla.opensource.microsoft.com/microsoft/Terminal) and sign the CLA * [ ] Tests added/passed * [ ] Requires documentation to be updated * [ ] I've discussed this with core contributors already. If not checked, I'm ready to accept this work might be rejected in favor of a different grand plan. Issue number where discussion took place: #xxx <!-- Describe how you validated the behavior. Add automated tests wherever possible, but list manual validation steps taken as well --> ## Validation Steps Performed Control was added to a test application and verified to work. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
claunia added the pull-request label 2026-01-31 09:05:11 +00:00
Sign in to join this conversation.
No Label pull-request
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/terminal#24757