1. 14 Jul, 2017 1 commit
    • Thibault Wittemberg's avatar
      ui: add theming basis · cfe0eba3
      Thibault Wittemberg authored
      This commit adds Chameleon to theme the app and a custom
      theming function to handle MessageBubbles
      Change-Id: I58e4d2e30c9e81a444b3a22cef4429d64361426d
  2. 12 Jul, 2017 1 commit
    • Hadrien De Sousa's avatar
      launch: fix account loading · 799a4cad
      Hadrien De Sousa authored
      This commit fixes accounts loading at launch that displayed the 
      smartlist even if there was no accounts
      Change-Id: I87e3aeffa9e780d7a1ff43f4511a331a0d5d987f
  3. 07 Jul, 2017 2 commits
  4. 06 Jul, 2017 4 commits
    • Thibault Wittemberg's avatar
      project: add SwiftyBeaver for log · 69981855
      Thibault Wittemberg authored
      SwiftyBeaver improves log readability and allows
      to use different logging levels and different kinds of
      outputs. Way better than simples "print()"
      Change-Id: Iaa3087952095d4344b3cd85314892c4fcd25251c
    • Thibault Wittemberg's avatar
      project: add Reusable framework · fb8bb07d
      Thibault Wittemberg authored
      this framework will be used to:
      - instantiate in a more "type safety" way UI components
      - to split storyboards into atomic VCs
      Change-Id: I1fec0a87a9e2c4b838174139ce57f9097bb4d4c7
    • Thibault Wittemberg's avatar
      project: add SwiftGen code generation · 1f9ce46d
      Thibault Wittemberg authored
      This commit adds the SwiftGen build phase. This phase launches the
      swiftgen.sh script that uses SwiftGen tool to produce Swift Code
      that make Strings, Assets and Storyboards usage a lot safer
      Change-Id: I78471f5603864608e25bbad36f0459103d6bdded
    • Thibault Wittemberg's avatar
      project: add static code analysis · 14b092a9
      Thibault Wittemberg authored
      This commit:
      - adds swiftlint analysis as custom build phase
      - to install, see: https://github.com/realm/SwiftLint
      - fix almost every error/warning messages detected by swiftlint
      Change-Id: I0d15cecaa33c4f79dcd1417a2169f1e66fd2e551
  5. 05 Jul, 2017 1 commit
  6. 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
  7. 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
  8. 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
  9. 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
  10. 20 Jun, 2017 1 commit
  11. 19 Jun, 2017 1 commit
  12. 09 Jun, 2017 1 commit
  13. 02 Jun, 2017 2 commits
  14. 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
  15. 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
  16. 24 Apr, 2017 1 commit
  17. 06 Apr, 2017 1 commit
  18. 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>
  19. 30 Mar, 2017 5 commits
  20. 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
  21. 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
  22. 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
  23. 10 Feb, 2017 1 commit
  24. 09 Jan, 2017 1 commit
  25. 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
  26. 03 Jan, 2017 3 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