1. 06 Jul, 2017 1 commit
  2. 05 Jul, 2017 1 commit
  3. 04 Jul, 2017 2 commits
    • Thibault Wittemberg's avatar
      Project: organize folders · 67e34610
      Thibault Wittemberg authored
      Organize project folders according to groups hierarchy.
      It is not mandatory but the project directory is easier to read this way
      Also move WelcomeViewController to Walkthrough folder and renamed
      ViewControllers folder to Settings
      Change-Id: Ica7b39ff57492435811d49ee9b6e0132dc597beb
    • Thibault Wittemberg's avatar
      Carthage: bump Realm-Cocoa version · 95482f12
      Thibault Wittemberg authored
      Change-Id: I9861df936e208b40e5cc09e14304a284bc447cc7
  4. 28 Jun, 2017 1 commit
    • Silbino Goncalves Matado's avatar
      Smartlist: Add conversations persistence with Realm · 748f3f4a
      Silbino Goncalves Matado authored
      Add conversations persistence to save the history of messages using
      Realm and RxRealm libraries
      Refactor models to work with Realm :
      - Change properties declaration as dynamic vars
      - Change Arrays to List
      - Change Dictionaries to Objects
      - Add default values for non-optionals
      - Changed initializers for convenience initializers
      - Fixed Tests compilation using @testable import (classes linked twice
      exception throwed by Realm)
      - Bumped RxSwift version and fixed deprecated methods warning
      Change-Id: Ife98e48430740f80ffef9420d857f1ae6e4819d4
  5. 27 Jun, 2017 1 commit
    • Silbino Goncalves Matado's avatar
      Smartlist: Add a search bar to filter conversations and lookup users · 5cbb809c
      Silbino Goncalves Matado authored
      Add the search bar on the top of the smartlist and the list of found
      Add an other list for search results. This list is splited in 2
      sections for filered and found results.
      Add "No Conversations" label if there is no conversations
      If the contact is not found locally, a new conversation is created
      Change-Id: I7985f0644f97063875bfb02159d44dd1aa8b731e
  6. 21 Jun, 2017 1 commit
    • Silbino Goncalves Matado's avatar
      Messages: Add messages screen to read messages and reply · 37f2ea9b
      Silbino Goncalves Matado authored
      Add MVVM, services and adpater to receive and reply to messages
      This allows to read received messages from other users and reply to
      The messages screen uses a TableView that scroll automatically to the
      bottom if the user a new message is received. Messages bubbles are
      made with simple cells with a label that move to the right or the
      Change-Id: I1b6bd6fd36b88daab9d39cb5745d1ed953868ead
  7. 20 Jun, 2017 1 commit
  8. 19 Jun, 2017 1 commit
  9. 09 Jun, 2017 1 commit
  10. 02 Jun, 2017 2 commits
  11. 01 Jun, 2017 1 commit
    • Silbino Goncalves Matado's avatar
      Lookup and register name: add services and adapters · 0de52659
      Silbino Goncalves Matado authored
      Add NameService and NameRegistrationAdapter to :
      - Verify if the username is valid and available to create a new user
      - Register a new username into the blockchain.
      Add RegistrationState observation from the daemon to verify if the
      account is properly created.
      Change-Id: I5a66dde2576391b5ec2dc242fb544dc4fe680d9e
  12. 26 May, 2017 1 commit
    • Silbino Goncalves Matado's avatar
      CreateRingAccount: Add Rx+MVVM bindings for the form validation · fd9f3ab1
      Silbino Goncalves Matado authored
      Add some bindings from the CreateRingAccountViewController to the
      CreateRingAccountViewModel to validate the following user inputs :
      - username (optional)
      - password (must be 6 characters min.)
      - repeat password (must be equal to the password)
      If conditions are not verified. The Create Account button is
      Bindings are made with Variabes and Observers into the ViewModel.
      Tuleap: #1400
      Change-Id: Ib03797e365972aefafbc75c5a8b798e8ba659cfc
  13. 24 Apr, 2017 1 commit
  14. 06 Apr, 2017 1 commit
  15. 04 Apr, 2017 1 commit
    • Romain Bertozzi's avatar
      arch: remove singleton and add DI · 59f7ea31
      Romain Bertozzi authored
      This patch removes the singleton of the AccountService and
      These elements are still instantiated and kept once in the application
      thanks to the AppDelegate.
      They are then injected by initializers to the rest of the app.
      In order to achieve this, we had to change the delegate connection
      between the AccountAdapter and its Service. Indeed, we do not have a
      singleton pattern anymore and we can not keep a "self" reference
      because of the exportable_callback behaviour.
      So, we set the delegate to a static delegate.
      Tuleap: #1391
      Change-Id: I56d6e79f7d3c09d6ac3166643fa293cf6df67555
      Reviewed-by: default avatarSilbino Gonçalves Matado <silbino.gmatado@savoirfairelinux.com>
  16. 30 Mar, 2017 5 commits
  17. 22 Mar, 2017 1 commit
    • Romain Bertozzi's avatar
      accountModel: create model stack · 4361db30
      Romain Bertozzi authored
      This patch creates the stack of models that the AccountModel will need
      to exist.
      It also makes a little refactor to make the AccountModel very simple:
      variables and init methods.
      Some of these elements that have been moved are now gathered in a
      dedicated helper that exposes some getters and setters.
      Finally, some code is now commented in the high layers to allow code
      compilation. This code refers to parts that are not designed or
      written yet.
      Tuleap: #1542
      Change-Id: Ie52075c9f06d6efaa824caac457d30b859c17658
  18. 21 Mar, 2017 1 commit
    • Romain Bertozzi's avatar
      serviceEvent: add unit tests · 3b289ad5
      Romain Bertozzi authored
      This patch adds the unit tests concerning the ServiceEvent class.
      Tuleap: #1377
      Change-Id: Id4e41d23d3bd69124a1f04f5059bb12354ab44f7
  19. 20 Mar, 2017 2 commits
    • Romain Bertozzi's avatar
      services: create serviceEvent structure · 2202e6d1
      Romain Bertozzi authored
      This patch creates the serviceEvent structure.
      This structure will be sent in the services' response streams. They
      will contain all the needed data gathered from the deamon by the
      Tuleap: #1377
      Change-Id: Ia1e76be8550b9155c80a22f78df71f8e60898f10
    • Romain Bertozzi's avatar
      wizard: complete add account pipe · 72a1b8d8
      Romain Bertozzi authored
      This patch completes the pipe of creating a dummy account using
      RxSwift and MVVM.
      The AccountsService now exposes a public shared responseStream that
      observers can listen to.
      Callers will call this service's methods directly and wait for any
      interesting response on the stream.
      Tuleap: #1391
      Change-Id: I2eb5abac9eb012892a806ee2fb73df8730edba87
  20. 10 Feb, 2017 1 commit
  21. 09 Jan, 2017 1 commit
  22. 04 Jan, 2017 2 commits
    • Romain Bertozzi's avatar
      wizard: bind V to VM for create Ring account · bb76bf35
      Romain Bertozzi authored
      This patch creates a basic binding between the view and the modelview
      of the add account screen.
      It is done by using RxSwift.
      For the moment, the unique button of the screen is bound. The action
      between the VM and the AccountService is still strongly link. This
      will be changed in a next patch to use Rx instead.
      Change-Id: Iebc4f49edd0de4a0ec1db70af854d0d6f98f336e
      Tuleap: #1400
    • Romain Bertozzi's avatar
      wizard: build skeleton · 06adf62e
      Romain Bertozzi authored
      This patch builds the skeleton of the wizard: all the necessary scene
      and their script.
      Tuleap: #1337
      Change-Id: Id33e2de2de23564f70b392dbeede3e11f2e489ad
  23. 03 Jan, 2017 6 commits
    • Romain Bertozzi's avatar
      dringadapter: use main thread for calls · fe535663
      Romain Bertozzi authored
      This patchs ensures that the dringadapter uses the application's main
      thread to make the calls to the daemon.
      This is necessary because of the conception of the daemon.
      It captures and registers the thread that initializes and starts it
      and considers it as its main thread.
      pjsip then also uses it. It does not tolerate any other threads than
      the ones that it had already registered.
      Using the app main thread guarantees that is remains the same during
      the whole lifecyle.
      Tuleap: #1423
      Change-Id: Id03933f3f1a4c0428899af3593b35fc92a873e35
    • Romain Bertozzi's avatar
      project: adopt recommended configuration · a933e793
      Romain Bertozzi authored
      This patch adopts the recommended configuration from Xcode.
      What it does:
          - warn infinite recursion and suspicious move
          - optimize swift whole level
      Change-Id: I19dd00ff8709679f50b0f03ab518db1a70fe31ec
      Tuleap: #1377
    • Romain Bertozzi's avatar
      gitignore: ignore Carthage build folder · 3ab7352e
      Romain Bertozzi authored
      This patch updates the .gitignore file to ignore the folder where
      Carthage builds the frameworks.
      Change-Id: I0273e312469acaeadb440459c8560d1ec8f92fc6
      Tuleap: #1377
    • Romain Bertozzi's avatar
      RXSwift: add library via Carthage · 33cd34fa
      Romain Bertozzi authored
      This library is added by Carthage in a dedicated build folder that is
      contained in the Carthage folder.
      The Cartfile.resolved file is tracked by Git, so a Carthage bootstrap
      will be needed to download the frameworks.
      Tuleap: #1377
      Change-Id: I8df4efdd6488cd73201df80b327b5f00f2b2a21f
    • Romain Bertozzi's avatar
      bridge: replace nsnotification by delegation · 8164698a
      Romain Bertozzi authored
      This patch takes care of replacing the NSNotification events fired
      from the AccountConfigurationManagerAdaptator by a delegation pattern.
      Indeed, we only want the AccountsService to be notified of callbacks
      coming from the daemon. NSNotifications fired from the NSNotification
      default center are broadcasted events. We want to avoid them as much
      as possible.
      In order to achieve this, a protocol is declared on the Swift part of
      the application.
      Then, the Ring-Swift.h generated file will take care of exposing it to
      the objective-c source code (thanks to the @objc annotation).
      We need the pch file to be present to resolve UIKit and Foundation in
      the generated Ring-Swift file.
      The accountsService now registers itself to the
      AccountConfigurationManagerAdaptator as the reveiver of its callbacks.
      Because notifications are not used anymore at this time, we remove
      the related files factorizing the notifications names.
      Tuleap: #1405
      Change-Id: I25c906ef6bcfd019cfb331047768883b39755275
    • Romain Bertozzi's avatar
      account service: modify bridging · 8d90d9ed
      Romain Bertozzi authored
      This patch reorganizes the structure of the bridging between the Swift
      client and the Daemon.
      It isolates the code related to the account service. That's why there
      is a renaming of the ConfigurationManagerAdaptor.
      We want it to be specialized in what the account service can do.
      The files meant to make the bridge between the client and the daemon
      are now stored in a dedicated file in the project structure.
      The broadcast by NSNotification posts is still used here.
      Tuleap: #1405
      Change-Id: I2d8f0d361ed9394c98a30b0703ad3d49b18cde4a
  24. 22 Dec, 2016 4 commits
    • Romain Bertozzi's avatar
      gitignore: exclude Ring build folder · ce321fbd
      Romain Bertozzi authored
      This patch excludes the Ring build folder from the git scope. This
      folder is created at compile time to store apps and swift modules.
      Tuleap: #1327
      Change-Id: Ia8aff3992f877a5668417470ac3f443a5dda055f
    • Romain Bertozzi's avatar
      UT: add daemon service unit tests · 88859c0a
      Romain Bertozzi authored
      This patch adds a XCTestCase class used to perform tests on the Daemon
      It will ensure that the Daemon correctly start and stop. This can not
      be seen with the iOS Daemon Jenkins' job only.
      Change-Id: I34c8a1aae3affebc51ce803bdc670ae38d37ffdb
      Tuleap: #1378
    • Romain Bertozzi's avatar
      daemonservice: introduce service · f31aa1da
      Romain Bertozzi authored
      This patch adds the deamon service to the project.
      This service will handle the main capabilities of the Ring Daemon,
      such as starting and stopping it.
      For the moment, there is no callback, notifications, or observers to
      that service. This let us the flexibility to implement it with
      whatever we want in the future (Rx-like, NSNotifications etc...).
      Tuleap: #1378
      Change-Id: Ib560977f9fd1dacd45e2afc63613870a3d60630f
    • Romain Bertozzi's avatar
      project: reorganize structure, begin mvvm · 966233f8
      Romain Bertozzi authored
      This patch reorganizes the project structure to separate entities in
      specific groups.
      It also renames some files.
      This is done to improve the separation of concerns of the components
      of the project.
      The renaming operation reflects the MVVM architecture that we will try
      to implement.
      Tuleap: #1327
      Change-Id: I46109e82c87510e134f57d551946499b11334c44