1. 03 Nov, 2016 5 commits
    • Guillaume Roguez's avatar
      GNU Ring -> Ring · 92f378d0
      Guillaume Roguez authored
      GNU is already in the logo. We'll refer to the program as just Ring.
      
      Change-Id: Ib0c327651a5d1a1426199472a0c18c96ed0bbbe7
      92f378d0
    • Stepan Salenikovich's avatar
      GNU Ring -> Ring · d4d19d6f
      Stepan Salenikovich authored
      GNU is already in the logo. We'll refer to the program as just Ring.
      
      Change-Id: I323339ca6a87c8960db6f3181f6736f2840bde41
      d4d19d6f
    • Guillaume Roguez's avatar
      new release display and information · 1af28857
      Guillaume Roguez authored
      This patch changes the way to display the release information.
      Also update the release name to Louis Riel - beta2
      
      Now the revision is replaced by the build date.
      
      This value is generated as following pseudo-code:
      
      if SOURCE_DATE_EPOCH is set
        it's value must be a number of seconds since epoch.
        it's used to generate the final build date displayed.
      else if RING_CLIENT_BUILD_DATE is set
        it's value is used as-it as the final build date displayed.
      else
        the current date of the system is used to generate the final build date displayed.
      Reviewed-by: default avatarAlexandre Viau <alexandre.viau@savoirfairelinux.com>
      Change-Id: Ifa431b8fa4f8945cf9a25fef028712ad0e40a0f3
      1af28857
    • Frederic Guimont's avatar
      New ChatView Design · d8343e66
      Frederic Guimont authored
      Adds chat bubbles with round sender images and chat timestamps and
      message status.
      
      [ Alexandre Viau <alexandre@alexandreviau.net> ]
       - Import Frederic's work
      
      [ Frederic Guimont <guydesmonts@gmail.com> ]
       - chatview.html: new design
      
      Change-Id: I5041fcafce39fecf740be3b82a38bf84df425dfe
      Reviewed-by: default avatarStepan Salenikovich <stepan.salenikovich@savoirfairelinux.com>
      d8343e66
    • aviau's avatar
      WebKitChatContainer: Distinguish senders by contactmethods · fc21355c
      aviau authored
      Instead of using the sender names to distinguish participants in the
      chatview, use the ContactMethods. This fixes an issue where "Me" would
      be hardcoded in the html file and could change depending on translation.
      This also avoids issues with two senders having the same name.
      
      Tuleap: #1073
      Change-Id: Iaab2bfe6914b62e7b96e06e0c806692d155667b9
      fc21355c
  2. 02 Nov, 2016 3 commits
    • aviau's avatar
      search_entry: Lookup Ring usernames · 8c0b2425
      aviau authored
      Activating the search entry will now try to resolve Ring usernames
      before creating a ContactMethod if it contains a string which is not
      a RingID, but starts with "ring:".
      
      - If the username resolves, a ContactMethod will be created with the
        resolved RingID
      - If the username does not resolve, an error is displayed to the user
      
      Tuleap: #997
      Change-Id: I1af375479b4db429df2cbdd84d8c10cd8d78cab7
      [stepan.salenikovich@savoirfairelinux.com: prevent char* mem leak]
      Signed-off-by: default avatarStepan Salenikovich <stepan.salenikovich@savoirfairelinux.com>
      8c0b2425
    • aviau's avatar
      Implement Ring username registration · 2da3d9c0
      aviau authored
      AccountCreationWizard:
       - Users can now choose to register a username. They can also decide
         to do it later.
      
      UsernameRegistrationBox:
       - New widget that allows to lookup usernames and see if they are
         available. It can also be used to register a username with the
         Register button.
      
      AccountGeneralTab:
       - Display the Ring username with the UsernameRegistrationBox and allow
         registering one.
      
      Change-Id: I0c01ee34dc3749aac8a000a0d574ea8561453cba
      Tuleap: #997
      [stepan.salenikovich@savoirfairelinux.com: improve lookup usernames
       code; prevent sending querries when not using blockchain]
      Signed-off-by: default avatarStepan Salenikovich <stepan.salenikovich@savoirfairelinux.com>
      2da3d9c0
    • aviau's avatar
      Updated ring.svg and logo-ring-standard-coul.svg · 110c89c7
      aviau authored
      Replaces logo-ring-standard-coul.svg by the Beta2 logo and ring.svg by
      the new Ring logo.
      
      Tuleap: #1166
      Change-Id: I298c87a294b99d7a314cd8a1883180e0a46df1da
      110c89c7
  3. 01 Nov, 2016 1 commit
  4. 31 Oct, 2016 4 commits
  5. 28 Oct, 2016 4 commits
    • Stepan Salenikovich's avatar
      i18n: update translations · 84bef6f7
      Stepan Salenikovich authored
      - update POTFILES.in with new source files with translations
      - update README with how to pull translations from transifex
      - update source pot file with new source translations strings
      - update source pot file copyright year
      - pull new translations from transifex
      
      Change-Id: I30498c131bc77be008ff54d6ec2b9c85dafc223e
      Reviewed-by: Guillaume Roguez's avatarGuillaume Roguez <guillaume.roguez@savoirfairelinux.com>
      84bef6f7
    • Stepan Salenikovich's avatar
      GtkQTreeModel: insert all children on rowsInserted · 4f922f70
      Stepan Salenikovich authored
      In the case of a QSortFilterProxy model, when rows which were
      previously filtered are re-inserted, no rowsInserted signal is
      emitted on their children. To handle this case, we need to
      explicitly re-insert any children.
      
      Change-Id: If46288356a8697477643671d142fe846aa656ae1
      Tuleap: #651
      4f922f70
    • Stepan Salenikovich's avatar
      restore drag&drop conference creation · 1e738fe2
      Stepan Salenikovich authored
      The drag&drop functionality was lost due to the removal of the
      GtkQSortFilterTreeModel in commit
      f6078223
      
      Its restored by adding the drag&drop interface to the GtkQTreeModel.
      
      Change-Id: Icbf8761f6b5a851bff35759b23fac9538e796439
      Tuleap: #1105
      1e738fe2
    • aviau's avatar
      New chat view using gtkwebkit · 039001d7
      aviau authored
      This changes the text buffer widget to a WebKitWebView so that we can
      use web technologies to control the display.
      
      This change comes with a new dependency: libwebkit2gtk-4.0. Should
      this dependency not be available on the system, we can also build the
      client using libwebkit2gtk-3.0. However, the links won't be clickable.
      
      New features:
       - Implemented delivery reports.
       - Avatars are now displayed in the chat window.
       - Links in the chat window are now clickable.
      
      When the client is launched with the -d option, you may right click on
      the chat view to open up the dev tools.
      
      In order to improve performance, one WebKitWebView is re-used for all
      of the ChatViews, since we only display one at a time.
      
      Tuleap: #1073
      Change-Id: Ic945fa6c92f92e391f0362310ddc2f0fa16641bf
      [stepan.salenikovich@savoirfairelinux.com: added change_view(); start
       loading webkit on window init; destroy webkit on dispose; prevent
       warning when dispose is called more than once on ChatView]
      Signed-off-by: default avatarStepan Salenikovich <stepan.salenikovich@savoirfairelinux.com>
      039001d7
  6. 26 Oct, 2016 2 commits
    • Stepan Salenikovich's avatar
      Handle layoutChanged signal · 2d4b4728
      Stepan Salenikovich authored
      This implements basic handling of the layoutChanged signal that may
      be emitted by some Q models in LRC. This does not handle all the
      cases, but it should not cause any crashes.
      
      This should allow us to use the filtering and sorting features of
      QSortFilterProxyModels.
      
      Change-Id: I4ae590b6ab9adea75335d6fd4eb71354168e0ba1
      Tuleap: #651
      2d4b4728
    • Stepan Salenikovich's avatar
      Prevent crash if rows moved are inconsistent · ede936f5
      Stepan Salenikovich authored
      Detect when a QAbstratItemModel emits rows moved signals which are
      inconsistent with the model and emit a critical message instead of
      a crash.
      
      Tuleap: #651
      Change-Id: I6edd9fa6a12bab32f484623b3a318fe568bfa6f6
      ede936f5
  7. 25 Oct, 2016 1 commit
  8. 21 Oct, 2016 4 commits
  9. 18 Oct, 2016 1 commit
  10. 14 Oct, 2016 6 commits
  11. 13 Oct, 2016 3 commits
    • Stepan Salenikovich's avatar
      fix button next to search entry · b0ffc34a
      Stepan Salenikovich authored
      The signal handler was not using the correct widget when connected
      to the GtkButton signal.
      
      Change-Id: I62dd85f7ed684d9b5b6aefee8a7bda36ed84e464
      Tuleap: #1102
      b0ffc34a
    • Stepan Salenikovich's avatar
      scale down ring icon · b8bbe1ff
      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
      b8bbe1ff
    • aviau's avatar
      Implement Multi-Device · 6aeb4859
      aviau authored
      This patch implements multi-device support:
      
      - The account creation wizzard has now two options "Existing Ring
        account" and "New Ring account".
      
        "Existing Ring account": Allows for fetching a Ring account archive
        from the DHT. Requires pin and password.
      
        "New Ring account": This is the previously existing wizard. It was
        modified to ask for a password which will be used to encrypt the
        account archive. This password is then required for exporting the
        account on the Ring.
      
      - Creating a new Ring account with the "+" button now triggers the
        account creation wizard.
      
      - The account menu now has a "devices" tab. This tab contains a table
        with device names (currently a short hash) and device ids (a long
        hash).
      
        In the "devices" tab, there is an "add device" button which allows
        for exporting the current account to the Ring, giving a pin to the
        user.
      
      - When the client encounters old-format accounts, it will trigger a
        migration popup which asks the user for a password. This password will
        be used to create an archive and encrypt it. One password will be
        asked for each Ring account to migrate.
      
      Change-Id: I3d52b2b7ca4f82cb477ee294c962b5d50d5c6a04
      Tuleap: #896
      6aeb4859
  12. 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
      738e59ae
  13. 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
      LRC.
      
      Change-Id: If0bfb819f77099946df9d87ad54820562ddf9993
      a647bcf3
    • 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
      f6078223
    • 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
      addressbook.
      
      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
      e9933249
  14. 03 Oct, 2016 1 commit
  15. 29 Sep, 2016 1 commit