[NTUSER] Fix SetProcessDefaultLayout() (#1013) 1013/head
authorBaruch Rutman <peterooch@gmail.com>
Sat, 20 Oct 2018 08:53:14 +0000 (11:53 +0300)
committerHermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
Sun, 6 Jan 2019 03:35:51 +0000 (04:35 +0100)
commit123a7c80e0cc5f0d5736ab39464823473aa8a6a6
tree3633349546fc8fadd314008de1d301844d458c15
parent6e4e5a004c9da6276695d90187fb577812e8892f
[NTUSER] Fix SetProcessDefaultLayout() (#1013)

- Add a check in co_UserCreateWindowEx() for parentless windows,
  that checks the default layout direction; if it's LAYOUT_RTL
  add the WS_EX_LAYOUTRTL flag to the extended window styles.

- Make the internal routine accepting also LAYOUT_LTR as a value for SetProcessDefaultLayout().
  Limit receiving value to LAYOUT_ORIENTATIONMASK (and not just LAYOUT_RTL)
  or LAYOUT_LTR, as per written in:
  https://docs.microsoft.com/en-us/windows/desktop/api/winuser/nf-winuser-setprocessdefaultlayout

Now all the applications that call SetProcessDefaultLayout() to mirror the layout get mirrored.
This is based on Wine.
win32ss/user/ntuser/simplecall.c
win32ss/user/ntuser/window.c