QWindow: add new function: QWindow::clearFocus()

The motivation for the function is that we need a way (for
iOS/Android) to tell the currect window to remove focus from the
focus object when the user hides the input panel. Otherwise, if the
focus object is e.g a line edit, the cursor will continue to blink
inside it, which is wrong.

Activating another window (or the top-level window) is not feasible
as this can cause the activated window to immediatly give focus to
a child (which is the case for QQuickWindow). And Telling the window
to deactivate can currently cause the whole application to deactivate.

Change-Id: I7c6447fd793896f242a99a2663c1e5cb8c948f7c
QWindowSystemInterface: add handleInputSourceAvailableChanged()

Add a new function to QWindowSystemInterface to inform whether
or not an input source is available. This information will
be used to determine if any items on screen should be drawn
with active focus.

Note that determining if an input source is available is not the
same as checking if the input panel is visible. On iOS the
input panel will hide when connecting an external usb/bluetooth
keyboard.

Change-Id: I860b7450b693a81b664b9cdc27fef64494358eb9