Implement new notification for auto sync according to
requirements. The main changes are messages description
and internationalized.
3 kinds of messages are defined and shown via notification
server: 'is syncing', 'Sync complete' and 'Sync problem'.
They are used in below scenarios:
1) sync is successfully started, show 'is syncing'
2) sync is ended, show 'Sync complete' or 'Sync problem'
3) sync has problem, once sync is not successfully started,
and a fatal error occurs, show 'Sync Problem'. If not a fatal
problem, don't show anything.
To detect when sync is successfully started and done, SessionListener
is defined to listen to these changes. This gives AutoSyncManager
opportunities to send notifications once these statuses are changed.
Two buttons 'Dismiss' and 'View' are added into all notifications
to let users dismiss the notification or pop up sync-ui.
They are implemented by optional 'actions' mechasim of notification.
So if the notification server doesn't support actions, don't add
them.
The GNOME Bluetooth panel plugin needs to be installed into
the location used by the system. We guess what that location might be by
installing into `pkg-config --variable=libdir gnome-bluetooth-1.0`/plugins.
Because this location might not be writable, compiling the plugin is
off by default. It can be enabled with --enable-gnome-bluetooth-panel-plugin
which depends on the libgnome-bluetooth-dev files.
Shared libraries must be enabled when enabling the plugin. Not currently
checked by configure.
When installing both the plain GTK and the Moblin-themed version,
the Moblin version uses the normal "Sync - Up to date" name/comment
and the GTK version uses "Sync (GTK)" as name with the same
comment. This is a somewhat arbitrary choice, with the rationale
being that a Moblin user is less likely to care about the
distinction while a GTK user might understand what "(GTK)" means.
Install a translated sync.desktop derived from a sync.desktop.in.
The two strings are marked with an underscore; somehow they are already
translated even though the sync.desktop file was not listed in po/POTFILES.in.