tests: Fix compiler warnings
Added slovak translation
Updated Lithuanian translation
Visual C++ Builds: Update Header "Installation"
Clean up Visual Studio Build Files

-Combine entries in the property sheets and make it a bit more flexible,
 and drop some redundant items
-Use Custom Build Rules for generating enumeration and marshalling sources,
 and the .def file so that they can be wiped off when a "clean" is
 requested, and regenerate automatically when the templates/.symbols
 files are updated.
-Improve consistency by using ApiVersion rather than ClutterApiVersion
 with the Visual Studio project for other components of the Clutter/GTK+
 stack
-Get rid of unneeded configs in the "install" project
[l10n] Update Catalan translation
build: Depend on Cogl 1.15.9

The laxy texture allocation has been removed from Cogl 1.15, so we need
to depend on the new developers snapshot.
Revert "clutter-offscreen-effect: Allocate the cogl texture directly"

This reverts commit 180e7d74f3325731ac5e91350233c26200a44fd7.

The lazy texture allocation is gone in Cogl 1.15.9.
Release Clutter 1.15.92 (snapshot)
Post-release version bump to 1.15.93
Updated Serbian translation
Added Aragonese translation
Updated Russian translation
evdev: add callback to constrain the pointer position

Add a new callback that is called prior to emitting pointer
motion events and that can modify the new pointer position.
The main purpose is allowing multiscreen apps to prevent the
pointer for entering the dead area that exists when the screens
are not the same size, but it could also used to implement
pointer barriers.
A callback is needed to make sure that the hook is called early
enough and the Clutter state is always consistent.

https://bugzilla.gnome.org/show_bug.cgi?id=706652
evdev: use monotonic times for the events

The monotonic clock is what X uses too, so this way the timestamps
can be compared.

https://bugzilla.gnome.org/show_bug.cgi?id=706543
ClutterInputDevice: add new API for querying the modifier state

This way, the full state of the device is exposed.

https://bugzilla.gnome.org/show_bug.cgi?id=706494
evdev: update the state of the core pointer and core keyboard for all events

These two devices are logically tied togheter, and their state
should always be the same. Also, we need to update them after
the event is queued, as the current modifier state (as opposed to the
modifier mask in the event) should include also the effect of the last
key press/release.

https://bugzilla.gnome.org/show_bug.cgi?id=706494
ClutterEvent: add API to query the full keyboard state when the event was generated

When talking to other applications or serializing the modifier
state (and in particular when implementing a wayland compositor),
the effective modifier state alone is not sufficient, one needs
to know the base, latched and locked modifiers.

Previously one could do with backend specific functionality
such as clutter_device_manager_evdev_get_xkb_state(), but the
problem is that the internal data structures are updated as
soon as the events are fetched from the upstream source, but
the events are reported to the application some time later,
and thus the two can get out of sync.
This way, on the other hand, the information is cached in the
event, and provided to the application with the value that
was current when the event was generated.

https://bugzilla.gnome.org/show_bug.cgi?id=706494
evdev: sync the keyboard state when releasing and reclaiming devices

When we release a device, we lose all the events after that point,
so our state can become stale. Similarly, we need to sync the
state with the effectively pressed keys when we reclaim.
This ensures that modifier keys don't get stuck when switching
VTs using a keybinding.

https://bugzilla.gnome.org/show_bug.cgi?id=706494
evdev: switch to libevdev for fetching the events

libevdev is a library that wraps the evdev subsystem, with
the ability to synchronize the state after a SYN_DROPPED event
from the kernel.

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