Commit graph

9 commits

Author SHA1 Message Date
Hermès Bélusca-Maïto 0ff9b0ff7e
[WINLOGON] Display the shutdown message popup dialog on the current input desktop. (#3259)
CORE-17050

Display the shutdown message popup dialog on the current input desktop,
and periodically monitor for any change of the input desktop. When the
latter changes, close the dialog and recreate it on the new input desktop.

In addition, retain the current dialog position and restore it when the
dialog is recreated on the new desktop.
2020-10-05 02:26:03 +02:00
Hermès Bélusca-Maïto be7bfc813d
[WINLOGON] Minor formatting only.
Add also original author's name (from original PR #458).
2020-10-05 02:26:02 +02:00
Eric Kohl ec2bfa2e11 [WINLOGON] Localize the shutdown timeout 2018-04-29 17:09:37 +02:00
Hermès Bélusca-Maïto cb20bf8c90
[WINLOGON] Usability enhancement for the RPC SystemShutdown functionality.
- Perform an immediate system shutdown if the timeout is zero, otherwise
  display the countdown shutdown dialog.
- Cleanup pShutdownParams->pszMessage as soon as the dialog goes away.
- It actually appears (tested on Windows 2000 and 2003) that sending
  WM_CLOSE messages from a user-mode app to the shutdown dialog really
  do nothing (and in particular does not cancel the shutdown!), so modify
  the code to take this fact into account.
2018-04-29 01:02:05 +02:00
Eric Kohl 3318d8d5be [WINLOGON] Fix shutdown timeout format string for long timeout
- Use the "%d days" format for timeouts longer than a day.
- Fail if timeout is 10 years or longer.
- TODO: Replace format strings by resources. German WinXP uses "%d days" instead of "%d Tage". We can do better! ;-)
2018-04-02 19:09:13 +02:00
Eric Kohl 9a6d4bf0c5 [WINLOGON] System shutdown dialog clean-up
- Replace the winlogon icon by the warning icon.
- Add more space for the main text.
- Move the shutdown time into a separate line to ensure it is always fully visible.
- Add more space for the shutdown message and keep the message empty by default.
- Clean up the resource IDs.
2018-04-02 13:33:41 +02:00
Eric Kohl 2ae4585250 [WINLOGON] Clean up part 2
- Replace the UNICODE_STRING usMessage by a PWSTR pszMessage.
- Use the "%02d:%02d:%02d" time format and get rid of the safe string printf because the string will NEVER be longer than 8 characters.
- Rename the timer id constant because it is NOT a resource id.
- Rename variables according to the coding style.
2018-04-02 12:47:15 +02:00
Eric Kohl 72dc173158 [WINLOGON] Clean up part 1
- Add empty lines to separate logical blocks of code.
- Add spaces according to our coding style.
- Move g_hShutdownDialog and g_bShuttingDown into the shutdown parameters struct.
- Pass a pointer to the shutdown parameters to the shutdown thread and the shutdown dialog and use the pointer instead of the global variables.
- Move the timer code into a separate function because it requires local variables.
2018-04-02 01:37:50 +02:00
Eric Kohl f50d7749d0 [WINLOGON] Move the system shutdown code into a separate file 2018-04-02 00:38:52 +02:00