[PR #1611] Implement DXGI guidance for variable refresh displays #24621

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

Original Pull Request: https://github.com/microsoft/terminal/pull/1611

State: closed
Merged: No


Summary of the Pull Request

Implements guidance examples from https://docs.microsoft.com/en-us/windows/desktop/direct3ddxgi/variable-refresh-rate-displays to hopefully resolve variable refresh rate display issues.

References

PR Checklist

  • Closes Windows Terminal doesn't have a RC/RES file or an IDI_APPLICATION (#1413)
  • CLA signed. If not, go over here and sign the CLA
  • Tests added/passed (n/a, visual)
  • Requires documentation to be updated (no)
  • 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: I am a core contributor.

Detailed Description of the Pull Request / Additional comments

  • Adds check during DXGI creation for tearing support
  • Uses tearing check status to apply appropriate flags to swap chain creation, swap chain buffer resize, and presentation calls.
  • Sets presentation sync to 0 to present immediately (per variable refresh doc). I don't remember why I had this as 1. It might become a problem. If it does, we'll conditionally change it back and forth. But reading the docs now, I think 0 is OK.

Validation Steps Performed

  • All manual since we don't have automated visual tests:
    • I checked that everything was looking fine on a standard 1080p 60hz monitor still
    • I changed my second monitor to 150% scaling and dragged the window back and forth with a full line of text at the pwsh prompt to ensure that everything fit correctly as the display size updated and caused refreshes of buffer and scaling sizes
**Original Pull Request:** https://github.com/microsoft/terminal/pull/1611 **State:** closed **Merged:** No --- <!-- 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 Implements guidance examples from https://docs.microsoft.com/en-us/windows/desktop/direct3ddxgi/variable-refresh-rate-displays to hopefully resolve variable refresh rate display issues. <!-- 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 * [x] Closes #1413 * [x] CLA signed. If not, go over [here](https://cla.opensource.microsoft.com/microsoft/Terminal) and sign the CLA * [x] Tests added/passed (n/a, visual) * [x] Requires documentation to be updated (no) * [x] 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: I am a core contributor. <!-- Provide a more detailed description of the PR, other things fixed or any additional comments/features here --> ## Detailed Description of the Pull Request / Additional comments - Adds check during DXGI creation for tearing support - Uses tearing check status to apply appropriate flags to swap chain creation, swap chain buffer resize, and presentation calls. - Sets presentation sync to 0 to present immediately (per variable refresh doc). I don't remember why I had this as 1. It might become a problem. If it does, we'll conditionally change it back and forth. But reading the docs now, I think 0 is OK. <!-- Describe how you validated the behavior. Add automated tests wherever possible, but list manual validation steps taken as well --> ## Validation Steps Performed - All manual since we don't have automated visual tests: - I checked that everything was looking fine on a standard 1080p 60hz monitor still - I changed my second monitor to 150% scaling and dragged the window back and forth with a full line of text at the pwsh prompt to ensure that everything fit correctly as the display size updated and caused refreshes of buffer and scaling sizes
claunia added the pull-request label 2026-01-31 09:04:25 +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#24621