Sjoerd Simons [Mon, 21 May 2012 10:16:49 +0000 (12:16 +0200)]
call: Keep the toolbar around if muted
It's not uncommon for people to forget that the put a call on mute,
causing awkward situation while trying to talk while muted. To
prevent this, keep the toolbar showhing while muted as a reminder.
Sjoerd Simons [Mon, 21 May 2012 09:55:25 +0000 (11:55 +0200)]
audio input: Switch to stream volumes
Newer gstreamer & pulseaudio support the stream volume interface for
input as well. Prefer this over using the mixer interface as it's
both simpler and actually does as intended. Besides that the
mixer interface is buggy and seems to not correctly adjust the
current input device if the source was switch to a non-default input.
As an extra put in a volume element to locally enforce the current mute
state. This ensure that whatever happens, if the UI says mute, the
stream is guaranteed to be muted. This prevents awkward situations if
the source element doesn't support stream volumes or the notification
is buggy (like with current pulsesrc in releases).
Sjoerd Simons [Mon, 21 May 2012 08:48:53 +0000 (10:48 +0200)]
call: Adjust the preview rectangle colors
As our default background is now black the non-highlighted previews
get hard to see. Change the rectangle colors to white for the
highlighted version and a darkened white for the non-highlighted.
Sjoerd Simons [Mon, 21 May 2012 08:31:57 +0000 (10:31 +0200)]
Call: Let the floating toolbar be above the preview
The call window has previews in the four corners, before the lower
ones were packed in a way that they would appear above the floating
toolbar which looks strange when the floating toolbar disappears.
Instead allow the lower preview to be below the floating toolbar so
they're evenly spread out.
Sjoerd Simons [Sun, 20 May 2012 17:59:29 +0000 (19:59 +0200)]
Call window: Ellipsize alias and status
If the user alias is too long both the hangup and the dialpad buttons
get pushed into a drop-down menu. Even worse when the alias doesn't fit,
it just isn't shown at all anymore.
Given the username is already printed in the title and the user tends to
know who they're calling with, ellipsizing the alias isn't an issue.
Which has the nice side-effect of keeping the hangup and dialpad buttons
on the toolbar in all cases like they should be.
Unfortunately as pango doesn't ellipsize if it still has enough height
left to put more lines in. So put the alias and status in seperate
labels in a vbox which isn't set to fill.
The avatar chooser, which is not used by empathy-accounts, may use Cheese to
take a photo.
cheese_gtk_init() has been added during the 3.4 cycle so I bumped the dep to
3.4.0 as that's the version I have tested it with it. It's an optionnal dep
anyway so...
Sjoerd Simons [Sat, 19 May 2012 18:30:57 +0000 (20:30 +0200)]
Call: Fix floating toolbar
Empathy needed to mark the toolbar actor as reactive otherwise it won't
be reactive to events (doh)...
And empathy needed to stop calling gdk_disable_multi_device().. Empathy
used to do this because it has to be called before GTK+ is initialized
and clutter-gtk only called after GTK+ was initialized by other function
in empathy. Unfortunately since clutter-gtk 1.1.2 instead of ensuring
event actually work with clutter-gtk calling this function will actually
break event handle (great fun!)..
Oh and also bump the clutter-gtk requirement to 1.1.2 to ensure we get
the right behaviour for events..
Will Thompson [Wed, 28 Mar 2012 09:06:14 +0000 (10:06 +0100)]
Show MUC highlight notifications in Gnome Shell
Gnome Shell filters out notifications from Empathy whose category is
something the Shell shows its own notification for. However, we
previously used the im.received category for notifications about being
highlighted in a MUC, as well as for incoming 1-1 IM notifications. The
Shell filters these out these notifications, because it shows its own
1-1 notifications, but it doesn't show MUC highlight notifications.
So this patch sets a different category on notifications from chat
rooms, which makes them show up in Gnome Shell. I'm prefixing the
category with x-empathy, following the comment above
get_category_for_event_type in empathy-notifications-approver.c.
This shouldn't confuse other notification daemons, unless they were also
filtering out im.received but also showed their own highlight
notifications (which I find unlikely).
Cosimo Cecchi [Thu, 22 Mar 2012 20:30:34 +0000 (16:30 -0400)]
call-window: don't use EmpathyRoundedActor for the floating toolbar
Make this a real toolbar, and add a CSS provider to set the correct
border radius.
In the future, GTK and Adwaita will support an 'OSD' style class that
takes care of this automatically, but right now we have add these few
lines of code.
Cosimo Cecchi [Thu, 22 Mar 2012 22:25:41 +0000 (18:25 -0400)]
call-window: use a ClutterBoxLayout to separate previews/toolbar
It's way easier to use a ClutterBoxLayout to ensure the preview
rectangles and the floating toolbar don't overlap.
This way, we can get rid of some complicated manual UI layouting code
and just a margin to set the bottom spacing for the floating toolbar.
Also, this makes the code not dependent on a hardcoded toolbar size
anymore.