pixelcache: Split out a function

https://bugzilla.gnome.org/show_bug.cgi?id=726475
pixelcache: Add map/unmap functions

Because GTK does not invalidate windows that aren't mapped, we cannot
update the pixel cache when the window it handles isn't mapped. So we
add API to call when GDK windows get mapped/unmapped.

https://bugzilla.gnome.org/show_bug.cgi?id=726475
viewport: Call map/unmap functions on pixel cache

https://bugzilla.gnome.org/show_bug.cgi?id=726475
treeview: Call map/unmap functions on pixel cache

https://bugzilla.gnome.org/show_bug.cgi?id=726475
textview: Call map/unmap functions on pixel cache

https://bugzilla.gnome.org/show_bug.cgi?id=726475
W32: remove border on default buttons

https://bugzilla.gnome.org/show_bug.cgi?id=727973
GtkDialog: fix up handling of style properties

The use of border-width-set here was an attempt to differentiate
between explicitly set (from code / ui files) border width from
theme changes. But when we are calling gtk_window_set_border_width
to apply the theme value, the -set property gets set, and all
further theme changes are ignored. This has the effect of only
letting the default value of these properties get applied.

Fix this by unsetting border-width-set after applying theme values.
GtkMessageDialog: Allow action-area-border theming again

This border does not interfere with headerbar-vs-content placement,
and we can allow themes to change it without breaking dialogs.
GtkAssistant: don't hide headerbar from a11y

GtkAssistant has its own accessible implementation, and we forgot
to update it when we added a headerbar.
Update expected output for assistant a11y test

The headerbar and its content now shows up, as it should.
gtkapplication: Fix passing NULL as the window to inhibit

gtk_application_inhibit() supports passing NULL, so don't
blindly pass the NULL window to
gtk_application_impl_dbus_get_window_system_id().

https://bugzilla.gnome.org/show_bug.cgi?id=728023
entry: consider ascent and descent when requesting height

Commit d05191a010bcd9871b0155a785989192967c692b change the height
requisition to be completely dependent on the PangoLayout, but that
breaks when the font has special characters with different metrics.
Use the maximum between the two instead.

https://bugzilla.gnome.org/show_bug.cgi?id=728054
window: Be more careful when propagating key events

We are keeping references on the widget we are handling as we
are iterating up, but that doesn't protect us against the entire
tree being axed from inside gtk_widget_handle_event.
https://bugzilla.gnome.org/show_bug.cgi?id=727644
Update expected output of messagedialog a11y test
3.12.1
Updated Indonesian translation
Updated Spanish translation
Updated Spanish translation
W32: correctly guess max window size from the size of the workarea of the screen it's on

Get monitor on which the most of the window is located (nearest monitor if
window is not on screen), get its work area (area not occupied by taskbar or
any other bars) and use that for maxsize.

Previous default of 30000 meant that windows maximized onto full screen,
even covering the area where taskbar is.

https://bugzilla.gnome.org/show_bug.cgi?id=726592