reactos/base/applications
Joachim Henze 1711b13f21 [0.4.9][USER32][NTUSER][3DTEXT] Squashed backport
[USER32] GetQueueStatus() should not return 0 when passing QS_ALLINPUT flag that includes QS_RAWINPUT (#4115)

GTK applications call GetQueueStatus(QS_ALLINPUT), where QS_ALLINPUT
specifies the QS_RAWINPUT flag as well, when these are compiled for
Windows XP+, and they expect the call to succeed on this platform.

On one side, ReactOS does not currently support this flag at all, but
since it claims to be XP/2003-compatible, applications may implicitly
expect the flag to be supported by GetQueueStatus() and the function
*NOT* failing when this flag is set.
(Later GTK apps don't care and just call GetQueueStatus(QS_ALLINPUT)
that includes QS_RAWINPUT, and therefore would fail as well on e.g.
Windows 2000...)

Otherwise, an observable effect is that some versions of libgdk-win32-2.0.0.dll
enter into an infinite loop when calling GetQueueStatus(QS_ALLINPUT),
since this call always failed on ReactOS.

On the other side, however, we should honour our winetests that handle
the presence of the QS_RAWINPUT flag and behave differently accordingly.
But since we do not support QS_RAWINPUT yet, we should keep their old
behaviour where QS_RAWINPUT is unused.

Thus, in order to accomodate both sides, we don't fail the GetQueueStatus()
call, but just set the ERROR_INVALID_FLAGS last error and continue it.

This fixes:
'All user32:TrackMouseEvent tests'
CORE-15686: Gimp 2.8.22 from rapps hangs after startup with 90%-100% CPU usage
and many dupes of that ticket like:
CORE-17551: Ardour hangs at the first start (GTK2 issue)
CORE-15151: newer "Inkscape 0.92.3" is unusable due to WIN32SS message queue lockup
CORE-14086: RawTherapee 5.0-r1-gtk2 fails to start (using 100% CPU)
CORE-11850: Geany 1.28 hangs with endless MsqSendMessage timed out
CORE-8475: Wireshark hangs after launch

It will also slightly appease, but not entirely fix:
CORE-8217: 3D Text ScreenSaver freezes system

Fix picked from 0.4.15-dev-3407-g 9c4397afdf
---------------------
[NTUSER] Do not remove message from the Msg Queue if it is not for us. (#4129)

CORE-8217 This part of the fix keeps the buttons working (Cancel/Ok/top-Right-X) even under high CPU-load
Patch from 'I_Kill_Bugs' contributor.

Fix picked from 0.4.15-dev-3499-g 7d1b50394b
---------------------
[3DTEXT] Fix 3dtext.scr using near 100% CPU (#4125) CORE-17866, CORE-8217

Fix picked from 0.4.15-dev-3443-g 5c9fdcb1de
2022-02-08 13:05:35 +01:00
..
atactl Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00
cacls [TRANSLATIONS] Update the email address and add a note in the Turkish translation document (#271) 2018-01-07 22:09:42 +01:00
calc [CALC][CLIPBRD][SOLITAIRE][SPIDER][NOTEPAD][REGEDIT][TASKMGR] Disable help menu/button 2018-04-29 15:24:11 +02:00
charmap [CHARMAP]Code improvements (#436) 2018-05-17 16:18:57 +01:00
charmap_new [TRANSLATIONS] Update and add Turkish translations (#455) 2018-04-01 19:27:08 +02:00
clipbrd [CLIPBRD] Improvements for the Clipboard Viewer. 2018-05-13 22:25:55 +02:00
cmdutils [TRANSLATION] Polish translation update (#554) 2018-05-19 13:17:49 +02:00
control Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00
drwtsn32 [TRANSLATION] Polish translation update (#554) 2018-05-19 13:17:49 +02:00
dxdiag [BASE/APPLICATIONS] Hebrew translation updates (#321) 2018-01-24 16:00:43 +01:00
extrac32 [EXTRAC32] Sync with Wine Staging 3.3. CORE-14434 2018-03-25 12:58:56 +01:00
findstr [TRANSLATIONS] Update the email address and add a note in the Turkish translation document (#271) 2018-01-07 22:09:42 +01:00
fltmc [TRANSLATION] Update Simplified Chinese Translations (#417) 2018-03-21 22:27:04 +01:00
fontview [TRANSLATION] Update Simplified Chinese Translations (#417) 2018-03-21 22:27:04 +01:00
games [CALC][CLIPBRD][SOLITAIRE][SPIDER][NOTEPAD][REGEDIT][TASKMGR] Disable help menu/button 2018-04-29 15:24:11 +02:00
hh Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00
iexplore [IEXPLORE] Sync with Wine Staging 3.3. CORE-14434 2018-04-01 13:08:41 +01:00
kbswitch [TRANSLATIONS] Update and add Turkish translations (#455) 2018-04-01 19:27:08 +02:00
logoff [TRANSLATIONS] Update the email address and add a note in the Turkish translation document (#271) 2018-01-07 22:09:42 +01:00
magnify [TRANSLATION] Update Simplified Chinese Translations (#417) 2018-03-21 22:27:04 +01:00
mmc [TRANSLATION] Polish translation update (#554) 2018-05-19 13:17:49 +02:00
mplay32 [TRANSLATION][MPLAY32] Italian update translation (#448) 2018-03-25 17:33:07 +02:00
msconfig [TRANSLATION] Update Simplified Chinese Translations (#417) 2018-03-21 22:27:04 +01:00
msconfig_new [TRANSLATION] Update Simplified Chinese Translations (#417) 2018-03-21 22:27:04 +01:00
mscutils [TRANSLATION] Polish translation update (#554) 2018-05-19 13:17:49 +02:00
mspaint [0.4.9][MSPAINT] Revert LoadDIBFromFile for workaround (#2186) CORE-16566 2020-10-06 03:24:52 +02:00
mstsc [TRANSLATION] Update Simplified Chinese Translations (#417) 2018-03-21 22:27:04 +01:00
network [NET] Implement the options in the NET CONFIG SERVER command 2018-04-15 15:32:31 +02:00
notepad [CALC][CLIPBRD][SOLITAIRE][SPIDER][NOTEPAD][REGEDIT][TASKMGR] Disable help menu/button 2018-04-29 15:24:11 +02:00
osk [BASE/APPLICATIONS] Hebrew translation updates (#321) 2018-01-24 16:00:43 +01:00
rapps [0.4.9][RAPPS] Pick some simplifications from master up to 0.4.15-dev-3726-gc262020 (e.g. CORE-18018 and (#2751)) 2022-01-24 10:28:54 +01:00
regedit [CALC][CLIPBRD][SOLITAIRE][SPIDER][NOTEPAD][REGEDIT][TASKMGR] Disable help menu/button 2018-04-29 15:24:11 +02:00
regedt32 Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00
sc [SC] Don't leak service status info on success 2018-04-14 15:40:26 +02:00
screensavers [0.4.9][USER32][NTUSER][3DTEXT] Squashed backport 2022-02-08 13:05:35 +01:00
setup16 Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00
shutdown [SHUTDOWN] Actually all shutdown.exe utilities from all Windows (>= XP) versions (and not just Vista+) support a comment string of up to 512, *EVEN IF* they mention in their help message that the comment can only be up to 127 characters long. I have really tested that ;-) (And what is more, shutdown's utility from Whistler support an arbitrary comment length!) So here I remove the code that imposes this limit and I just check for no more than 512 characters. I also fix an out-of-bounds check for argv. 2018-05-02 00:24:10 +02:00
sndrec32 [0.4.9][SNDREC32] Fast-Forward to 0.4.15-dev-3294-ge98684e state (CORE-17815 and several PRs) 2022-01-17 22:41:21 +01:00
sndvol32 [SNDVOL32] Create small speaker icons from the default sndvol32 icon 2018-03-25 14:50:02 +02:00
taskmgr [TRANSLATION][TASKMGR] Update Chinese Translation. 2018-05-17 19:56:48 +02:00
winhlp32 [WINHLP32] Sync with Wine Staging 3.3. CORE-14434 2018-04-01 13:09:44 +01:00
winver Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00
wordpad [0.4.9][WORDPAD] Fix icons for toolbar and formatbar (#3792) CORE-5823 2021-07-04 14:50:31 +02:00
write [WRITE] Sync with Wine Staging 3.3. CORE-14434 2018-04-01 13:10:37 +01:00
CMakeLists.txt [DRWTSN32] Implement basic crash report functionality 2018-01-06 11:47:54 +01:00