Update Arabic translation
ViewSelector: use Params to pass optional parameters to addPage

This allows to introduce new parameters without making the signature
overly complex.

https://bugzilla.gnome.org/show_bug.cgi?id=690171
Overview: Make Workspace manage its own padding

Consolidate window clone padding application to Workspace, and pass the
padded area down to LayoutStrategy. The padding is now configurable
in CSS.
This allows us to fix spacing in multimonitor cases (as there the workspace gets
the full monitor as geometry), by adding a new style class to external
workspaces.

https://bugzilla.gnome.org/show_bug.cgi?id=690171
ScreenShield: try harder to become modal, and catch failures

The screenshield was not checking the return value of pushModal(), meaning
that it believed it was fully locked when it was not. Later, calling
popModal() would fail, causing an exception and blocking the unlock.
Now we do nothing for user initiated actions, and fail with an explanatory
message at idle time.

https://bugzilla.gnome.org/show_bug.cgi?id=689106
[NOT FOR REVIEW] More logging of message tray
Workspace: show attached modal dialog

Windows in the overview should be like they appear in the workspace,
including modal dialogs that are attached above them.
In addition, hiding the dialogs in the overview causes a flash as
dialog appears at the end of the transition.

Based on a patch by Maxim Ermilov <zaspire@rambler.ru>

https://bugzilla.gnome.org/show_bug.cgi?id=650843
WorkspaceThumbnails: show attached modal dialogs togheter with their parents

The window clones in the central part of the overview are showing modal
dialogs now, and this creates an inconsistency if the thumbnail doesn't too.
Code is intentionally similar in the two places.

https://bugzilla.gnome.org/show_bug.cgi?id=650843
Calendar: force all months at the same height

Add one or two weeks from nearby months to avoid changing the menu height
when navigating it.

https://bugzilla.gnome.org/show_bug.cgi?id=641383
Calendar: freeze updates when the event source is loading

Check if the event source is currently doing an async call, and prevent
UI updates in that case. This avoids a flash of "No updates" when switching
months.
Also, some general code cleanups (and possible memory leak fixes) around
event sources.

https://bugzilla.gnome.org/show_bug.cgi?id=641383
Calendar: dim days from other months, even if they have events

Invert the order of the declarations, so those for calendar-other-month-day
take priority over those for calendar-day-with-events.

https://bugzilla.gnome.org/show_bug.cgi?id=641383
StScrollView: add new policy for invisibile but allocated scrollbars

In certain situations, such as the login screen, we need the StScrollView
to have constant width, even if the height (and therefore the need for
vertical scrollbars) changes. To allow that, always request the right size
for scrollbars, and allocate them even if invisible if the policy says so.
This moves away from Gtk.PolicyType, although the new enumeration has the
same values, so it should be backwards compatible.

https://bugzilla.gnome.org/show_bug.cgi?id=686881
Calendar: only show events when configured in Evolution

When no calendars are enabled, hide the events pane completely instead
of showing it empty.

https://bugzilla.gnome.org/show_bug.cgi?id=680083
MessageTray: pass keyboard events to tray icons

Synthetize XKeyEvents for clicks emulated by StButton using Return or
Space.

https://bugzilla.gnome.org/show_bug.cgi?id=687425
[NOT FOR REVIEW] Update Italian translation
MessageTray: wait until the tray is hidden to switch styles

Switching style on Overview::hiding creates a weird effect, as the noise
texture is shown while the overview is still visibile. Instead, wait for
the tray to be fully hidden, then apply the new style.
As now the switch is invisible, there is no need for the transition
(which introduced the same problem on overview showing)

https://bugzilla.gnome.org/show_bug.cgi?id=689091
WindowOverlay: fix visibility of the window overlay

Start the WindowOverlay in hidden state, and wait for the workspace
animation to finish before showing the contents the first time.
Also, sync the pointer position at the end of the animation, after
grabs and after switching workspace. This avoids showing the overlay
just because the animation passed under the pointer, and fixes not
showing the overlay because Clutter never saw a motion event.

https://bugzilla.gnome.org/show_bug.cgi?id=689116
Workspace/WorkspaceThumbnail: don't destroy actors while accepting a drag

The DND code treats a destroyed actor as a cancelled drag and emits the drag-end
signal. That causes clutter warnings from signal handlers that try to reparent
the destroyed actor.

https://bugzilla.gnome.org/show_bug.cgi?id=685285
Add a way to get backtraces from criticals and warnings

Attaching gdb and running with G_DEBUG=fatal-warnings is not a very
fast to debug a specific issue (especially if you have warnings at
startup, since then you need to run the shell from a terminal).
Instead, introduce a new SHELL_DEBUG environment variable that can
be set to backtrace-warning, causing a gjs_dumpstack() after every
warning or critical.
St: support -st-natural-width/height CSS properties

It is sometimes desirable to specify the size of a box from CSS without
changing the minimum-width too.
This property implements that.

https://bugzilla.gnome.org/show_bug.cgi?id=664411
theme: remove excessive padding from notification buttons

Set the button width manually and remove the huge horizontal
padding we had. This means that long button labels don't get cut
off.

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