Commit Graph

86 Commits

Author SHA1 Message Date
str4d
88d81634ca Add identicons to conversations 2016-01-26 18:34:02 +00:00
str4d
e62d60ff52 Add identicons to contact list 2016-01-26 18:34:02 +00:00
Ernir Erlingsson
dae29eecce Navigation drawer (squashed and rebased). 2016-01-21 16:49:21 +00:00
akwizgran
cdfaa39338 Update contact list when contacts are deleted. #227
Also removed unnecessary adapter notifications in various places.
2016-01-20 16:08:22 +00:00
akwizgran
5355951466 Separate the sync layer from its clients. #112 2016-01-20 10:35:09 +00:00
Torsten Grote
e98677b2bb Do not show a notification for a conversation we are in 2016-01-15 11:27:22 -02:00
Torsten Grote
a1bfe00f1b Remove notification about private messages when viewing messages 2016-01-15 10:53:05 -02:00
Torsten Grote
9aa1bbd1ed Do not show messages as unread when the conversation is open
* Only show them as unread when they arrive out of order
* Mark all messages as read when sending a message
2016-01-14 11:49:34 -02:00
akwizgran
90214c7f93 Removed Read/WritePrivateMessageActivity. #208 2016-01-08 13:21:42 +00:00
Torsten Grote
0a11c0632f introduce a hideSoftKeyboard() method and use it 2016-01-07 19:31:06 -02:00
Torsten Grote
4460d69a06 Improve PasswordActivity by
* removing screen border visible on small screens
* showing noticeable error message on wrong password input
* showing keyboard again after entering wrong password
* making lost password link easier to recognize as link
* renaming keyboard toggle method from 'hide' to 'toggle'
2016-01-07 14:15:57 -02:00
akwizgran
b7860ba46c Merge branch 'use-briarrecyclerview-in-conversation-view' into 'master'
Use new BriarRecyclerView in ConversationView

This now handles progress bar and empty view itself.
With this commit, it also scrolls down on layout changes like when
keyboard is opened.

See merge request !46
2016-01-04 14:17:10 +00:00
Torsten Grote
027b3cd33a Fix contacts duplicating itself when pressing back button in conversation view
This is done by update existing items rather than just adding them,
because different timestamps in added items change the sorting criteria
and cause duplicates in the SortedList.

Closes #200
2015-12-31 14:17:14 -02:00
Torsten Grote
a4437a729a Use new BriarRecyclerView in ConversationView
This now handles progress bar and empty view itself.
With this commit, it also scrolls down on layout changes like when
keyboard is opened.
2015-12-31 13:14:33 -02:00
akwizgran
b1f2f7d120 Merge branch '198-briar-recycler-view' into 'master'
Create custom BriarRecyclerView and use it for the contact list.

It is a common pattern to have a list with an empty view and a progress bar.
This commit introduces a custom BriarRecyclerView and uses it for the
contact list.

No more manually hiding and showing empty views and progress bars is
necessary when using the new BriarRecyclerView instead of RecyclerView.

Please note that this conflicts with !44 at the moment and needs to be
implemented for !36 once merged.

Closes #198

See merge request !45
2015-12-31 11:32:58 +00:00
akwizgran
d0092ee5aa Merge branch '9-conversation-view' into 'master'
Overhauled Conversation View with Message Bubbles

The Conversation View now uses a RecyclerView with conversation bubbles
in alternating colors and vector drawables to indicate message state.

The conversation bubbles have been taken from Telegram
and can be replaced by a UX designer later.
There's also a special bubble for unread messages,
so they are not overlooked when they come in delayed.

This commit also addresses #9, because message text can
now be selected and copied. This is done by using

    android:textIsSelectable="true"

which only works for API level 11 or higher.

If we want copy and paste on lower API levels,
additional measures have to be implemented.

See merge request !36
2015-12-31 11:20:29 +00:00
Torsten Grote
970560c21e address issues with new BriarRecyclerView found in review 2015-12-30 13:22:23 -02:00
Torsten Grote
f309cb36d4 Create custom BriarRecyclerView and use it for the contact list.
It is a common pattern to have a list with an empty view and a progress bar.
This commit introduces a custom BriarRecyclerView and uses it for the
contact list.

No more manually hiding and showing empty views and progress bars is
necessary when using the new BriarRecyclerView instead of RecyclerView.

Please note that this conflicts with !44 at the moment and needs to be
implemented for !36 once merged.

Closes #198
2015-12-30 11:50:15 -02:00
Torsten Grote
a51726f147 This introduces a floating action button (FAB) in the contact list.
The button hides itself when you scroll down the list of contacts
and shows again when you scroll up.

To properly color the button, the accent color has been defined.
It uses the same color as the action bar (primary color).
I leave it to a UX designer to adapt the color scheme.

Please note that the design support library was used.
It includes the app-compat library, so this has been removed
from the `build.gradle` file.

Closes #199
2015-12-30 10:58:05 -02:00
Torsten Grote
880333f094 address issues found so far in code review 2015-12-28 17:04:03 -02:00
Torsten Grote
e98d4f2260 Use a RecyclerView for the ConversationView and
properly notify the view adapter of dataset changes
in order to avoid invalidating the entire dataset when not absolutely necessary.

This change also shows unread messages in a different color,
so users do not fail to notice delayed messages.
2015-12-28 14:49:03 -02:00
Torsten Grote
68cd1ff28c New Conversation View in XML
It now uses conversation bubbles in alternating colors
and vector drawables to indicate message state.

The conversation bubbles have been taken from Telegram
and can be replaced by a UX designer later.

This commit also addresses #9, because message text can
now be selected and copied. This is done by using

    android:textIsSelectable="true"

which only works for API level 11 or higher.

If we want copy and paste on lower API levels,
additional measures have to be implemented.
2015-12-28 14:49:03 -02:00
Torsten Grote
6a954021ae Sort contacts by latest activity.
When you receive a message from a contact,
it will be moved to the top of the list with a nice animation.
Also with this commit, not the entire data set is invalidated each time data changes,
but only the parts of the data that really require an update.

Furthermore, the ContactListItemComparator that is not needed anymore is
removed.
2015-12-28 14:37:23 -02:00
Torsten Grote
4bcd204687 Use a RecyclerView for the Contact List 2015-12-28 14:37:23 -02:00
akwizgran
f899bc0c38 Facade for private message headers. #173 2015-12-17 16:56:58 +00:00
akwizgran
87689855da Facades for private messaging. #173 2015-12-17 16:56:58 +00:00
akwizgran
4450ab171a Facades for forums. #172 2015-12-17 16:56:58 +00:00
akwizgran
122380db66 Use new UI/DB interfaces for private messaging. 2015-12-17 16:56:57 +00:00
akwizgran
c5282c5b17 Moved some API classes into packages. 2015-12-17 16:56:57 +00:00
akwizgran
3e3109254f Merge branch 'conversation-layout-tweaks' into 'master'
Layout tweaks for ConversationActivity.

Centre the progress wheel and empty list message, hide the empty list message until the list has loaded.

See merge request !26
2015-12-17 16:35:36 +00:00
akwizgran
6e61504d24 Removed message expiry code. #180 2015-12-16 12:17:38 +00:00
akwizgran
9bb298ed44 Merge branch '174-bsp-renaming-again'
Conflicts:
	briar-android/src/org/briarproject/android/contact/ConversationActivity.java
2015-12-16 10:42:44 +00:00
akwizgran
b6c9544373 Layout tweaks for ConversationActivity. 2015-12-15 17:08:23 +00:00
Torsten Grote
327073f514 Put conversation view layout in XML file
and fix message divider background for lower API levels.
2015-12-15 13:11:11 -02:00
Torsten Grote
2bd53f8363 Show connection status of contact in conversation view
Closes #97
2015-12-15 13:11:11 -02:00
akwizgran
2ca2356ecc Moved MessageHeader to sync package. 2015-12-15 15:05:16 +00:00
akwizgran
e370cafb12 Moved classes from messaging package to sync package. 2015-12-15 15:05:06 +00:00
Torsten Grote
aa7d7642bf make message status persistent and initialize it from database 2015-12-10 11:25:41 -02:00
Torsten Grote
0a8c42b939 Improve how the status of messages is indicated.
Remove the Toast that always says 'Message Sent' and show graphical
indicators instead that show either:
* message is waiting to be sent
* message was sent (or requested)
* message was delivered
2015-12-10 10:11:27 -02:00
akwizgran
027ae8340f Whitespace-only code formatting changes. 2015-11-30 09:38:25 +00:00
akwizgran
4ca83842d1 Moved ConnectionDispatcher and ConnectionRegistry to plugins package. 2014-11-05 19:40:07 +00:00
akwizgran
cdb5a12156 Use the event bus to observe contacts connecting and disconnecting. 2014-10-03 10:04:02 +01:00
akwizgran
8b8df435a5 Separated event infrastructure from DB. 2014-10-03 09:44:54 +01:00
akwizgran
c8cc287fa1 Delete contacts. Dev task #85. 2014-05-09 20:08:20 +01:00
akwizgran
6b79cbfc55 No need to call getResources() for getString(). 2014-05-09 20:08:20 +01:00
akwizgran
839f67dd44 Replaced last connection time with time of last private message. 2014-04-05 18:14:36 +01:00
akwizgran
3d9f5c496f Show feedback when nickname or forum name is too long. Bug #45. 2014-04-05 14:59:30 +01:00
akwizgran
1c282a8835 Show when private messages have been delivered. 2014-04-03 23:42:24 +01:00
akwizgran
3008bcc209 Sort forum messages correctly even if clocks are wrong. Bug #57. 2014-04-01 19:38:11 +01:00
akwizgran
d83513c5f9 Dismiss dialogs when screen is rotated. Bug #52. 2014-03-21 14:30:54 +00:00