On some desktop environments on GNU/Linux, left-clicking on the tray
icon does not execute the restore action. In some environments, such
as Ubuntu and some other GNOME-based environments, double-clicking the
icon does that, but that's counter-intuitive and not obvious at all to
the user. So, we add a 'Show Jami' menu item for the system tray
context menu, similar to how jami-gnome did, so the user can clearly
see it as a possible action.
Change-Id: I1e12ba02190c12cf40d293d61e1f023380fbfcf9
- respond to audio device events to re-populate the audio input and
output device lists
- don't show a selection menu when no devices are available
- cleanup videoinputdevicemodel
Gitlab: #411
Change-Id: I082818756bae202a67b14bfbe0a254384a777a5d
Only do so on non-Windows platforms, though; apparently this is not a
common pattern for desktop applications on Windows.
Change-Id: Ie1f8f4dd087d4e2798be4d102eb1d421fa9490f7
Also rename 'Exit' to 'Quit' in the tray icon context menu for
non-Windows platforms for more standard/consistent terminology.
Change-Id: Id39bd308f17e56466ffb6b9c4929789646334b5e
- move default preview position to top right
- avoid coliding with the new call action bar
Gitlab: #411
Change-Id: Iaa77315be4f6dab28e3161d7dd9b3516c00e4e68
- minor cosmetic changes to the call view overlay
- add the ability to change audio/video input during a call
from the call screen overlay
Gitlab: #411
Change-Id: Id6bbb2278d807f3bd7ad1478db405669088584ce
Unfortunately, QQuickMouseArea force accepts all move events by
design, which makes passthrough events tricky to catch. In-call
overlays for conference participants should be a layer below the
main overlay. So, using QML MouseAreas makes correctly implementing
both overlay fade mechanisms with passthrough for participant menus
too complex. To properly implement the signal relay mechanism we
would need to listen to all the child components with MouseAreas
and relay the positionChanged events to parenting MouseAreas.
To avoid the complexity, we can install an event filter for the
main overlay and listen to global mouse move events that are
contained in it's geometry.
Additionally, we can use Control components instead of transparent
Rectangles to access a hovered property which can be used to
prevent the fade out, and effectively freeze the visibility of menu
components.
Gitlab: #420
Gitlab: #421
Gitlab: #423
Change-Id: I7f05d2bc79ad6a8db0951b7b59e52f671fdf4798
Lrc verifies if we should call refuse or hangup, so now we can unify the call ending function in client.
GitLab: #408
Change-Id: I35f7ca282c6e49e669d849a140772600e501711a
The current registration expired max limit was set too low. The max
limit as per RFC-3261 is ((2**32)-1). Since this is a user setting,
it's best to give control to the user. However, a max limit set to
1 week should be reasonable.
Gitlab: #532
Change-Id: I61b05de2adbbb177ac2e83d85e7f72ab42347554
Currently the ownership of SelectableProxyModel instance
is assumed by QML engine, but we will use the following
rule to avoid that.
QML engine respects the normal QObject parent ownership
semantics of Qt C++ objects, and will never delete a
QObject instance which has a parent.
https: //doc.qt.io/qt-5/qtqml-cppintegration-data.html
Change-Id: Ifa37d14b8d74bfce050b0dee2949b42a7f784d3a