1. 14 Oct, 2016 4 commits
    • Stepan Salenikovich's avatar
      fix button next to search entry · 82cf584d
      Stepan Salenikovich authored
      The signal handler was not using the correct widget when connected
      to the GtkButton signal.
      Change-Id: I62dd85f7ed684d9b5b6aefee8a7bda36ed84e464
      Tuleap: #1102
      (cherry picked from commit b0ffc34a)
    • Stepan Salenikovich's avatar
      show context menu even when there is no video · c86c57e8
      Stepan Salenikovich authored
      This fixes the bug that resulted in the context menu (right click)
      not showing during a call if there was no outgoing video.
      This also fixes a memory leak which happened because a new menu
      was being built each time, but the old one was never destroyed.
      Change-Id: Ie72fbae05703c708dc91d0ec968aa57c5b8a509f
      Tuleap: #1080
      (cherry picked from commit 39df737f)
    • Stepan Salenikovich's avatar
      prevent calling extra connectivityChanged · 218da1e0
      Stepan Salenikovich authored
      The NMClient seems to always emit an extra notify::primary-connection
      signal on startup which resulted in always calling connectivityChanged
      and so reloading the accounts in the daemon for no reason.
      We save the NMActiveConnection pointer to make sure it has really changed.
      Change-Id: I8ee920c0f12e0e599bde37a2a0adf2a36561a75b
      Tuleap: #1097
      (cherry picked from commit 221beae7)
    • Stepan Salenikovich's avatar
      show chat during incoming/outgoing call · 943ca3dd
      Stepan Salenikovich authored and Guillaume Roguez's avatar Guillaume Roguez committed
      The user should be able to continue chatting with the peer while
      a call is being established.
      Change-Id: I8cde896a7877641bb6b928b38fbd6184795257fa
      Tuleap: #1095
      (cherry picked from commit daf3cb34)
  2. 13 Oct, 2016 1 commit
    • Stepan Salenikovich's avatar
      scale down ring icon · 9027987d
      Stepan Salenikovich authored
      For some reason certain system trays (panel indicator applets) are
      not able to properly scale the current ring icon, resulting in very
      large panel icons.
      This is a scaled down version (16x16) of the original svg with the
      adobe binary stripped out as well.
      Change-Id: I3e2190653a1154ae44f28dbafa9ebd299df793d4
      Tuleap: #839
      (cherry picked from commit b8bbe1ff)
  3. 07 Oct, 2016 1 commit
    • Stepan Salenikovich's avatar
      use new lrc API to clear all chat and call history · 738e59ae
      Stepan Salenikovich authored
      Now the views will actually get cleared, without having to restart
      Ring (though the ContactMethods generated from the history will
      still remain).
      This also amends the outdated dialog message which asks the user
      to confirm this operation.
      Change-Id: Ib71f20f7a0e804648242638361f615aec8781ee1
      Tuleap: #925
  4. 04 Oct, 2016 3 commits
    • Stepan Salenikovich's avatar
      GtkQTreeModel: remove warning about multiple columns · a647bcf3
      Stepan Salenikovich authored
      This warning is useless and the wrapper works for models with
      multiple columns, at least in the cases currently implemented in
      Change-Id: If0bfb819f77099946df9d87ad54820562ddf9993
    • Stepan Salenikovich's avatar
      remove GtkQSortFilterTreeModel · f6078223
      Stepan Salenikovich authored
      This Qt model wrapper class was added because GtkQTreeModel didn't
      seem to work for QSortFilterProxy models; however this does not seem
      to be the case any longer. Either something was fixed in the
      GtkQTreeModel code, or else the initial problem was due to another
      bug. Either way this reduces and simplifies the code base.
      Change-Id: I8d1f7bb83c17708e2ef3c544ee32c13a4b2b3e7d
    • Stepan Salenikovich's avatar
      search entry: open chat view instead of call · e9933249
      Stepan Salenikovich authored
      This changes the default behaviour of the search entry, the button
      next to it, and the autocompletion drop down to opening the chat view
      with the selected CM/Person instead of placing a new call. This allows
      people who wish to simply chat with a new RingID to do so, instead of
      first having to call that RingID or add it to a Contact in their
      Additionally, a setting has been added to change this behaviour, so
      that (typically) SIP users can easily place new calls by entering phone
      numbers in the search entry.
      Also, a "Place call" button has been added to the chat view (when not
      in a call), so that users can easily call someone they are chatting with
      without having to double click on that contact in the contacts list.
      Change-Id: Ia833fb36620fd34afdbb3c3a4357c212a87f8796
      Tuleap: #953
  5. 03 Oct, 2016 1 commit
  6. 29 Sep, 2016 1 commit
  7. 21 Sep, 2016 2 commits
  8. 15 Sep, 2016 4 commits
    • Stepan Salenikovich's avatar
      save and restore main window size · ba87ae2c
      Stepan Salenikovich authored
      Saves and restores the main window size in the GSettings.
      The default size is updated to be 800x500. Gtk should automatically
      resize it smaller if it doesn't fit on the screen.
      Change-Id: Ia85f9fe870cf0695c5095cb138c2b8a61a8855a7
      Tuleap: #1030
    • Stepan Salenikovich's avatar
      allow disabling call and chat notifications · 5a12767d
      Stepan Salenikovich authored
      Adds two new settings which allow enabling/disabling of the
      call and chat notifications (individually). They are both enabled
      by default.
      Change-Id: Ic6996d53740e3f87f348ca8614ecd130495a65eb
      Tuleap: #926
    • Stepan Salenikovich's avatar
      select ContactMethod when clicking on notification · f8e78cb0
      Stepan Salenikovich authored
      For notification servers which support actions, override the
      default action so that the selection in the RecentModel is
      changed to the ContactMethod in the notification. This will
      also change the state of the window to be shown in the case that
      it was closed (hidden).
      Change-Id: I6f13a962745246971d965cbbd297c933f685e9aa
      Tuleap: #926
    • Stepan Salenikovich's avatar
      fix avatar manipulation when selecting an image · d8a9ce28
      Stepan Salenikovich authored
      The crop area was not being set correctly when selecting an image
      from a file. Also the crop area needs to be re-set (re-initialized)
      each time a new image is used because otherwise it behaves weirdly
      if the new image is smaller than the previous.
      Change-Id: Ieef9b3f537567f3823dbd9f4cb18667c80d740c7
      Tuleap: #917
  9. 14 Sep, 2016 5 commits
    • Stepan Salenikovich's avatar
      show chat/call view from selection in history and contacts · 09e0b784
      Stepan Salenikovich authored
      Previoiusly, the chat/call view displayed could only be changed by
      changing the selection in the converstaions list view. The contacts
      and history list views would only change the call view if a new
      call was initiated by double clicking on the selection.
      This patch changes this behaviour, now slecting an item in any of
      the three contact list views will result in showing the chat view
      with that Person or ContactMethod, or showing the call view if there
      is an ongoing call with the selected item.
      In order to prevent conflicts between different selections in the
      different views, only one selection at a time is allowed. So,
      changing the selection in the conversations view, for example, will
      clear the selection in the other 2 list views except in the case
      that the item selected is the same one. For example, if the Person
      selected in the Contacts view is the same as the one in the
      Conversations view, then both selections will remain.
      Change-Id: Icc00c5801e66ca0013b730d6d008ebf904a999e1
      Tuleap: #956
    • Stepan Salenikovich's avatar
      don't show read messages in chat notifications · fc79fc13
      Stepan Salenikovich authored
      This patch prevent showing already read messages in chat notifications
      which was happening in certain cases. This is fixed in several
      different ways depending on which notification daemon is being used
      on the system.
      In the case of notify-osd, even though it supports appending
      notifications, we try to update the previous notification, but only
      with unread messages. The issue with appending is that notify-osd
      does not respond to trying to close notifications, which means messages
      which have been marked as read already will continue to be displayed.
      In the case of the notification daemons which don't support appending,
      we simply replace the old msg text. This prevents many notifications
      from the same person from building up; the new messages are also
      displayed immediately instead of waiting for the notification timeout.
      We also don't try to display multiple unread messages because these
      daemons don't usually support multi-line message bodies.
      Change-Id: Ibbd5adbdd5eb4bafadb517ac39064eaecd74228e
      Tuleap: #426
    • Stepan Salenikovich's avatar
      avatarmanipuation: fix return button infinite loop · d9a38306
      Stepan Salenikovich authored
      In the case the a new photo was taken, the return (undo) button
      would get stuck in an infinite loop when trying to return from
      edit state to photo state and then from photo state to current state.
      In this case it would keep going between the edit and photo state
      instead of going back to the current state.
      Change-Id: I7550b3fa0bdcdb3d5d373911fae56f46c09eaef8
      Tuleap: #917
    • Stepan Salenikovich's avatar
      use CcCropArea to crop avatar · 5c54b353
      Stepan Salenikovich authored
      CcCropArea code is taken from gnome-control-center code.
      It is used to crop avatar images in the control center and in
      gnome contacts.
      Using it unifies the interface more with other gnome programs and
      also gets rid some of the small bugs in the previous implementation.
      Now instead of creating a new selection each time, the user simply
      moves and resizes one selection.
      Change-Id: I764e958cf9e5e6f1aadd754ddd1ad5d542415365
      Tuleap: #917
    • Stepan Salenikovich's avatar
      avatar: make background color white · 1dc123f9
      Stepan Salenikovich authored
      Use white instead of black for the background color when avatar
      images contain transparency. This is a more standard choice and
      looks better for most images than black.
      Change-Id: Id14fb32fcd4a54862d0d33a7040aeffa6e8a7ffb
      Tuleap: #917
  10. 08 Sep, 2016 3 commits
  11. 06 Sep, 2016 2 commits
  12. 02 Sep, 2016 1 commit
  13. 31 Aug, 2016 1 commit
    • Stepan Salenikovich's avatar
      prevent duplicate calls · 5fd97bc6
      Stepan Salenikovich authored
      Prevent creating multiple calls with the same contact method. When
      trying to call a ContactMethod which already has an ongoing call,
      we will simply switch to that call. If it is already the selected
      call, then nothing will happen.
      Change-Id: I7e8f25d3211f0da899f7feca277abb37d7ba5e06
      Tuleap: #923
  14. 29 Aug, 2016 1 commit
    • Stepan Salenikovich's avatar
      improve behaviour of context menu in treeviews · 8eaa13e1
      Stepan Salenikovich authored
      Now rightclicking on an item in the contact treeviews (Conversations,
      Contacts, History) will result in the item clicked on being selected.
      Before the popup menu would open for the selected item, but the
      selection would not change if the click was on a different item.
      This also fixes a small memory leak where the a new menu widget would
      be created on every right click, but the old menu was never destroyed.
      Now the same menu widget is used, it is simply updated once the
      selection is changed.
      The menus are also now synchronized across all the 3 contact treeviews
      and code duplication is reduced by moving the popup code into its
      own widget. Menu items which are not relevant to the current selection
      are now greyed out instead of the menu simply being different for
      different items, this is more in line with standard GTK+ behaviour.
      Change-Id: I4e54d618a090e28b565cbef719065c943a826b0e
      Tuleap: #930
  15. 25 Aug, 2016 2 commits
  16. 24 Aug, 2016 1 commit
  17. 17 Aug, 2016 1 commit
    • Stepan Salenikovich's avatar
      do not abort when daemon not found · 541a40ab
      Stepan Salenikovich authored
      Calling g_error when the daemon cannot be connected to causes an
      abort() and a core dump. g_error() should not be used for expected
      errors, as per the doc. We use exit() instead to quit the application
      in a cleaner way.
      Change-Id: I227f19220db2146075cfe3d8eb44eda5f8b0d128
      Tuleap: #892
  18. 15 Aug, 2016 1 commit
    • Stepan Salenikovich's avatar
      avatar: fix black camera image · 1c1b0d8a
      Stepan Salenikovich authored
      On some systems, when opening the camera to take a new picture for
      the avatar, the result is a black image. The log also outputs
      "bad dawable". It seems the VideoWidget doesn't like being a page
      directly in a GtkStack. Instead we put it in a GtkFrame which does
      not get destroyed. This seems to fix the issue.
      Change-Id: Ia3796ad3b3f02947619c2b0ba57ad4b54e30552e
      Tuleap: #840
  19. 12 Aug, 2016 1 commit
  20. 03 Aug, 2016 1 commit
    • Stepan Salenikovich's avatar
      improve avatar manipulation · ae92efd6
      Stepan Salenikovich authored
      Changes interface to mimick the one in Gnome Contacts:
      - no more trash or export buttons
      - the first choice is to take a photo or import
      - adds return/undo buttons during selection process
      Change-Id: I432f4bad48c1379f6fb26569edea32a24cbb98e9
      Tuleap: #840
  21. 27 Jul, 2016 1 commit
  22. 22 Jul, 2016 2 commits
    • Stepan Salenikovich's avatar
      use libnm-glib instead of libnm · 28ca3174
      Stepan Salenikovich authored
      libnm is too new and is not in all of the distros that we still
      support (eg: ubuntu 14.04). We can use libnm-glib instead. libnm
      is just an API improvement to libnm-glib; since we don't use many
      features of this library almost no changes are required in the code.
      Change-Id: Ic40e7e26a91b91f3d104c68e8f60e945f1731fc3
      Tuleap: #845
    • Stepan Salenikovich's avatar
      monitor network status using libnm · 472c9050
      Stepan Salenikovich authored
      We monitor the primary connected network and notify the daemon when
      it changes so that it can re-establish account connections.
      This functionality is achieved using libnm, thus libnm is added as
      an optional dependency.
      Change-Id: I60233801c13740619b2e6473f5bc6d17901d7bf3
      Tuleap: #845