Adjust new APIs for RC1 - #14892
Merged
Merged
Conversation
KlausLoeffelmann
marked this pull request as ready for review
August 14, 2026 19:18
ricardobossan
self-requested a review
August 14, 2026 19:53
ricardobossan
previously approved these changes
Aug 14, 2026
* Refactor KioskModeManager component and introduce WakeUp-Events incl.. new WakeUpEventArgs.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 20883488-cf1e-4ad3-a681-0724e9f16777
Size borderless fullscreen forms directly to the selected screen bounds instead of maximizing them. This keeps StatusStrip items and working-area-constrained dropdowns on the same screen edge while preserving restored form state. Fixes dotnet#14765 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: c352332b-4b81-4492-bcfc-9dec524c27c9
Choose fullscreen bounds from RestoreBounds for minimized and maximized forms so a minimized-window sentinel cannot redirect kiosk mode to the wrong monitor. Fixes dotnet#14765 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: c352332b-4b81-4492-bcfc-9dec524c27c9
Reapply explicit fullscreen bounds when display geometry or the taskbar working area changes so the normal-state kiosk window tracks the selected screen like the previous maximized window did. Fixes dotnet#14765 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: c352332b-4b81-4492-bcfc-9dec524c27c9
API review feedback: the "Wakeup" elements are more general than kiosk mode and should not be part of KioskModeManager. They can reappear later with a broader scope. Removes the Wakeup event, OnWakeup, WakeUpCommand, KioskModeWakeupEventArgs, KioskModeWakeupEventHandler, and KioskModeWakeupSource, along with the power broadcast and terminal session notification plumbing that only fed them. Display change tracking, which keeps the fullscreen bounds current, is kept. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 8999e9ff-9bcc-4755-b337-7fc5496d431c
API review feedback: HideTaskbar was removed to simplify the window models. Kiosk fullscreen now always sizes the borderless form to the complete bounds of the screen that displays it, so there is a single window model and the kiosk surface always covers the taskbar. Because the fullscreen form now covers the taskbar, drop-downs owned by that form can no longer be constrained to the screen working area - doing so detaches them from the item that opened them (dotnet#14765). ToolStripDropDown and ToolStripDropDownItem now constrain to the complete screen bounds when the owning top-level window is borderless and covers the screen. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 8999e9ff-9bcc-4755-b337-7fc5496d431c
- ToggleFullScreenKey => ToggleFullScreenKeys, for consistency with the plurality of the Keys type. The property now matches the complete key combination, including modifiers, and Keys.None disables key based toggling. - SuppressPowerSaving => AlwaysOn. Also documents that the fullscreen keys are focus driven: they are evaluated only for input dispatched to the managed form or one of its child controls, and no global keyboard hook or system wide hot key is installed. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 8999e9ff-9bcc-4755-b337-7fc5496d431c
- Clarified MousePointerAutoHideDelay XML docs regarding message queue observation and lack of hooks. - Updated OnMousePointerAutoHideTimerTick to only hide cursor in fullscreen, with delay > 0, and when not already hidden. - Added unit tests for timer interval, delay changes, zero-delay behavior, and pointer visibility logic.
KlausLoeffelmann
force-pushed
the
APIs_RC1
branch
from
August 14, 2026 20:23
42b3e86 to
6db1f47
Compare
ricardobossan
approved these changes
Aug 14, 2026
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.
Closes #14586.
Contributes to #14694.
This RC1 API consolidation:
KioskModeManagercomponent from Add KioskModeManager component #14736.Form- andUserControl-hosted components and includes lifecycle, display-change, monitor-selection, disposal, data-binding, and pointer-timer coverage.TreeView.NodeLeadingAPI and its related event, protected method, implementation, resources, and tests.TreeViewsuspend-painting integration throughBeginUpdateandEndUpdateInternal.Microsoft Reviewers: Open in CodeFlow