Factor ui::XWindow out of DesktopWindowTreeHostX11

This CL factors out most of DesktopWindowTreeHostX11 X11 code into a reusable
helper class, ui::XWindow. So that it can be re-used by Ozone/X11
PlatformWindow implementation.

It should not imply in any functional change.

Bug: 981606
Change-Id: I96735f1680c738723b2df9ac17928c09e0825f77
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1695008
Reviewed-by: Thomas Anderson <thomasanderson@chromium.org>
Commit-Queue: Nick Yamane <nickdiego@igalia.com>
Cr-Commit-Position: refs/heads/master@{#676967}
7 files changed