Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
A
AloqaIM-Android
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Administrator
AloqaIM-Android
Commits
7e9682d9
Unverified
Commit
7e9682d9
authored
Jul 21, 2018
by
Lucio Maciel
Committed by
GitHub
Jul 21, 2018
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'beta' into fix/more-fixes-for-2.5.0
parents
e7f17783
043df051
Changes
47
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
47 changed files
with
564 additions
and
321 deletions
+564
-321
DateTimeHelper.kt
app/src/main/java/chat/rocket/android/app/DateTimeHelper.kt
+39
-30
MessageInfoFragment.kt
.../rocket/android/chatinformation/ui/MessageInfoFragment.kt
+1
-1
MessageViewHolder.kt
...chat/rocket/android/chatroom/adapter/MessageViewHolder.kt
+15
-5
ChatRoomFragment.kt
.../java/chat/rocket/android/chatroom/ui/ChatRoomFragment.kt
+42
-26
AudioAttachmentUiModel.kt
...rocket/android/chatroom/uimodel/AudioAttachmentUiModel.kt
+3
-1
AuthorAttachmentUiModel.kt
...ocket/android/chatroom/uimodel/AuthorAttachmentUiModel.kt
+16
-14
BaseUiModel.kt
.../java/chat/rocket/android/chatroom/uimodel/BaseUiModel.kt
+2
-0
ColorAttachmentUiModel.kt
...rocket/android/chatroom/uimodel/ColorAttachmentUiModel.kt
+15
-13
GenericFileAttachmentUiModel.kt
.../android/chatroom/uimodel/GenericFileAttachmentUiModel.kt
+14
-12
ImageAttachmentUiModel.kt
...rocket/android/chatroom/uimodel/ImageAttachmentUiModel.kt
+16
-14
MessageAttachmentUiModel.kt
...cket/android/chatroom/uimodel/MessageAttachmentUiModel.kt
+16
-14
MessageReplyUiModel.kt
...at/rocket/android/chatroom/uimodel/MessageReplyUiModel.kt
+3
-1
MessageUiModel.kt
...va/chat/rocket/android/chatroom/uimodel/MessageUiModel.kt
+2
-0
UiModelMapper.kt
...ava/chat/rocket/android/chatroom/uimodel/UiModelMapper.kt
+47
-11
UrlPreviewUiModel.kt
...chat/rocket/android/chatroom/uimodel/UrlPreviewUiModel.kt
+15
-13
VideoAttachmentUiModel.kt
...rocket/android/chatroom/uimodel/VideoAttachmentUiModel.kt
+3
-1
activity_add_members.xml
app/src/main/res/layout/activity_add_members.xml
+10
-2
avatar_profile.xml
app/src/main/res/layout/avatar_profile.xml
+2
-0
fragment_authentication_log_in.xml
app/src/main/res/layout/fragment_authentication_log_in.xml
+8
-6
fragment_chat_room.xml
app/src/main/res/layout/fragment_chat_room.xml
+28
-15
fragment_create_channel.xml
app/src/main/res/layout/fragment_create_channel.xml
+17
-9
fragment_favorite_messages.xml
app/src/main/res/layout/fragment_favorite_messages.xml
+9
-3
fragment_files.xml
app/src/main/res/layout/fragment_files.xml
+11
-3
fragment_member_bottom_sheet.xml
app/src/main/res/layout/fragment_member_bottom_sheet.xml
+6
-3
fragment_mentions.xml
app/src/main/res/layout/fragment_mentions.xml
+11
-3
fragment_pinned_messages.xml
app/src/main/res/layout/fragment_pinned_messages.xml
+10
-4
item_color_attachment.xml
app/src/main/res/layout/item_color_attachment.xml
+8
-7
item_message.xml
app/src/main/res/layout/item_message.xml
+45
-3
item_message_reply.xml
app/src/main/res/layout/item_message_reply.xml
+7
-6
layout_toolbar.xml
app/src/main/res/layout/layout_toolbar.xml
+4
-1
message_composer.xml
app/src/main/res/layout/message_composer.xml
+17
-10
message_url_preview.xml
app/src/main/res/layout/message_url_preview.xml
+8
-7
nav_header.xml
app/src/main/res/layout/nav_header.xml
+10
-5
suggestion_member_item.xml
app/src/main/res/layout/suggestion_member_item.xml
+3
-0
chatrooms.xml
app/src/main/res/menu/chatrooms.xml
+3
-1
image_actions.xml
app/src/main/res/menu/image_actions.xml
+3
-1
strings.xml
app/src/main/res/values-es/strings.xml
+50
-68
strings.xml
app/src/main/res/values-fr/strings.xml
+3
-0
strings.xml
app/src/main/res/values-hi-rIN/strings.xml
+4
-0
strings.xml
app/src/main/res/values-pt-rBR/strings.xml
+4
-1
strings.xml
app/src/main/res/values-uk-rRU/strings.xml
+9
-3
colors.xml
app/src/main/res/values/colors.xml
+2
-0
fonts.xml
app/src/main/res/values/fonts.xml
+4
-0
strings.xml
app/src/main/res/values/strings.xml
+3
-0
styles.xml
app/src/main/res/values/styles.xml
+7
-1
activity_drawing.xml
draw/src/main/res/layout/activity_drawing.xml
+6
-2
emoji_keyboard.xml
emoji/src/main/res/layout/emoji_keyboard.xml
+3
-1
No files found.
app/src/main/java/chat/rocket/android/app/DateTimeHelper.kt
View file @
7e9682d9
...
@@ -44,39 +44,48 @@ object DateTimeHelper {
...
@@ -44,39 +44,48 @@ object DateTimeHelper {
}
}
}
}
/**
fun
getFormattedDateForMessages
(
localDateTime
:
LocalDateTime
,
context
:
Context
):
String
{
val
localDate
=
localDateTime
.
toLocalDate
()
return
when
(
localDate
)
{
today
->
context
.
getString
(
R
.
string
.
msg_today
)
yesterday
->
context
.
getString
(
R
.
string
.
msg_yesterday
)
else
->
formatLocalDate
(
localDate
)
}
}
/**
* Returns a time from a [LocalDateTime].
* Returns a time from a [LocalDateTime].
*
*
* @param localDateTime The [LocalDateTime].
* @param localDateTime The [LocalDateTime].
* @return The time from a [LocalDateTime].
* @return The time from a [LocalDateTime].
*/
*/
fun
getTime
(
localDateTime
:
LocalDateTime
):
String
{
fun
getTime
(
localDateTime
:
LocalDateTime
):
String
{
val
formatter
=
DateTimeFormatter
.
ofLocalizedTime
(
FormatStyle
.
SHORT
)
val
formatter
=
DateTimeFormatter
.
ofLocalizedTime
(
FormatStyle
.
SHORT
)
return
localDateTime
.
toLocalTime
().
format
(
formatter
).
toString
()
return
localDateTime
.
toLocalTime
().
format
(
formatter
).
toString
()
}
}
/**
/**
* Returns a date time from a [LocalDateTime].
* Returns a date time from a [LocalDateTime].
*
*
* @param localDateTime The [LocalDateTime].
* @param localDateTime The [LocalDateTime].
* @return The time from a [LocalDateTime].
* @return The time from a [LocalDateTime].
*/
*/
fun
getDateTime
(
localDateTime
:
LocalDateTime
):
String
{
fun
getDateTime
(
localDateTime
:
LocalDateTime
):
String
{
return
formatLocalDateTime
(
localDateTime
)
return
formatLocalDateTime
(
localDateTime
)
}
}
private
fun
formatLocalDateTime
(
localDateTime
:
LocalDateTime
):
String
{
private
fun
formatLocalDateTime
(
localDateTime
:
LocalDateTime
):
String
{
val
formatter
=
DateTimeFormatter
.
ofLocalizedDateTime
(
FormatStyle
.
SHORT
)
val
formatter
=
DateTimeFormatter
.
ofLocalizedDateTime
(
FormatStyle
.
SHORT
)
return
localDateTime
.
format
(
formatter
).
toString
()
return
localDateTime
.
format
(
formatter
).
toString
()
}
}
private
fun
formatLocalDate
(
localDate
:
LocalDate
):
String
{
private
fun
formatLocalDate
(
localDate
:
LocalDate
):
String
{
val
formatter
=
DateTimeFormatter
.
ofLocalizedDate
(
FormatStyle
.
SHORT
)
val
formatter
=
DateTimeFormatter
.
ofLocalizedDate
(
FormatStyle
.
SHORT
)
return
localDate
.
format
(
formatter
).
toString
()
return
localDate
.
format
(
formatter
).
toString
()
}
}
private
fun
formatLocalTime
(
localTime
:
LocalTime
):
String
{
private
fun
formatLocalTime
(
localTime
:
LocalTime
):
String
{
val
formatter
=
DateTimeFormatter
.
ofLocalizedTime
(
FormatStyle
.
SHORT
)
val
formatter
=
DateTimeFormatter
.
ofLocalizedTime
(
FormatStyle
.
SHORT
)
return
localTime
.
format
(
formatter
).
toString
()
return
localTime
.
format
(
formatter
).
toString
()
}
}
}
}
\ No newline at end of file
app/src/main/java/chat/rocket/android/chatinformation/ui/MessageInfoFragment.kt
View file @
7e9682d9
...
@@ -68,7 +68,7 @@ class MessageInfoFragment : Fragment(), MessageInfoView {
...
@@ -68,7 +68,7 @@ class MessageInfoFragment : Fragment(), MessageInfoView {
private
fun
setupRecyclerView
()
{
private
fun
setupRecyclerView
()
{
// Initialize the endlessRecyclerViewScrollListener so we don't NPE at onDestroyView
// Initialize the endlessRecyclerViewScrollListener so we don't NPE at onDestroyView
val
linearLayoutManager
=
LinearLayoutManager
(
context
,
LinearLayoutManager
.
VERTICAL
,
true
)
val
linearLayoutManager
=
LinearLayoutManager
(
context
,
RecyclerView
.
VERTICAL
,
true
)
adapter
=
ReadReceiptAdapter
()
adapter
=
ReadReceiptAdapter
()
linearLayoutManager
.
stackFromEnd
=
true
linearLayoutManager
.
stackFromEnd
=
true
receipt_list
.
layoutManager
=
linearLayoutManager
receipt_list
.
layoutManager
=
linearLayoutManager
...
...
app/src/main/java/chat/rocket/android/chatroom/adapter/MessageViewHolder.kt
View file @
7e9682d9
...
@@ -26,20 +26,30 @@ class MessageViewHolder(
...
@@ -26,20 +26,30 @@ class MessageViewHolder(
override
fun
bindViews
(
data
:
MessageUiModel
)
{
override
fun
bindViews
(
data
:
MessageUiModel
)
{
with
(
itemView
)
{
with
(
itemView
)
{
if
(
data
.
isFirstUnread
)
new_messages_notif
.
visibility
=
View
.
VISIBLE
day_marker_layout
.
visibility
=
if
(
data
.
showDayMarker
)
{
else
new_messages_notif
.
visibility
=
View
.
GONE
day
.
text
=
data
.
currentDayMarkerText
View
.
VISIBLE
}
else
{
View
.
GONE
}
if
(
data
.
isFirstUnread
)
{
new_messages_notif
.
visibility
=
View
.
VISIBLE
}
else
{
new_messages_notif
.
visibility
=
View
.
GONE
}
text_message_time
.
text
=
data
.
time
text_message_time
.
text
=
data
.
time
text_sender
.
text
=
data
.
senderName
text_sender
.
text
=
data
.
senderName
text_content
.
text
=
data
.
content
text_content
.
text
=
data
.
content
image_avatar
.
setImageURI
(
data
.
avatar
)
image_avatar
.
setImageURI
(
data
.
avatar
)
text_content
.
setTextColor
(
text_content
.
setTextColor
(
if
(
data
.
isTemporary
)
Color
.
GRAY
else
Color
.
BLACK
)
if
(
data
.
isTemporary
)
Color
.
GRAY
else
Color
.
BLACK
)
data
.
message
.
let
{
data
.
message
.
let
{
text_edit_indicator
.
isVisible
=
!
it
.
isSystemMessage
()
&&
it
.
editedBy
!=
null
text_edit_indicator
.
isVisible
=
!
it
.
isSystemMessage
()
&&
it
.
editedBy
!=
null
image_star_indicator
.
isVisible
=
it
.
starred
?.
isNotEmpty
()
?:
false
image_star_indicator
.
isVisible
=
it
.
starred
?.
isNotEmpty
()
?:
false
}
}
if
(
data
.
unread
==
null
)
{
if
(
data
.
unread
==
null
)
{
read_receipt_view
.
isVisible
=
false
read_receipt_view
.
isVisible
=
false
}
else
{
}
else
{
...
...
app/src/main/java/chat/rocket/android/chatroom/ui/ChatRoomFragment.kt
View file @
7e9682d9
...
@@ -12,15 +12,14 @@ import android.text.SpannableStringBuilder
...
@@ -12,15 +12,14 @@ import android.text.SpannableStringBuilder
import
android.view.KeyEvent
import
android.view.KeyEvent
import
android.view.LayoutInflater
import
android.view.LayoutInflater
import
android.view.Menu
import
android.view.Menu
import
android.view.MenuInflater
import
android.view.MenuItem
import
android.view.MenuItem
import
android.view.View
import
android.view.View
import
android.view.ViewGroup
import
android.view.ViewGroup
import
android.widget.ImageView
import
android.widget.Button
import
android.widget.Button
import
android.widget.EditText
import
android.widget.EditText
import
android.widget.TextView
import
android.widget.FrameLayout
import
android.widget.FrameLayout
import
android.widget.ImageView
import
android.widget.TextView
import
androidx.annotation.DrawableRes
import
androidx.annotation.DrawableRes
import
androidx.core.text.bold
import
androidx.core.text.bold
import
androidx.core.view.isVisible
import
androidx.core.view.isVisible
...
@@ -53,9 +52,9 @@ import chat.rocket.android.emoji.EmojiParser
...
@@ -53,9 +52,9 @@ import chat.rocket.android.emoji.EmojiParser
import
chat.rocket.android.emoji.EmojiPickerPopup
import
chat.rocket.android.emoji.EmojiPickerPopup
import
chat.rocket.android.emoji.EmojiReactionListener
import
chat.rocket.android.emoji.EmojiReactionListener
import
chat.rocket.android.helper.EndlessRecyclerViewScrollListener
import
chat.rocket.android.helper.EndlessRecyclerViewScrollListener
import
chat.rocket.android.helper.ImageHelper
import
chat.rocket.android.helper.KeyboardHelper
import
chat.rocket.android.helper.KeyboardHelper
import
chat.rocket.android.helper.MessageParser
import
chat.rocket.android.helper.MessageParser
import
chat.rocket.android.helper.ImageHelper
import
chat.rocket.android.util.extension.asObservable
import
chat.rocket.android.util.extension.asObservable
import
chat.rocket.android.util.extensions.circularRevealOrUnreveal
import
chat.rocket.android.util.extensions.circularRevealOrUnreveal
import
chat.rocket.android.util.extensions.fadeIn
import
chat.rocket.android.util.extensions.fadeIn
...
@@ -296,14 +295,30 @@ class ChatRoomFragment : Fragment(), ChatRoomView, EmojiKeyboardListener, EmojiR
...
@@ -296,14 +295,30 @@ class ChatRoomFragment : Fragment(), ChatRoomView, EmojiKeyboardListener, EmojiR
adapter
.
clearData
()
adapter
.
clearData
()
}
}
if
(
dataSet
.
isNotEmpty
())
{
var
prevMsgModel
=
dataSet
[
0
]
// track the message sent immediately after the current message
// track the message sent immediately after the current message
var
prevMessageUiModel
:
MessageUiModel
?
=
null
var
prevMessageUiModel
:
MessageUiModel
?
=
null
// Checking for all messages to assign true to the required showDayMaker
// Loop over received messages to determine first unread
// Loop over received messages to determine first unread
var
firstUnread
=
false
for
(
i
in
dataSet
.
indices
)
{
for
(
i
in
dataSet
.
indices
)
{
val
msgModel
=
dataSet
[
i
]
val
msgModel
=
dataSet
[
i
]
if
(
msgModel
is
MessageUiModel
)
{
if
(
i
>
0
)
{
prevMsgModel
=
dataSet
[
i
-
1
]
}
val
currentDayMarkerText
=
msgModel
.
currentDayMarkerText
val
previousDayMarkerText
=
prevMsgModel
.
currentDayMarkerText
println
(
"$previousDayMarkerText then $currentDayMarkerText"
)
if
(
previousDayMarkerText
!=
currentDayMarkerText
)
{
prevMsgModel
.
showDayMarker
=
true
}
if
(!
firstUnread
&&
msgModel
is
MessageUiModel
)
{
val
msg
=
msgModel
.
rawData
val
msg
=
msgModel
.
rawData
if
(
msg
.
timestamp
<
chatRoomLastSeen
)
{
if
(
msg
.
timestamp
<
chatRoomLastSeen
)
{
// This message was sent before the last seen of the room. Hence, it was seen.
// This message was sent before the last seen of the room. Hence, it was seen.
...
@@ -311,11 +326,13 @@ class ChatRoomFragment : Fragment(), ChatRoomView, EmojiKeyboardListener, EmojiR
...
@@ -311,11 +326,13 @@ class ChatRoomFragment : Fragment(), ChatRoomView, EmojiKeyboardListener, EmojiR
if
(
prevMessageUiModel
!=
null
)
{
if
(
prevMessageUiModel
!=
null
)
{
prevMessageUiModel
.
isFirstUnread
=
true
prevMessageUiModel
.
isFirstUnread
=
true
}
}
break
// Found first unread message.
firstUnread
=
true
}
}
prevMessageUiModel
=
msgModel
prevMessageUiModel
=
msgModel
}
}
}
}
}
if
(
recycler_view
.
adapter
==
null
)
{
if
(
recycler_view
.
adapter
==
null
)
{
adapter
=
ChatRoomAdapter
(
adapter
=
ChatRoomAdapter
(
...
@@ -428,7 +445,7 @@ class ChatRoomFragment : Fragment(), ChatRoomView, EmojiKeyboardListener, EmojiR
...
@@ -428,7 +445,7 @@ class ChatRoomFragment : Fragment(), ChatRoomView, EmojiKeyboardListener, EmojiR
}
else
{
}
else
{
if
(
dy
<
0
&&
!
button_fab
.
isVisible
)
{
if
(
dy
<
0
&&
!
button_fab
.
isVisible
)
{
button_fab
.
show
()
button_fab
.
show
()
if
(
newMessageCount
!=
0
)
text_count
.
isVisible
=
true
if
(
newMessageCount
!=
0
)
text_count
.
isVisible
=
true
}
}
}
}
}
}
...
@@ -493,8 +510,7 @@ class ChatRoomFragment : Fragment(), ChatRoomView, EmojiKeyboardListener, EmojiR
...
@@ -493,8 +510,7 @@ class ChatRoomFragment : Fragment(), ChatRoomView, EmojiKeyboardListener, EmojiR
text_count
.
text
=
"99+"
text_count
.
text
=
"99+"
text_count
.
isVisible
=
true
text_count
.
isVisible
=
true
}
}
else
if
(!
button_fab
.
isVisible
)
else
if
(!
button_fab
.
isVisible
)
recycler_view
.
scrollToPosition
(
0
)
recycler_view
.
scrollToPosition
(
0
)
verticalScrollOffset
.
set
(
0
)
verticalScrollOffset
.
set
(
0
)
empty_chat_view
.
isVisible
=
adapter
.
itemCount
==
0
empty_chat_view
.
isVisible
=
adapter
.
itemCount
==
0
...
...
app/src/main/java/chat/rocket/android/chatroom/uimodel/AudioAttachmentUiModel.kt
View file @
7e9682d9
...
@@ -16,7 +16,9 @@ data class AudioAttachmentUiModel(
...
@@ -16,7 +16,9 @@ data class AudioAttachmentUiModel(
override
var
preview
:
Message
?
=
null
,
override
var
preview
:
Message
?
=
null
,
override
var
isTemporary
:
Boolean
=
false
,
override
var
isTemporary
:
Boolean
=
false
,
override
var
unread
:
Boolean
?
=
null
,
override
var
unread
:
Boolean
?
=
null
,
override
var
menuItemsToHide
:
MutableList
<
Int
>
=
mutableListOf
()
override
var
menuItemsToHide
:
MutableList
<
Int
>
=
mutableListOf
(),
override
var
currentDayMarkerText
:
String
,
override
var
showDayMarker
:
Boolean
)
:
BaseFileAttachmentUiModel
<
AudioAttachment
>
{
)
:
BaseFileAttachmentUiModel
<
AudioAttachment
>
{
override
val
viewType
:
Int
override
val
viewType
:
Int
get
()
=
BaseUiModel
.
ViewType
.
AUDIO_ATTACHMENT
.
viewType
get
()
=
BaseUiModel
.
ViewType
.
AUDIO_ATTACHMENT
.
viewType
...
...
app/src/main/java/chat/rocket/android/chatroom/uimodel/AuthorAttachmentUiModel.kt
View file @
7e9682d9
...
@@ -18,7 +18,9 @@ data class AuthorAttachmentUiModel(
...
@@ -18,7 +18,9 @@ data class AuthorAttachmentUiModel(
override
var
preview
:
Message
?
=
null
,
override
var
preview
:
Message
?
=
null
,
override
var
isTemporary
:
Boolean
=
false
,
override
var
isTemporary
:
Boolean
=
false
,
override
var
unread
:
Boolean
?
=
null
,
override
var
unread
:
Boolean
?
=
null
,
override
var
menuItemsToHide
:
MutableList
<
Int
>
=
mutableListOf
()
override
var
menuItemsToHide
:
MutableList
<
Int
>
=
mutableListOf
(),
override
var
currentDayMarkerText
:
String
,
override
var
showDayMarker
:
Boolean
)
:
BaseAttachmentUiModel
<
AuthorAttachment
>
{
)
:
BaseAttachmentUiModel
<
AuthorAttachment
>
{
override
val
viewType
:
Int
override
val
viewType
:
Int
get
()
=
BaseUiModel
.
ViewType
.
AUTHOR_ATTACHMENT
.
viewType
get
()
=
BaseUiModel
.
ViewType
.
AUTHOR_ATTACHMENT
.
viewType
...
...
app/src/main/java/chat/rocket/android/chatroom/uimodel/BaseUiModel.kt
View file @
7e9682d9
...
@@ -14,6 +14,8 @@ interface BaseUiModel<out T> {
...
@@ -14,6 +14,8 @@ interface BaseUiModel<out T> {
var
preview
:
Message
?
var
preview
:
Message
?
var
isTemporary
:
Boolean
var
isTemporary
:
Boolean
var
unread
:
Boolean
?
var
unread
:
Boolean
?
var
currentDayMarkerText
:
String
var
showDayMarker
:
Boolean
var
menuItemsToHide
:
MutableList
<
Int
>
var
menuItemsToHide
:
MutableList
<
Int
>
enum
class
ViewType
(
val
viewType
:
Int
)
{
enum
class
ViewType
(
val
viewType
:
Int
)
{
...
...
app/src/main/java/chat/rocket/android/chatroom/uimodel/ColorAttachmentUiModel.kt
View file @
7e9682d9
...
@@ -17,7 +17,9 @@ data class ColorAttachmentUiModel(
...
@@ -17,7 +17,9 @@ data class ColorAttachmentUiModel(
override
var
preview
:
Message
?
=
null
,
override
var
preview
:
Message
?
=
null
,
override
var
isTemporary
:
Boolean
=
false
,
override
var
isTemporary
:
Boolean
=
false
,
override
var
unread
:
Boolean
?,
override
var
unread
:
Boolean
?,
override
var
menuItemsToHide
:
MutableList
<
Int
>
=
mutableListOf
()
override
var
menuItemsToHide
:
MutableList
<
Int
>
=
mutableListOf
(),
override
var
currentDayMarkerText
:
String
,
override
var
showDayMarker
:
Boolean
)
:
BaseAttachmentUiModel
<
ColorAttachment
>
{
)
:
BaseAttachmentUiModel
<
ColorAttachment
>
{
override
val
viewType
:
Int
override
val
viewType
:
Int
get
()
=
BaseUiModel
.
ViewType
.
COLOR_ATTACHMENT
.
viewType
get
()
=
BaseUiModel
.
ViewType
.
COLOR_ATTACHMENT
.
viewType
...
...
app/src/main/java/chat/rocket/android/chatroom/uimodel/GenericFileAttachmentUiModel.kt
View file @
7e9682d9
...
@@ -16,7 +16,9 @@ data class GenericFileAttachmentUiModel(
...
@@ -16,7 +16,9 @@ data class GenericFileAttachmentUiModel(
override
var
preview
:
Message
?
=
null
,
override
var
preview
:
Message
?
=
null
,
override
var
isTemporary
:
Boolean
=
false
,
override
var
isTemporary
:
Boolean
=
false
,
override
var
unread
:
Boolean
?
=
null
,
override
var
unread
:
Boolean
?
=
null
,
override
var
menuItemsToHide
:
MutableList
<
Int
>
=
mutableListOf
()
override
var
menuItemsToHide
:
MutableList
<
Int
>
=
mutableListOf
(),
override
var
currentDayMarkerText
:
String
,
override
var
showDayMarker
:
Boolean
)
:
BaseFileAttachmentUiModel
<
GenericFileAttachment
>
{
)
:
BaseFileAttachmentUiModel
<
GenericFileAttachment
>
{
override
val
viewType
:
Int
override
val
viewType
:
Int
get
()
=
BaseUiModel
.
ViewType
.
GENERIC_FILE_ATTACHMENT
.
viewType
get
()
=
BaseUiModel
.
ViewType
.
GENERIC_FILE_ATTACHMENT
.
viewType
...
...
app/src/main/java/chat/rocket/android/chatroom/uimodel/ImageAttachmentUiModel.kt
View file @
7e9682d9
...
@@ -18,7 +18,9 @@ data class ImageAttachmentUiModel(
...
@@ -18,7 +18,9 @@ data class ImageAttachmentUiModel(
override
var
preview
:
Message
?
=
null
,
override
var
preview
:
Message
?
=
null
,
override
var
isTemporary
:
Boolean
=
false
,
override
var
isTemporary
:
Boolean
=
false
,
override
var
unread
:
Boolean
?
=
null
,
override
var
unread
:
Boolean
?
=
null
,
override
var
menuItemsToHide
:
MutableList
<
Int
>
=
mutableListOf
()
override
var
menuItemsToHide
:
MutableList
<
Int
>
=
mutableListOf
(),
override
var
currentDayMarkerText
:
String
,
override
var
showDayMarker
:
Boolean
)
:
BaseFileAttachmentUiModel
<
ImageAttachment
>
{
)
:
BaseFileAttachmentUiModel
<
ImageAttachment
>
{
override
val
viewType
:
Int
override
val
viewType
:
Int
get
()
=
BaseUiModel
.
ViewType
.
IMAGE_ATTACHMENT
.
viewType
get
()
=
BaseUiModel
.
ViewType
.
IMAGE_ATTACHMENT
.
viewType
...
...
app/src/main/java/chat/rocket/android/chatroom/uimodel/MessageAttachmentUiModel.kt
View file @
7e9682d9
...
@@ -17,7 +17,9 @@ data class MessageAttachmentUiModel(
...
@@ -17,7 +17,9 @@ data class MessageAttachmentUiModel(
override
var
preview
:
Message
?
=
null
,
override
var
preview
:
Message
?
=
null
,
override
var
isTemporary
:
Boolean
=
false
,
override
var
isTemporary
:
Boolean
=
false
,
override
var
unread
:
Boolean
?
=
null
,
override
var
unread
:
Boolean
?
=
null
,
override
var
menuItemsToHide
:
MutableList
<
Int
>
=
mutableListOf
()
override
var
menuItemsToHide
:
MutableList
<
Int
>
=
mutableListOf
(),
override
var
currentDayMarkerText
:
String
,
override
var
showDayMarker
:
Boolean
)
:
BaseUiModel
<
Message
>
{
)
:
BaseUiModel
<
Message
>
{
override
val
viewType
:
Int
override
val
viewType
:
Int
get
()
=
BaseUiModel
.
ViewType
.
MESSAGE_ATTACHMENT
.
viewType
get
()
=
BaseUiModel
.
ViewType
.
MESSAGE_ATTACHMENT
.
viewType
...
...
app/src/main/java/chat/rocket/android/chatroom/uimodel/MessageReplyUiModel.kt
View file @
7e9682d9
...
@@ -13,7 +13,9 @@ data class MessageReplyUiModel(
...
@@ -13,7 +13,9 @@ data class MessageReplyUiModel(
override
var
isTemporary
:
Boolean
=
false
,
override
var
isTemporary
:
Boolean
=
false
,
override
val
message
:
Message
,
override
val
message
:
Message
,
override
var
unread
:
Boolean
?
=
null
,
override
var
unread
:
Boolean
?
=
null
,
override
var
menuItemsToHide
:
MutableList
<
Int
>
=
mutableListOf
()
override
var
menuItemsToHide
:
MutableList
<
Int
>
=
mutableListOf
(),
override
var
currentDayMarkerText
:
String
,
override
var
showDayMarker
:
Boolean
)
:
BaseUiModel
<
MessageReply
>
{
)
:
BaseUiModel
<
MessageReply
>
{
override
val
viewType
:
Int
override
val
viewType
:
Int
get
()
=
BaseUiModel
.
ViewType
.
MESSAGE_REPLY
.
viewType
get
()
=
BaseUiModel
.
ViewType
.
MESSAGE_REPLY
.
viewType
...
...
app/src/main/java/chat/rocket/android/chatroom/uimodel/MessageUiModel.kt
View file @
7e9682d9
...
@@ -12,6 +12,8 @@ data class MessageUiModel(
...
@@ -12,6 +12,8 @@ data class MessageUiModel(
override
val
senderName
:
CharSequence
,
override
val
senderName
:
CharSequence
,
override
val
content
:
CharSequence
,
override
val
content
:
CharSequence
,
override
val
isPinned
:
Boolean
,
override
val
isPinned
:
Boolean
,
override
var
currentDayMarkerText
:
String
,
override
var
showDayMarker
:
Boolean
,
override
var
reactions
:
List
<
ReactionUiModel
>,
override
var
reactions
:
List
<
ReactionUiModel
>,
override
var
nextDownStreamMessage
:
BaseUiModel
<*>?
=
null
,
override
var
nextDownStreamMessage
:
BaseUiModel
<*>?
=
null
,
override
var
preview
:
Message
?
=
null
,
override
var
preview
:
Message
?
=
null
,
...
...
app/src/main/java/chat/rocket/android/chatroom/uimodel/UiModelMapper.kt
View file @
7e9682d9
...
@@ -265,6 +265,10 @@ class UiModelMapper @Inject constructor(
...
@@ -265,6 +265,10 @@ class UiModelMapper @Inject constructor(
val
roomName
=
val
roomName
=
if
(
settings
.
useRealName
()
&&
name
!=
null
)
name
else
message
.
sender
?.
username
?:
""
if
(
settings
.
useRealName
()
&&
name
!=
null
)
name
else
message
.
sender
?.
username
?:
""
val
permalink
=
messageHelper
.
createPermalink
(
message
,
chatRoom
)
val
permalink
=
messageHelper
.
createPermalink
(
message
,
chatRoom
)
val
localDateTime
=
DateTimeHelper
.
getLocalDateTime
(
message
.
timestamp
)
val
dayMarkerText
=
DateTimeHelper
.
getFormattedDateForMessages
(
localDateTime
,
context
)
return
MessageReplyUiModel
(
return
MessageReplyUiModel
(
messageId
=
message
.
id
,
messageId
=
message
.
id
,
isTemporary
=
false
,
isTemporary
=
false
,
...
@@ -273,7 +277,9 @@ class UiModelMapper @Inject constructor(
...
@@ -273,7 +277,9 @@ class UiModelMapper @Inject constructor(
preview
=
mapMessagePreview
(
message
),
preview
=
mapMessagePreview
(
message
),
rawData
=
MessageReply
(
roomName
=
roomName
,
permalink
=
permalink
),
rawData
=
MessageReply
(
roomName
=
roomName
,
permalink
=
permalink
),
nextDownStreamMessage
=
null
,
nextDownStreamMessage
=
null
,
unread
=
message
.
unread
unread
=
message
.
unread
,
currentDayMarkerText
=
dayMarkerText
,
showDayMarker
=
false
)
)
}
}
...
@@ -285,8 +291,12 @@ class UiModelMapper @Inject constructor(
...
@@ -285,8 +291,12 @@ class UiModelMapper @Inject constructor(
val
title
=
url
.
meta
?.
title
val
title
=
url
.
meta
?.
title
val
description
=
url
.
meta
?.
description
val
description
=
url
.
meta
?.
description
val
localDateTime
=
DateTimeHelper
.
getLocalDateTime
(
message
.
timestamp
)
val
dayMarkerText
=
DateTimeHelper
.
getFormattedDateForMessages
(
localDateTime
,
context
)
return
UrlPreviewUiModel
(
message
,
url
,
message
.
id
,
title
,
hostname
,
description
,
thumb
,
return
UrlPreviewUiModel
(
message
,
url
,
message
.
id
,
title
,
hostname
,
description
,
thumb
,
getReactions
(
message
),
preview
=
message
.
copy
(
message
=
url
.
url
),
unread
=
message
.
unread
)
getReactions
(
message
),
preview
=
message
.
copy
(
message
=
url
.
url
),
unread
=
message
.
unread
,
showDayMarker
=
false
,
currentDayMarkerText
=
dayMarkerText
)
}
}
private
fun
mapAttachment
(
message
:
Message
,
attachment
:
Attachment
):
BaseUiModel
<
*
>?
{
private
fun
mapAttachment
(
message
:
Message
,
attachment
:
Attachment
):
BaseUiModel
<
*
>?
{
...
@@ -304,10 +314,14 @@ class UiModelMapper @Inject constructor(
...
@@ -304,10 +314,14 @@ class UiModelMapper @Inject constructor(
val
content
=
stripMessageQuotes
(
message
)
val
content
=
stripMessageQuotes
(
message
)
val
id
=
attachmentId
(
message
,
attachment
)
val
id
=
attachmentId
(
message
,
attachment
)
val
localDateTime
=
DateTimeHelper
.
getLocalDateTime
(
message
.
timestamp
)
val
dayMarkerText
=
DateTimeHelper
.
getFormattedDateForMessages
(
localDateTime
,
context
)
ColorAttachmentUiModel
(
attachmentUrl
=
url
,
id
=
id
,
color
=
color
.
color
,
ColorAttachmentUiModel
(
attachmentUrl
=
url
,
id
=
id
,
color
=
color
.
color
,
text
=
text
,
message
=
message
,
rawData
=
attachment
,
text
=
text
,
message
=
message
,
rawData
=
attachment
,
messageId
=
message
.
id
,
reactions
=
getReactions
(
message
),
messageId
=
message
.
id
,
reactions
=
getReactions
(
message
),
preview
=
message
.
copy
(
message
=
content
.
message
),
unread
=
message
.
unread
)
preview
=
message
.
copy
(
message
=
content
.
message
),
unread
=
message
.
unread
,
showDayMarker
=
false
,
currentDayMarkerText
=
dayMarkerText
)
}
}
}
}
...
@@ -332,10 +346,14 @@ class UiModelMapper @Inject constructor(
...
@@ -332,10 +346,14 @@ class UiModelMapper @Inject constructor(
}
}
val
id
=
attachmentId
(
message
,
attachment
)
val
id
=
attachmentId
(
message
,
attachment
)
val
localDateTime
=
DateTimeHelper
.
getLocalDateTime
(
message
.
timestamp
)
val
dayMarkerText
=
DateTimeHelper
.
getFormattedDateForMessages
(
localDateTime
,
context
)
AuthorAttachmentUiModel
(
attachmentUrl
=
url
,
id
=
id
,
name
=
authorName
,
AuthorAttachmentUiModel
(
attachmentUrl
=
url
,
id
=
id
,
name
=
authorName
,
icon
=
authorIcon
,
fields
=
fieldsText
,
message
=
message
,
rawData
=
attachment
,
icon
=
authorIcon
,
fields
=
fieldsText
,
message
=
message
,
rawData
=
attachment
,
messageId
=
message
.
id
,
reactions
=
getReactions
(
message
),
messageId
=
message
.
id
,
reactions
=
getReactions
(
message
),
preview
=
message
.
copy
(
message
=
content
.
message
),
unread
=
message
.
unread
)
preview
=
message
.
copy
(
message
=
content
.
message
),
unread
=
message
.
unread
,
showDayMarker
=
false
,
currentDayMarkerText
=
dayMarkerText
)
}
}
}
}
...
@@ -349,11 +367,17 @@ class UiModelMapper @Inject constructor(
...
@@ -349,11 +367,17 @@ class UiModelMapper @Inject constructor(
is
GenericFileAttachment
->
context
.
getString
(
R
.
string
.
msg_preview_file
)
is
GenericFileAttachment
->
context
.
getString
(
R
.
string
.
msg_preview_file
)
else
->
attachment
.
text
?:
""
else
->
attachment
.
text
?:
""
}
}
val
localDateTime
=
DateTimeHelper
.
getLocalDateTime
(
message
.
timestamp
)
val
dayMarkerText
=
DateTimeHelper
.
getFormattedDateForMessages
(
localDateTime
,
context
)
val
content
=
stripMessageQuotes
(
message
)
val
content
=
stripMessageQuotes
(
message
)
return
MessageAttachmentUiModel
(
message
=
content
,
rawData
=
message
,
return
MessageAttachmentUiModel
(
message
=
content
,
rawData
=
message
,
messageId
=
message
.
id
,
time
=
time
,
senderName
=
attachmentAuthor
,
messageId
=
message
.
id
,
time
=
time
,
senderName
=
attachmentAuthor
,
content
=
attachmentText
,
isPinned
=
message
.
pinned
,
reactions
=
getReactions
(
message
),
content
=
attachmentText
,
isPinned
=
message
.
pinned
,
reactions
=
getReactions
(
message
),
preview
=
message
.
copy
(
message
=
content
.
message
),
unread
=
message
.
unread
)
preview
=
message
.
copy
(
message
=
content
.
message
),
unread
=
message
.
unread
,
currentDayMarkerText
=
dayMarkerText
,
showDayMarker
=
false
)
}
}
private
fun
mapFileAttachment
(
message
:
Message
,
attachment
:
FileAttachment
):
BaseUiModel
<
*
>?
{
private
fun
mapFileAttachment
(
message
:
Message
,
attachment
:
FileAttachment
):
BaseUiModel
<
*
>?
{
...
@@ -362,19 +386,27 @@ class UiModelMapper @Inject constructor(
...
@@ -362,19 +386,27 @@ class UiModelMapper @Inject constructor(
val
attachmentText
=
attachmentText
(
attachment
)
val
attachmentText
=
attachmentText
(
attachment
)
val
attachmentDescription
=
attachmentDescription
(
attachment
)
val
attachmentDescription
=
attachmentDescription
(
attachment
)
val
id
=
attachmentId
(
message
,
attachment
)
val
id
=
attachmentId
(
message
,
attachment
)
val
localDateTime
=
DateTimeHelper
.
getLocalDateTime
(
message
.
timestamp
)
val
dayMarkerText
=
DateTimeHelper
.
getFormattedDateForMessages
(
localDateTime
,
context
)
return
when
(
attachment
)
{
return
when
(
attachment
)
{
is
ImageAttachment
->
ImageAttachmentUiModel
(
message
,
attachment
,
message
.
id
,
is
ImageAttachment
->
ImageAttachmentUiModel
(
message
,
attachment
,
message
.
id
,
attachmentUrl
,
attachmentTitle
,
attachmentText
,
attachmentDescription
,
id
,
getReactions
(
message
),
attachmentUrl
,
attachmentTitle
,
attachmentText
,
attachmentDescription
,
id
,
getReactions
(
message
),
preview
=
message
.
copy
(
message
=
context
.
getString
(
R
.
string
.
msg_preview_photo
)),
unread
=
message
.
unread
)
preview
=
message
.
copy
(
message
=
context
.
getString
(
R
.
string
.
msg_preview_photo
)),
unread
=
message
.
unread
,
showDayMarker
=
false
,
currentDayMarkerText
=
dayMarkerText
)
is
VideoAttachment
->
VideoAttachmentUiModel
(
message
,
attachment
,
message
.
id
,
is
VideoAttachment
->
VideoAttachmentUiModel
(
message
,
attachment
,
message
.
id
,
attachmentUrl
,
attachmentTitle
,
id
,
getReactions
(
message
),
attachmentUrl
,
attachmentTitle
,
id
,
getReactions
(
message
),
preview
=
message
.
copy
(
message
=
context
.
getString
(
R
.
string
.
msg_preview_video
)),
unread
=
message
.
unread
)
preview
=
message
.
copy
(
message
=
context
.
getString
(
R
.
string
.
msg_preview_video
)),
unread
=
message
.
unread
,
showDayMarker
=
false
,
currentDayMarkerText
=
dayMarkerText
)
is
AudioAttachment
->
AudioAttachmentUiModel
(
message
,
attachment
,
message
.
id
,
is
AudioAttachment
->
AudioAttachmentUiModel
(
message
,
attachment
,
message
.
id
,
attachmentUrl
,
attachmentTitle
,
id
,
getReactions
(
message
),
attachmentUrl
,
attachmentTitle
,
id
,
getReactions
(
message
),
preview
=
message
.
copy
(
message
=
context
.
getString
(
R
.
string
.
msg_preview_audio
)),
unread
=
message
.
unread
)
preview
=
message
.
copy
(
message
=
context
.
getString
(
R
.
string
.
msg_preview_audio
)),
unread
=
message
.
unread
,
showDayMarker
=
false
,
currentDayMarkerText
=
dayMarkerText
)
is
GenericFileAttachment
->
GenericFileAttachmentUiModel
(
message
,
attachment
,
is
GenericFileAttachment
->
GenericFileAttachmentUiModel
(
message
,
attachment
,
message
.
id
,
attachmentUrl
,
attachmentTitle
,
id
,
getReactions
(
message
),
message
.
id
,
attachmentUrl
,
attachmentTitle
,
id
,
getReactions
(
message
),
preview
=
message
.
copy
(
message
=
context
.
getString
(
R
.
string
.
msg_preview_file
)),
unread
=
message
.
unread
)
preview
=
message
.
copy
(
message
=
context
.
getString
(
R
.
string
.
msg_preview_file
)),
unread
=
message
.
unread
,
showDayMarker
=
false
,
currentDayMarkerText
=
dayMarkerText
)
else
->
null
else
->
null
}
}
}
}
...
@@ -434,11 +466,15 @@ class UiModelMapper @Inject constructor(
...
@@ -434,11 +466,15 @@ class UiModelMapper @Inject constructor(
null
null
}
}
val
localDateTime
=
DateTimeHelper
.
getLocalDateTime
(
message
.
timestamp
)
val
dayMarkerText
=
DateTimeHelper
.
getFormattedDateForMessages
(
localDateTime
,
context
)
val
content
=
getContent
(
stripMessageQuotes
(
message
))
val
content
=
getContent
(
stripMessageQuotes
(
message
))
MessageUiModel
(
message
=
stripMessageQuotes
(
message
),
rawData
=
message
,
MessageUiModel
(
message
=
stripMessageQuotes
(
message
),
rawData
=
message
,
messageId
=
message
.
id
,
avatar
=
avatar
!!
,
time
=
time
,
senderName
=
sender
,
messageId
=
message
.
id
,
avatar
=
avatar
!!
,
time
=
time
,
senderName
=
sender
,
content
=
content
,
isPinned
=
message
.
pinned
,
reactions
=
getReactions
(
message
),
content
=
content
,
isPinned
=
message
.
pinned
,
currentDayMarkerText
=
dayMarkerText
,
isFirstUnread
=
false
,
preview
=
preview
,
isTemporary
=
isTemp
,
unread
=
unread
)
showDayMarker
=
false
,
reactions
=
getReactions
(
message
),
isFirstUnread
=
false
,
preview
=
preview
,
isTemporary
=
isTemp
,
unread
=
unread
)
}
}
private
fun
mapMessagePreview
(
message
:
Message
):
Message
{
private
fun
mapMessagePreview
(
message
:
Message
):
Message
{
...
...
app/src/main/java/chat/rocket/android/chatroom/uimodel/UrlPreviewUiModel.kt
View file @
7e9682d9
...
@@ -17,7 +17,9 @@ data class UrlPreviewUiModel(
...
@@ -17,7 +17,9 @@ data class UrlPreviewUiModel(
override
var
preview
:
Message
?
=
null
,
override
var
preview
:
Message
?
=
null
,
override
var
isTemporary
:
Boolean
=
false
,
override
var
isTemporary
:
Boolean
=
false
,
override
var
unread
:
Boolean
?
=
null
,
override
var
unread
:
Boolean
?
=
null
,
override
var
menuItemsToHide
:
MutableList
<
Int
>
=
mutableListOf
()
override
var
menuItemsToHide
:
MutableList
<
Int
>
=
mutableListOf
(),
override
var
currentDayMarkerText
:
String
,
override
var
showDayMarker
:
Boolean
)
:
BaseUiModel
<
Url
>
{
)
:
BaseUiModel
<
Url
>
{
override
val
viewType
:
Int
override
val
viewType
:
Int
get
()
=
BaseUiModel
.
ViewType
.
URL_PREVIEW
.
viewType
get
()
=
BaseUiModel
.
ViewType
.
URL_PREVIEW
.
viewType
...
...
app/src/main/java/chat/rocket/android/chatroom/uimodel/VideoAttachmentUiModel.kt
View file @
7e9682d9
...
@@ -16,7 +16,9 @@ data class VideoAttachmentUiModel(
...
@@ -16,7 +16,9 @@ data class VideoAttachmentUiModel(
override
var
preview
:
Message
?
=
null
,
override
var
preview
:
Message
?
=
null
,
override
var
isTemporary
:
Boolean
=
false
,
override
var
isTemporary
:
Boolean
=
false
,
override
var
unread
:
Boolean
?
=
null
,
override
var
unread
:
Boolean
?
=
null
,
override
var
menuItemsToHide
:
MutableList
<
Int
>
=
mutableListOf
()
override
var
menuItemsToHide
:
MutableList
<
Int
>
=
mutableListOf
(),
override
var
currentDayMarkerText
:
String
,
override
var
showDayMarker
:
Boolean
)
:
BaseFileAttachmentUiModel
<
VideoAttachment
>
{
)
:
BaseFileAttachmentUiModel
<
VideoAttachment
>
{
override
val
viewType
:
Int
override
val
viewType
:
Int
get
()
=
BaseUiModel
.
ViewType
.
VIDEO_ATTACHMENT
.
viewType
get
()
=
BaseUiModel
.
ViewType
.
VIDEO_ATTACHMENT
.
viewType
...
...
app/src/main/res/layout/activity_add_members.xml
View file @
7e9682d9
...
@@ -9,6 +9,8 @@
...
@@ -9,6 +9,8 @@
layout=
"@layout/layout_toolbar"
layout=
"@layout/layout_toolbar"
android:layout_width=
"match_parent"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
/>
app:layout_constraintTop_toTopOf=
"parent"
/>
<androidx.constraintlayout.widget.ConstraintLayout
<androidx.constraintlayout.widget.ConstraintLayout
...
@@ -51,9 +53,11 @@
...
@@ -51,9 +53,11 @@
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:backgroundTint=
"@android:color/transparent"
android:backgroundTint=
"@android:color/transparent"
android:hint=
"@string/msg_search"
android:hint=
"@string/msg_search"
android:paddingBottom=
"8dp"
android:paddingEnd=
"8dp"
android:paddingStart=
"8dp"
android:paddingStart=
"8dp"
android:paddingEnd=
"8dp"
android:paddingBottom=
"8dp"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toBottomOf=
"@id/members_chips"
/>
app:layout_constraintTop_toBottomOf=
"@id/members_chips"
/>
<View
<View
...
@@ -61,6 +65,8 @@
...
@@ -61,6 +65,8 @@
android:layout_width=
"match_parent"
android:layout_width=
"match_parent"
android:layout_height=
"0.2dp"
android:layout_height=
"0.2dp"
android:background=
"@color/colorDividerMessageComposer"
android:background=
"@color/colorDividerMessageComposer"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toBottomOf=
"@id/text_search_member"
/>
app:layout_constraintTop_toBottomOf=
"@id/text_search_member"
/>
<androidx.recyclerview.widget.RecyclerView
<androidx.recyclerview.widget.RecyclerView
...
@@ -69,6 +75,8 @@
...
@@ -69,6 +75,8 @@
android:layout_height=
"0dp"
android:layout_height=
"0dp"
android:scrollbars=
"vertical"
android:scrollbars=
"vertical"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toBottomOf=
"@id/separator_1"
/>
app:layout_constraintTop_toBottomOf=
"@id/separator_1"
/>
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
app/src/main/res/layout/avatar_profile.xml
View file @
7e9682d9
...
@@ -10,8 +10,10 @@
...
@@ -10,8 +10,10 @@
android:layout_width=
"120dp"
android:layout_width=
"120dp"
android:layout_height=
"120dp"
android:layout_height=
"120dp"
android:layout_centerHorizontal=
"true"
android:layout_centerHorizontal=
"true"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintLeft_toLeftOf=
"parent"
app:layout_constraintLeft_toLeftOf=
"parent"
app:layout_constraintRight_toRightOf=
"parent"
app:layout_constraintRight_toRightOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
app:roundedCornerRadius=
"2dp"
/>
app:roundedCornerRadius=
"2dp"
/>
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
app/src/main/res/layout/fragment_authentication_log_in.xml
View file @
7e9682d9
...
@@ -59,9 +59,9 @@
...
@@ -59,9 +59,9 @@
<Button
<Button
android:id=
"@+id/button_cas"
android:id=
"@+id/button_cas"
style=
"@style/Authentication.Button"
style=
"@style/Authentication.Button"
android:layout_marginEnd=
"@dimen/screen_edge_left_and_right_margins"
android:layout_marginStart=
"@dimen/screen_edge_left_and_right_margins"
android:layout_marginStart=
"@dimen/screen_edge_left_and_right_margins"
android:layout_marginTop=
"16dp"
android:layout_marginTop=
"16dp"
android:layout_marginEnd=
"@dimen/screen_edge_left_and_right_margins"
android:text=
"@string/action_login_or_sign_up"
android:text=
"@string/action_login_or_sign_up"
android:visibility=
"gone"
android:visibility=
"gone"
app:layout_constraintLeft_toLeftOf=
"parent"
app:layout_constraintLeft_toLeftOf=
"parent"
...
@@ -73,9 +73,9 @@
...
@@ -73,9 +73,9 @@
android:id=
"@+id/text_new_to_rocket_chat"
android:id=
"@+id/text_new_to_rocket_chat"
android:layout_width=
"wrap_content"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginEnd=
"@dimen/screen_edge_left_and_right_margins"
android:layout_marginStart=
"@dimen/screen_edge_left_and_right_margins"
android:layout_marginStart=
"@dimen/screen_edge_left_and_right_margins"
android:layout_marginTop=
"16dp"
android:layout_marginTop=
"16dp"
android:layout_marginEnd=
"@dimen/screen_edge_left_and_right_margins"
android:gravity=
"center"
android:gravity=
"center"
android:textColorLink=
"@color/colorAccent"
android:textColorLink=
"@color/colorAccent"
android:visibility=
"gone"
android:visibility=
"gone"
...
@@ -88,9 +88,9 @@
...
@@ -88,9 +88,9 @@
android:id=
"@+id/text_forgot_your_password"
android:id=
"@+id/text_forgot_your_password"
android:layout_width=
"wrap_content"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginEnd=
"@dimen/screen_edge_left_and_right_margins"
android:layout_marginStart=
"@dimen/screen_edge_left_and_right_margins"
android:layout_marginStart=
"@dimen/screen_edge_left_and_right_margins"
android:layout_marginTop=
"8dp"
android:layout_marginTop=
"8dp"
android:layout_marginEnd=
"@dimen/screen_edge_left_and_right_margins"
android:gravity=
"center"
android:gravity=
"center"
android:textColorLink=
"@color/colorAccent"
android:textColorLink=
"@color/colorAccent"
android:visibility=
"gone"
android:visibility=
"gone"
...
@@ -115,14 +115,14 @@
...
@@ -115,14 +115,14 @@
android:id=
"@+id/social_accounts_container"
android:id=
"@+id/social_accounts_container"
android:layout_width=
"match_parent"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginEnd=
"@dimen/screen_edge_left_and_right_margins"
android:layout_marginStart=
"@dimen/screen_edge_left_and_right_margins"
android:layout_marginStart=
"@dimen/screen_edge_left_and_right_margins"
android:layout_marginTop=
"20dp"
android:layout_marginTop=
"20dp"
android:layout_marginEnd=
"@dimen/screen_edge_left_and_right_margins"
android:background=
"@color/colorPrimaryDark"
android:background=
"@color/colorPrimaryDark"
android:gravity=
"center"
android:gravity=
"center"
android:orientation=
"vertical"
android:orientation=
"vertical"
android:paddingBottom=
"32dp"
android:paddingTop=
"@dimen/screen_edge_left_and_right_margins"
android:paddingTop=
"@dimen/screen_edge_left_and_right_margins"
android:paddingBottom=
"32dp"
android:visibility=
"gone"
android:visibility=
"gone"
app:layout_constraintLeft_toLeftOf=
"parent"
app:layout_constraintLeft_toLeftOf=
"parent"
app:layout_constraintRight_toRightOf=
"parent"
app:layout_constraintRight_toRightOf=
"parent"
...
@@ -242,7 +242,9 @@
...
@@ -242,7 +242,9 @@
style=
"@style/Authentication.Button"
style=
"@style/Authentication.Button"
android:text=
"@string/title_log_in"
android:text=
"@string/title_log_in"
android:visibility=
"gone"
android:visibility=
"gone"
app:layout_constraintBottom_toBottomOf=
"parent"
/>
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
/>
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
</ScrollView>
</ScrollView>
\ No newline at end of file
app/src/main/res/layout/fragment_chat_room.xml
View file @
7e9682d9
...
@@ -12,9 +12,9 @@
...
@@ -12,9 +12,9 @@
android:layout_width=
"0dp"
android:layout_width=
"0dp"
android:layout_height=
"0dp"
android:layout_height=
"0dp"
app:layout_constraintBottom_toTopOf=
"@id/text_typing_status"
app:layout_constraintBottom_toTopOf=
"@id/text_typing_status"
app:layout_constraintTop_toBottomOf=
"@+id/text_connection_status"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
>
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toBottomOf=
"@+id/text_connection_status"
>
<include
<include
android:id=
"@+id/layout_message_list"
android:id=
"@+id/layout_message_list"
...
@@ -68,25 +68,29 @@
...
@@ -68,25 +68,29 @@
android:id=
"@+id/empty_chat_view"
android:id=
"@+id/empty_chat_view"
android:layout_width=
"wrap_content"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
app:constraint_referenced_ids=
"image_chat_icon, text_chat_title, text_chat_description"
android:visibility=
"gone"
android:visibility=
"gone"
app:constraint_referenced_ids=
"image_chat_icon, text_chat_title, text_chat_description"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
tools:visibility=
"visible"
/>
tools:visibility=
"visible"
/>
<chat.rocket.android.widget.autocompletion.ui.SuggestionsView
<chat.rocket.android.widget.autocompletion.ui.SuggestionsView
android:id=
"@+id/suggestions_view"
android:id=
"@+id/suggestions_view"
android:layout_width=
"
match_parent
"
android:layout_width=
"
0dp
"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:background=
"@color/suggestion_background_color"
android:background=
"@color/suggestion_background_color"
app:layout_constraintBottom_toTopOf=
"@id/layout_message_composer"
/>
app:layout_constraintBottom_toTopOf=
"@id/layout_message_composer"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
/>
<TextView
<TextView
android:id=
"@+id/text_typing_status"
android:id=
"@+id/text_typing_status"
android:layout_width=
"match_parent"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginBottom=
"5dp"
android:layout_marginEnd=
"16dp"
android:layout_marginStart=
"16dp"
android:layout_marginStart=
"16dp"
android:layout_marginTop=
"16dp"
android:layout_marginTop=
"16dp"
android:layout_marginEnd=
"16dp"
android:layout_marginBottom=
"5dp"
android:maxLines=
"2"
android:maxLines=
"2"
android:visibility=
"gone"
android:visibility=
"gone"
app:layout_constraintBottom_toTopOf=
"@id/layout_message_composer"
app:layout_constraintBottom_toTopOf=
"@id/layout_message_composer"
...
@@ -95,30 +99,37 @@
...
@@ -95,30 +99,37 @@
<include
<include
android:id=
"@+id/layout_message_composer"
android:id=
"@+id/layout_message_composer"
layout=
"@layout/message_composer"
layout=
"@layout/message_composer"
android:layout_width=
"
match_parent
"
android:layout_width=
"
0dp
"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
app:layout_constraintBottom_toBottomOf=
"parent"
/>
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
/>
<View
<View
android:id=
"@+id/view_dim"
android:id=
"@+id/view_dim"
android:layout_width=
"
match_parent
"
android:layout_width=
"
0dp
"
android:layout_height=
"
match_parent
"
android:layout_height=
"
0dp
"
android:background=
"@color/colorDim"
android:background=
"@color/colorDim"
android:visibility=
"gone"
android:visibility=
"gone"
app:layout_constraintBottom_toTopOf=
"@id/layout_message_composer"
/>
app:layout_constraintBottom_toTopOf=
"@id/layout_message_composer"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
/>
<include
<include
android:id=
"@+id/layout_message_attachment_options"
android:id=
"@+id/layout_message_attachment_options"
layout=
"@layout/message_attachment_options"
layout=
"@layout/message_attachment_options"
android:layout_width=
"
match_parent
"
android:layout_width=
"
0dp
"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_margin=
"5dp"
android:layout_margin=
"5dp"
android:visibility=
"gone"
android:visibility=
"gone"
app:layout_constraintBottom_toTopOf=
"@id/layout_message_composer"
/>
app:layout_constraintBottom_toTopOf=
"@id/layout_message_composer"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
/>
<TextView
<TextView
android:id=
"@+id/text_connection_status"
android:id=
"@+id/text_connection_status"
android:layout_width=
"
match_parent
"
android:layout_width=
"
0dp
"
android:layout_height=
"32dp"
android:layout_height=
"32dp"
android:alpha=
"0"
android:alpha=
"0"
android:background=
"@color/colorPrimary"
android:background=
"@color/colorPrimary"
...
@@ -127,6 +138,8 @@
...
@@ -127,6 +138,8 @@
android:textAppearance=
"@style/TextAppearance.AppCompat.Body2"
android:textAppearance=
"@style/TextAppearance.AppCompat.Body2"
android:textColor=
"@color/colorWhite"
android:textColor=
"@color/colorWhite"
android:visibility=
"gone"
android:visibility=
"gone"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
tools:alpha=
"1"
tools:alpha=
"1"
tools:text=
"connected"
tools:text=
"connected"
...
...
app/src/main/res/layout/fragment_create_channel.xml
View file @
7e9682d9
...
@@ -95,8 +95,8 @@
...
@@ -95,8 +95,8 @@
android:hint=
"@string/msg_channel_name"
android:hint=
"@string/msg_channel_name"
android:inputType=
"text"
android:inputType=
"text"
android:maxLines=
"1"
android:maxLines=
"1"
android:paddingEnd=
"10dp"
android:paddingStart=
"24dp"
android:paddingStart=
"24dp"
android:paddingEnd=
"10dp"
android:textSize=
"16sp"
android:textSize=
"16sp"
app:layout_constraintBottom_toBottomOf=
"@+id/image_channel_icon"
app:layout_constraintBottom_toBottomOf=
"@+id/image_channel_icon"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
...
@@ -120,8 +120,8 @@
...
@@ -120,8 +120,8 @@
android:hint=
"@string/msg_invite_members"
android:hint=
"@string/msg_invite_members"
android:inputType=
"text"
android:inputType=
"text"
android:maxLines=
"1"
android:maxLines=
"1"
android:paddingEnd=
"10dp"
android:paddingStart=
"24dp"
android:paddingStart=
"24dp"
android:paddingEnd=
"10dp"
android:textSize=
"16sp"
android:textSize=
"16sp"
app:layout_constraintBottom_toBottomOf=
"@+id/image_invite_member"
app:layout_constraintBottom_toBottomOf=
"@+id/image_invite_member"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
...
@@ -130,21 +130,27 @@
...
@@ -130,21 +130,27 @@
<androidx.constraintlayout.widget.ConstraintLayout
<androidx.constraintlayout.widget.ConstraintLayout
android:id=
"@+id/view_member_suggestion"
android:id=
"@+id/view_member_suggestion"
android:layout_width=
"
match_parent
"
android:layout_width=
"
0dp
"
android:layout_height=
"100dp"
android:layout_height=
"100dp"
android:layout_marginEnd=
"12dp"
android:layout_marginStart=
"12dp"
android:layout_marginStart=
"12dp"
android:layout_marginEnd=
"12dp"
android:background=
"@color/colorWhite"
android:background=
"@color/colorWhite"
android:elevation=
"2dp"
android:elevation=
"2dp"
android:orientation=
"vertical"
android:orientation=
"vertical"
android:visibility=
"gone"
android:visibility=
"gone"
app:layout_constraintBottom_toTopOf=
"@+id/text_invite_members"
>
app:layout_constraintBottom_toTopOf=
"@+id/text_invite_members"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
>
<androidx.recyclerview.widget.RecyclerView
<androidx.recyclerview.widget.RecyclerView
android:id=
"@+id/recycler_view"
android:id=
"@+id/recycler_view"
android:layout_width=
"match_parent"
android:layout_width=
"0dp"
android:layout_height=
"match_parent"
android:layout_height=
"0dp"
android:visibility=
"gone"
/>
android:visibility=
"gone"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
/>
<com.wang.avi.AVLoadingIndicatorView
<com.wang.avi.AVLoadingIndicatorView
android:id=
"@+id/view_member_suggestion_loading"
android:id=
"@+id/view_member_suggestion_loading"
...
@@ -173,11 +179,13 @@
...
@@ -173,11 +179,13 @@
<com.google.android.material.chip.ChipGroup
<com.google.android.material.chip.ChipGroup
android:id=
"@+id/chip_group_member"
android:id=
"@+id/chip_group_member"
style=
"@style/Widget.MaterialComponents.Chip.Entry"
style=
"@style/Widget.MaterialComponents.Chip.Entry"
android:layout_width=
"
match_parent
"
android:layout_width=
"
0dp
"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"16dp"
android:layout_marginTop=
"16dp"
android:visibility=
"gone"
android:visibility=
"gone"
app:chipSpacing=
"3dp"
app:chipSpacing=
"3dp"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toBottomOf=
"@+id/text_invite_members"
/>
app:layout_constraintTop_toBottomOf=
"@+id/text_invite_members"
/>
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
app/src/main/res/layout/fragment_favorite_messages.xml
View file @
7e9682d9
...
@@ -8,9 +8,13 @@
...
@@ -8,9 +8,13 @@
<androidx.recyclerview.widget.RecyclerView
<androidx.recyclerview.widget.RecyclerView
android:id=
"@+id/recycler_view"
android:id=
"@+id/recycler_view"
android:layout_width=
"match_parent"
android:layout_width=
"0dp"
android:layout_height=
"match_parent"
android:layout_height=
"0dp"
android:scrollbars=
"vertical"
/>
android:scrollbars=
"vertical"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
/>
<com.wang.avi.AVLoadingIndicatorView
<com.wang.avi.AVLoadingIndicatorView
android:id=
"@+id/view_loading"
android:id=
"@+id/view_loading"
...
@@ -72,6 +76,8 @@
...
@@ -72,6 +76,8 @@
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:visibility=
"gone"
android:visibility=
"gone"
app:constraint_referenced_ids=
"text_no_favorite_messages_description,image_star,text_no_favorite_messages"
app:constraint_referenced_ids=
"text_no_favorite_messages_description,image_star,text_no_favorite_messages"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
tools:visibility=
"visible"
/>
tools:visibility=
"visible"
/>
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
app/src/main/res/layout/fragment_files.xml
View file @
7e9682d9
...
@@ -9,9 +9,13 @@
...
@@ -9,9 +9,13 @@
<androidx.recyclerview.widget.RecyclerView
<androidx.recyclerview.widget.RecyclerView
android:id=
"@+id/recycler_view"
android:id=
"@+id/recycler_view"
android:layout_width=
"match_parent"
android:layout_width=
"0dp"
android:layout_height=
"match_parent"
android:layout_height=
"0dp"
android:scrollbars=
"vertical"
/>
android:scrollbars=
"vertical"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
/>
<com.wang.avi.AVLoadingIndicatorView
<com.wang.avi.AVLoadingIndicatorView
android:id=
"@+id/view_loading"
android:id=
"@+id/view_loading"
...
@@ -68,6 +72,10 @@
...
@@ -68,6 +72,10 @@
android:id=
"@+id/group_no_file"
android:id=
"@+id/group_no_file"
android:layout_width=
"wrap_content"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
android:visibility=
"gone"
android:visibility=
"gone"
app:constraint_referenced_ids=
"image_file,text_no_file,text_all_files_appear_here"
app:constraint_referenced_ids=
"image_file,text_no_file,text_all_files_appear_here"
tools:visibility=
"visible"
/>
tools:visibility=
"visible"
/>
...
...
app/src/main/res/layout/fragment_member_bottom_sheet.xml
View file @
7e9682d9
...
@@ -10,8 +10,11 @@
...
@@ -10,8 +10,11 @@
<com.facebook.drawee.view.SimpleDraweeView
<com.facebook.drawee.view.SimpleDraweeView
android:id=
"@+id/image_bottom_sheet_avatar"
android:id=
"@+id/image_bottom_sheet_avatar"
android:layout_width=
"match_parent"
android:layout_width=
"0dp"
android:layout_height=
"200dp"
/>
android:layout_height=
"200dp"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
/>
<LinearLayout
<LinearLayout
android:id=
"@+id/name_and_username_container"
android:id=
"@+id/name_and_username_container"
...
@@ -19,9 +22,9 @@
...
@@ -19,9 +22,9 @@
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:background=
"@color/colorBackgroundMemberContainer"
android:background=
"@color/colorBackgroundMemberContainer"
android:orientation=
"vertical"
android:orientation=
"vertical"
android:paddingBottom=
"10dp"
android:paddingStart=
"16dp"
android:paddingStart=
"16dp"
android:paddingTop=
"10dp"
android:paddingTop=
"10dp"
android:paddingBottom=
"10dp"
app:layout_constraintBottom_toBottomOf=
"@+id/image_bottom_sheet_avatar"
app:layout_constraintBottom_toBottomOf=
"@+id/image_bottom_sheet_avatar"
app:layout_constraintLeft_toLeftOf=
"parent"
>
app:layout_constraintLeft_toLeftOf=
"parent"
>
...
...
app/src/main/res/layout/fragment_mentions.xml
View file @
7e9682d9
...
@@ -8,9 +8,13 @@
...
@@ -8,9 +8,13 @@
<androidx.recyclerview.widget.RecyclerView
<androidx.recyclerview.widget.RecyclerView
android:id=
"@+id/recycler_view"
android:id=
"@+id/recycler_view"
android:layout_width=
"match_parent"
android:layout_width=
"0dp"
android:layout_height=
"match_parent"
android:layout_height=
"0dp"
android:scrollbars=
"vertical"
/>
android:scrollbars=
"vertical"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
/>
<com.wang.avi.AVLoadingIndicatorView
<com.wang.avi.AVLoadingIndicatorView
android:id=
"@+id/view_loading"
android:id=
"@+id/view_loading"
...
@@ -70,6 +74,10 @@
...
@@ -70,6 +74,10 @@
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:visibility=
"gone"
android:visibility=
"gone"
app:constraint_referenced_ids=
"image_mention,text_no_mention,text_all_mentions_appear_here"
app:constraint_referenced_ids=
"image_mention,text_no_mention,text_all_mentions_appear_here"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
tools:visibility=
"visible"
/>
tools:visibility=
"visible"
/>
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
app/src/main/res/layout/fragment_pinned_messages.xml
View file @
7e9682d9
...
@@ -8,17 +8,21 @@
...
@@ -8,17 +8,21 @@
<androidx.recyclerview.widget.RecyclerView
<androidx.recyclerview.widget.RecyclerView
android:id=
"@+id/recycler_view_pinned"
android:id=
"@+id/recycler_view_pinned"
android:layout_width=
"match_parent"
android:layout_width=
"0dp"
android:layout_height=
"match_parent"
android:layout_height=
"0dp"
android:scrollbars=
"vertical"
/>
android:scrollbars=
"vertical"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
/>
<com.wang.avi.AVLoadingIndicatorView
<com.wang.avi.AVLoadingIndicatorView
android:id=
"@+id/view_loading"
android:id=
"@+id/view_loading"
android:layout_width=
"48dp"
android:layout_width=
"48dp"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_centerInParent=
"true"
android:layout_centerInParent=
"true"
android:layout_marginBottom=
"8dp"
android:layout_marginTop=
"8dp"
android:layout_marginTop=
"8dp"
android:layout_marginBottom=
"8dp"
android:visibility=
"gone"
android:visibility=
"gone"
app:indicatorColor=
"@color/colorBlack"
app:indicatorColor=
"@color/colorBlack"
app:indicatorName=
"BallPulseIndicator"
app:indicatorName=
"BallPulseIndicator"
...
@@ -74,6 +78,8 @@
...
@@ -74,6 +78,8 @@
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:visibility=
"gone"
android:visibility=
"gone"
app:constraint_referenced_ids=
"tv_pin_description,iv_pin_icon,tv_pin_title"
app:constraint_referenced_ids=
"tv_pin_description,iv_pin_icon,tv_pin_title"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
tools:visibility=
"visible"
/>
tools:visibility=
"visible"
/>
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
app/src/main/res/layout/item_color_attachment.xml
View file @
7e9682d9
...
@@ -8,10 +8,10 @@
...
@@ -8,10 +8,10 @@
android:background=
"?android:attr/selectableItemBackground"
android:background=
"?android:attr/selectableItemBackground"
android:clickable=
"true"
android:clickable=
"true"
android:focusable=
"true"
android:focusable=
"true"
android:paddingBottom=
"@dimen/message_item_top_and_bottom_padding"
android:paddingEnd=
"@dimen/screen_edge_left_and_right_padding"
android:paddingStart=
"@dimen/screen_edge_left_and_right_padding"
android:paddingStart=
"@dimen/screen_edge_left_and_right_padding"
android:paddingTop=
"@dimen/message_item_top_and_bottom_padding"
>
android:paddingTop=
"@dimen/message_item_top_and_bottom_padding"
android:paddingEnd=
"@dimen/screen_edge_left_and_right_padding"
android:paddingBottom=
"@dimen/message_item_top_and_bottom_padding"
>
<View
<View
android:id=
"@+id/quote_bar"
android:id=
"@+id/quote_bar"
...
@@ -19,19 +19,20 @@
...
@@ -19,19 +19,20 @@
android:layout_height=
"0dp"
android:layout_height=
"0dp"
android:layout_marginStart=
"56dp"
android:layout_marginStart=
"56dp"
android:background=
"@drawable/quote_vertical_gray_bar"
android:background=
"@drawable/quote_vertical_gray_bar"
app:layout_constraintBottom_toTopOf=
"@id/recycler_view_reactions"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
/>
app:layout_constraintBottom_toTopOf=
"@id/recycler_view_reactions"
/>
<TextView
<TextView
android:id=
"@+id/attachment_text"
android:id=
"@+id/attachment_text"
android:layout_width=
"0dp"
android:layout_width=
"0dp"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginStart=
"8dp"
android:layout_marginStart=
"8dp"
android:textAppearance=
"@style/TextAppearance.AppCompat.Body1"
android:autoLink=
"web"
android:autoLink=
"web"
a
pp:layout_constraintStart_toEndOf=
"@id/quote_bar
"
a
ndroid:textAppearance=
"@style/TextAppearance.AppCompat.Body1
"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toEndOf=
"@id/quote_bar"
app:layout_constraintTop_toTopOf=
"parent"
tools:text=
"#5571 - User profile from SSO must not have password change option"
/>
tools:text=
"#5571 - User profile from SSO must not have password change option"
/>
<include
<include
...
...
app/src/main/res/layout/item_message.xml
View file @
7e9682d9
...
@@ -13,6 +13,47 @@
...
@@ -13,6 +13,47 @@
android:paddingEnd=
"@dimen/screen_edge_left_and_right_padding"
android:paddingEnd=
"@dimen/screen_edge_left_and_right_padding"
android:paddingBottom=
"@dimen/message_item_top_and_bottom_padding"
>
android:paddingBottom=
"@dimen/message_item_top_and_bottom_padding"
>
<LinearLayout
android:id=
"@+id/day_marker_layout"
android:layout_width=
"0dp"
android:layout_height=
"wrap_content"
android:gravity=
"center_vertical"
android:orientation=
"horizontal"
android:paddingBottom=
"8dp"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toBottomOf=
"@+id/new_messages_notif"
>
<View
android:layout_width=
"0px"
android:layout_height=
"1dp"
android:layout_weight=
"1"
android:background=
"@color/colorDivider"
/>
<TextView
android:id=
"@+id/day"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginLeft=
"16dp"
android:layout_marginRight=
"16dp"
android:textAppearance=
"@style/Message.DayMarker"
tools:text=
"Wednesday"
/>
<View
android:layout_width=
"0dp"
android:layout_height=
"1dp"
android:layout_weight=
"1"
android:background=
"@color/colorDivider"
/>
</LinearLayout>
<include
android:id=
"@+id/layout_avatar"
layout=
"@layout/avatar"
android:layout_width=
"40dp"
android:layout_height=
"40dp"
app:layout_constraintLeft_toLeftOf=
"parent"
app:layout_constraintTop_toTopOf=
"@+id/text_sender"
/>
<LinearLayout
<LinearLayout
android:id=
"@+id/new_messages_notif"
android:id=
"@+id/new_messages_notif"
android:layout_width=
"match_parent"
android:layout_width=
"match_parent"
...
@@ -50,7 +91,7 @@
...
@@ -50,7 +91,7 @@
<include
<include
android:id=
"@+id/layout_avatar"
android:id=
"@+id/layout_avatar"
layout=
"@layout/avatar"
layout=
"@layout/avatar"
android:layout_width=
"
40
dp"
android:layout_width=
"
38
dp"
android:layout_height=
"40dp"
android:layout_height=
"40dp"
android:layout_marginTop=
"5dp"
android:layout_marginTop=
"5dp"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
...
@@ -63,8 +104,9 @@
...
@@ -63,8 +104,9 @@
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginStart=
"16dp"
android:layout_marginStart=
"16dp"
app:layout_constraintHorizontal_bias=
"0.5"
app:layout_constraintHorizontal_bias=
"0.5"
app:layout_constraintLeft_toRightOf=
"@+id/layout_avatar"
app:layout_constraintStart_toEndOf=
"@+id/layout_avatar"
app:layout_constraintStart_toEndOf=
"@+id/layout_avatar"
app:layout_constraintTop_toBottomOf=
"@+id/
new_messages_notif
"
app:layout_constraintTop_toBottomOf=
"@+id/
day_marker_layout
"
tools:text=
"Ronald Perkins"
/>
tools:text=
"Ronald Perkins"
/>
<TextView
<TextView
...
...
app/src/main/res/layout/item_message_reply.xml
View file @
7e9682d9
...
@@ -7,24 +7,25 @@
...
@@ -7,24 +7,25 @@
android:background=
"?android:attr/selectableItemBackground"
android:background=
"?android:attr/selectableItemBackground"
android:clickable=
"true"
android:clickable=
"true"
android:focusable=
"true"
android:focusable=
"true"
android:paddingBottom=
"@dimen/message_item_top_and_bottom_padding"
android:paddingEnd=
"@dimen/screen_edge_left_and_right_padding"
android:paddingStart=
"@dimen/screen_edge_left_and_right_padding"
android:paddingStart=
"@dimen/screen_edge_left_and_right_padding"
android:paddingTop=
"@dimen/message_item_top_and_bottom_padding"
>
android:paddingTop=
"@dimen/message_item_top_and_bottom_padding"
android:paddingEnd=
"@dimen/screen_edge_left_and_right_padding"
android:paddingBottom=
"@dimen/message_item_top_and_bottom_padding"
>
<Button
<Button
android:id=
"@+id/button_message_reply"
android:id=
"@+id/button_message_reply"
android:layout_width=
"wrap_content"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginBottom=
"2dp"
android:layout_marginTop=
"5dp"
android:layout_marginStart=
"56dp"
android:layout_marginStart=
"56dp"
android:layout_marginTop=
"5dp"
android:layout_marginBottom=
"2dp"
android:background=
"@drawable/message_reply_button_bg"
android:background=
"@drawable/message_reply_button_bg"
android:text=
"@string/action_msg_reply"
android:text=
"@string/action_msg_reply"
android:textAllCaps=
"false"
android:textAllCaps=
"false"
android:textColor=
"#1D74F5"
android:textColor=
"#1D74F5"
android:textSize=
"14sp"
android:textSize=
"14sp"
app:layout_constraintLeft_toLeftOf=
"parent"
/>
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
/>
<include
<include
layout=
"@layout/layout_reactions"
layout=
"@layout/layout_reactions"
...
...
app/src/main/res/layout/layout_toolbar.xml
View file @
7e9682d9
...
@@ -7,9 +7,12 @@
...
@@ -7,9 +7,12 @@
<androidx.appcompat.widget.Toolbar
<androidx.appcompat.widget.Toolbar
android:id=
"@+id/toolbar"
android:id=
"@+id/toolbar"
android:layout_width=
"
match_parent
"
android:layout_width=
"
0dp
"
android:layout_height=
"@dimen/toolbar_height"
android:layout_height=
"@dimen/toolbar_height"
android:background=
"@color/colorPrimary"
android:background=
"@color/colorPrimary"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_scrollFlags=
"scroll|enterAlways"
app:layout_scrollFlags=
"scroll|enterAlways"
app:popupTheme=
"@style/ThemeOverlay.AppCompat.Light"
app:popupTheme=
"@style/ThemeOverlay.AppCompat.Light"
app:theme=
"@style/ThemeOverlay.AppCompat.Dark.ActionBar"
>
app:theme=
"@style/ThemeOverlay.AppCompat.Dark.ActionBar"
>
...
...
app/src/main/res/layout/message_composer.xml
View file @
7e9682d9
...
@@ -3,8 +3,8 @@
...
@@ -3,8 +3,8 @@
xmlns:app=
"http://schemas.android.com/apk/res-auto"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
android:layout_width=
"match_parent"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:
orientation=
"vertical
"
android:
background=
"@color/default_background
"
android:
background=
"@color/default_background
"
>
android:
orientation=
"vertical
"
>
<androidx.constraintlayout.widget.ConstraintLayout
<androidx.constraintlayout.widget.ConstraintLayout
android:id=
"@+id/composer"
android:id=
"@+id/composer"
...
@@ -13,19 +13,24 @@
...
@@ -13,19 +13,24 @@
<View
<View
android:id=
"@+id/divider"
android:id=
"@+id/divider"
android:layout_width=
"
match_parent
"
android:layout_width=
"
0dp
"
android:layout_height=
"1dp"
android:layout_height=
"1dp"
android:background=
"@color/colorDividerMessageComposer"
/>
android:background=
"@color/colorDividerMessageComposer"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
/>
<TextView
<TextView
android:id=
"@+id/text_room_is_read_only"
android:id=
"@+id/text_room_is_read_only"
android:layout_width=
"
match_parent
"
android:layout_width=
"
0dp
"
android:layout_height=
"45dp"
android:layout_height=
"45dp"
android:background=
"@color/colorWhite"
android:background=
"@color/colorWhite"
android:gravity=
"center"
android:gravity=
"center"
android:text=
"@string/msg_this_room_is_read_only"
android:text=
"@string/msg_this_room_is_read_only"
android:textColor=
"@color/colorBlack"
android:textColor=
"@color/colorBlack"
android:visibility=
"gone"
android:visibility=
"gone"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toBottomOf=
"@+id/divider"
/>
app:layout_constraintTop_toBottomOf=
"@+id/divider"
/>
<Button
<Button
...
@@ -42,13 +47,15 @@
...
@@ -42,13 +47,15 @@
<LinearLayout
<LinearLayout
android:id=
"@+id/input_container"
android:id=
"@+id/input_container"
android:layout_width=
"
match_parent
"
android:layout_width=
"
0dp
"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginEnd=
"10dp"
android:layout_marginStart=
"10dp"
android:layout_marginStart=
"10dp"
android:layout_marginEnd=
"10dp"
android:orientation=
"horizontal"
android:orientation=
"horizontal"
android:paddingBottom=
"10dp"
android:paddingTop=
"10dp"
android:paddingTop=
"10dp"
android:paddingBottom=
"10dp"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toBottomOf=
"@+id/divider"
>
app:layout_constraintTop_toBottomOf=
"@+id/divider"
>
<ImageButton
<ImageButton
...
@@ -70,12 +77,12 @@
...
@@ -70,12 +77,12 @@
android:layout_weight=
"1"
android:layout_weight=
"1"
android:background=
"@android:color/transparent"
android:background=
"@android:color/transparent"
android:hint=
"@string/msg_message"
android:hint=
"@string/msg_message"
android:imeOptions=
"flagNoExtractUi"
android:inputType=
"textCapSentences|textMultiLine"
android:inputType=
"textCapSentences|textMultiLine"
android:lineSpacingExtra=
"4dp"
android:lineSpacingExtra=
"4dp"
android:maxLines=
"4"
android:maxLines=
"4"
android:minHeight=
"24dp"
android:minHeight=
"24dp"
android:scrollbars=
"vertical"
android:scrollbars=
"vertical"
/>
android:imeOptions=
"flagNoExtractUi"
/>
<ImageButton
<ImageButton
android:id=
"@+id/button_show_attachment_options"
android:id=
"@+id/button_show_attachment_options"
...
...
app/src/main/res/layout/message_url_preview.xml
View file @
7e9682d9
...
@@ -6,16 +6,16 @@
...
@@ -6,16 +6,16 @@
android:layout_width=
"match_parent"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:background=
"?android:attr/selectableItemBackground"
android:background=
"?android:attr/selectableItemBackground"
android:padding
End=
"24
dp"
android:padding
Start=
"72
dp"
android:padding
Start=
"72
dp"
>
android:padding
End=
"24
dp"
>
<com.facebook.drawee.view.SimpleDraweeView
<com.facebook.drawee.view.SimpleDraweeView
android:id=
"@+id/image_preview"
android:id=
"@+id/image_preview"
android:layout_width=
"70dp"
android:layout_width=
"70dp"
android:layout_height=
"50dp"
android:layout_height=
"50dp"
app:actualImageScaleType=
"centerCrop"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
/>
app:actualImageScaleType=
"centerCrop"
/>
<TextView
<TextView
android:id=
"@+id/text_host"
android:id=
"@+id/text_host"
...
@@ -23,9 +23,10 @@
...
@@ -23,9 +23,10 @@
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginStart=
"8dp"
android:layout_marginStart=
"8dp"
android:textColor=
"@color/colorSecondaryText"
android:textColor=
"@color/colorSecondaryText"
android:textDirection=
"locale"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toEndOf=
"@+id/image_preview"
app:layout_constraintStart_toEndOf=
"@+id/image_preview"
a
ndroid:textDirection=
"locale
"
a
pp:layout_constraintTop_toTopOf=
"parent
"
tools:text=
"www.uol.com.br"
/>
tools:text=
"www.uol.com.br"
/>
<TextView
<TextView
...
@@ -33,20 +34,20 @@
...
@@ -33,20 +34,20 @@
android:layout_width=
"0dp"
android:layout_width=
"0dp"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:textColor=
"@color/colorAccent"
android:textColor=
"@color/colorAccent"
android:textDirection=
"locale"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toStartOf=
"@+id/text_host"
app:layout_constraintStart_toStartOf=
"@+id/text_host"
app:layout_constraintTop_toBottomOf=
"@id/text_host"
app:layout_constraintTop_toBottomOf=
"@id/text_host"
android:textDirection=
"locale"
tools:text=
"Web page title"
/>
tools:text=
"Web page title"
/>
<TextView
<TextView
android:id=
"@+id/text_description"
android:id=
"@+id/text_description"
android:layout_width=
"0dp"
android:layout_width=
"0dp"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:textDirection=
"locale"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toStartOf=
"@+id/text_host"
app:layout_constraintStart_toStartOf=
"@+id/text_host"
app:layout_constraintTop_toBottomOf=
"@id/text_title"
app:layout_constraintTop_toBottomOf=
"@id/text_title"
android:textDirection=
"locale"
tools:text=
"description"
/>
tools:text=
"description"
/>
<include
<include
...
...
app/src/main/res/layout/nav_header.xml
View file @
7e9682d9
...
@@ -30,30 +30,35 @@
...
@@ -30,30 +30,35 @@
<androidx.constraintlayout.widget.ConstraintLayout
<androidx.constraintlayout.widget.ConstraintLayout
android:id=
"@+id/account_container"
android:id=
"@+id/account_container"
android:layout_width=
"
match_parent
"
android:layout_width=
"
0dp
"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"16dp"
android:layout_marginTop=
"16dp"
android:background=
"?selectableItemBackground"
android:background=
"?selectableItemBackground"
android:elevation=
"2dp"
android:elevation=
"2dp"
android:paddingBottom=
"4dp"
android:paddingEnd=
"12dp"
android:paddingStart=
"12dp"
android:paddingStart=
"12dp"
android:paddingTop=
"4dp"
android:paddingTop=
"4dp"
android:paddingEnd=
"12dp"
android:paddingBottom=
"4dp"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toBottomOf=
"@+id/image_avatar"
>
app:layout_constraintTop_toBottomOf=
"@+id/image_avatar"
>
<ImageView
<ImageView
android:id=
"@+id/image_user_status"
android:id=
"@+id/image_user_status"
android:layout_width=
"12dp"
android:layout_width=
"12dp"
android:layout_height=
"12dp"
android:layout_height=
"12dp"
app:layout_constraintStart_toStartOf=
"parent"
/>
app:layout_constraintBottom_toTopOf=
"@+id/text_user_name"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintEnd_toStartOf=
"@+id/text_user_name"
app:layout_constraintTop_toTopOf=
"parent"
/>
<TextView
<TextView
android:id=
"@+id/text_user_name"
android:id=
"@+id/text_user_name"
style=
"@style/Sender.Name.TextView"
style=
"@style/Sender.Name.TextView"
android:layout_width=
"0dp"
android:layout_width=
"0dp"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginEnd=
"10dp"
android:layout_marginStart=
"10dp"
android:layout_marginStart=
"10dp"
android:layout_marginEnd=
"10dp"
android:textColor=
"@color/colorWhite"
android:textColor=
"@color/colorWhite"
app:layout_constraintBottom_toBottomOf=
"@+id/image_user_status"
app:layout_constraintBottom_toBottomOf=
"@+id/image_user_status"
app:layout_constraintEnd_toStartOf=
"@+id/image_account_expand"
app:layout_constraintEnd_toStartOf=
"@+id/image_account_expand"
...
...
app/src/main/res/layout/suggestion_member_item.xml
View file @
7e9682d9
...
@@ -15,6 +15,9 @@
...
@@ -15,6 +15,9 @@
android:layout_width=
"24dp"
android:layout_width=
"24dp"
android:layout_height=
"24dp"
android:layout_height=
"24dp"
app:roundedCornerRadius=
"3dp"
app:roundedCornerRadius=
"3dp"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
app:layout_constraintBottom_toBottomOf=
"parent"
tools:src=
"@tools:sample/avatars"
/>
tools:src=
"@tools:sample/avatars"
/>
<ImageView
<ImageView
...
...
app/src/main/res/menu/chatrooms.xml
View file @
7e9682d9
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<menu
xmlns:android=
"http://schemas.android.com/apk/res/android"
<menu
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
>
xmlns:app=
"http://schemas.android.com/apk/res-auto"
xmlns:tools=
"http://schemas.android.com/tools"
tools:ignore=
"AppCompatResource"
>
<item
<item
android:id=
"@+id/action_search"
android:id=
"@+id/action_search"
...
...
app/src/main/res/menu/image_actions.xml
View file @
7e9682d9
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<menu
xmlns:android=
"http://schemas.android.com/apk/res/android"
<menu
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
>
xmlns:app=
"http://schemas.android.com/apk/res-auto"
xmlns:tools=
"http://schemas.android.com/tools"
tools:ignore=
"AppCompatResource"
>
<item
<item
android:id=
"@+id/action_save_image"
android:id=
"@+id/action_save_image"
...
...
app/src/main/res/values-es/strings.xml
View file @
7e9682d9
This diff is collapsed.
Click to expand it.
app/src/main/res/values-fr/strings.xml
View file @
7e9682d9
...
@@ -72,6 +72,7 @@
...
@@ -72,6 +72,7 @@
<string
name=
"msg_new_user_agreement"
>
En procédant, vous acceptez notre\n%1$s et %2$s
</string>
<string
name=
"msg_new_user_agreement"
>
En procédant, vous acceptez notre\n%1$s et %2$s
</string>
<string
name=
"msg_2fa_code"
>
Code 2FA
</string>
<string
name=
"msg_2fa_code"
>
Code 2FA
</string>
<string
name=
"msg_yesterday"
>
Hier
</string>
<string
name=
"msg_yesterday"
>
Hier
</string>
<string
name=
"msg_today"
>
Aujourd\'hui
</string>
<string
name=
"msg_message"
>
Message
</string>
<string
name=
"msg_message"
>
Message
</string>
<string
name=
"msg_this_room_is_read_only"
>
Cette salle est seulement de lecture
</string>
<string
name=
"msg_this_room_is_read_only"
>
Cette salle est seulement de lecture
</string>
<string
name=
"msg_invalid_2fa_code"
>
Code 2FA non valide
</string>
<string
name=
"msg_invalid_2fa_code"
>
Code 2FA non valide
</string>
...
@@ -184,6 +185,7 @@
...
@@ -184,6 +185,7 @@
<string
name=
"action_msg_share"
>
Partager
</string>
<string
name=
"action_msg_share"
>
Partager
</string>
<string
name=
"action_title_editing"
>
Modification du message
</string>
<string
name=
"action_title_editing"
>
Modification du message
</string>
<string
name=
"action_msg_add_reaction"
>
Ajouter une réaction
</string>
<string
name=
"action_msg_add_reaction"
>
Ajouter une réaction
</string>
<string
name=
"action_share"
>
Partager
</string>
<!-- Permission messages -->
<!-- Permission messages -->
<string
name=
"permission_editing_not_allowed"
>
L\'édition n\'est pas autorisée
</string>
<string
name=
"permission_editing_not_allowed"
>
L\'édition n\'est pas autorisée
</string>
...
@@ -287,6 +289,7 @@
...
@@ -287,6 +289,7 @@
<string
name=
"header_unknown"
>
Inconnu
</string>
<string
name=
"header_unknown"
>
Inconnu
</string>
<!--Notifications-->
<!--Notifications-->
<string
name=
"share_label"
>
Modifier le message partagé
</string>
<string
name=
"notif_action_reply_hint"
>
RÉPONDRE
</string>
<string
name=
"notif_action_reply_hint"
>
RÉPONDRE
</string>
<string
name=
"notif_error_sending"
>
La réponse a échoué. Veuillez réessayer.
</string>
<string
name=
"notif_error_sending"
>
La réponse a échoué. Veuillez réessayer.
</string>
<string
name=
"notif_success_sending"
>
Message envoyé à %1$s!
</string>
<string
name=
"notif_success_sending"
>
Message envoyé à %1$s!
</string>
...
...
app/src/main/res/values-hi-rIN/strings.xml
View file @
7e9682d9
...
@@ -39,6 +39,7 @@
...
@@ -39,6 +39,7 @@
<string
name=
"action_invisible"
>
अदृश्य
</string>
<string
name=
"action_invisible"
>
अदृश्य
</string>
<string
name=
"action_save_to_gallery"
>
गैलरी में सहेजें
</string>
<string
name=
"action_save_to_gallery"
>
गैलरी में सहेजें
</string>
<string
name=
"action_drawing"
>
चित्रकारी
</string>
<string
name=
"action_drawing"
>
चित्रकारी
</string>
<string
name=
"action_share"
>
शेयर
</string>
<!-- Settings List -->
<!-- Settings List -->
<string-array
name=
"settings_actions"
>
<string-array
name=
"settings_actions"
>
...
@@ -65,6 +66,7 @@
...
@@ -65,6 +66,7 @@
<string
name=
"msg_new_user_agreement"
>
आगे बढ़कर आप हमारे %1$s और %2$s से सहमत हो रहे हैं
</string>
<string
name=
"msg_new_user_agreement"
>
आगे बढ़कर आप हमारे %1$s और %2$s से सहमत हो रहे हैं
</string>
<string
name=
"msg_2fa_code"
>
कोड 2FA
</string>
<string
name=
"msg_2fa_code"
>
कोड 2FA
</string>
<string
name=
"msg_yesterday"
>
कल
</string>
<string
name=
"msg_yesterday"
>
कल
</string>
<string
name=
"msg_today"
>
आज
</string>
<string
name=
"msg_message"
>
संदेश
</string>
<string
name=
"msg_message"
>
संदेश
</string>
<string
name=
"msg_this_room_is_read_only"
>
यह रूम केवल पढ़ने के लिए है
</string>
<string
name=
"msg_this_room_is_read_only"
>
यह रूम केवल पढ़ने के लिए है
</string>
<string
name=
"msg_invalid_2fa_code"
>
अमान्य 2FA कोड
</string>
<string
name=
"msg_invalid_2fa_code"
>
अमान्य 2FA कोड
</string>
...
@@ -123,6 +125,7 @@
...
@@ -123,6 +125,7 @@
<string
name=
"msg_upload_file"
>
फाइल अपलोड करें
</string>
<string
name=
"msg_upload_file"
>
फाइल अपलोड करें
</string>
<string
name=
"msg_file_description"
>
फाइल विवरण
</string>
<string
name=
"msg_file_description"
>
फाइल विवरण
</string>
<string
name=
"msg_send"
>
भेजें
</string>
<string
name=
"msg_send"
>
भेजें
</string>
<string
name=
"msg_sent_attachment"
>
एक अनुलग्नक भेजा
</string>
<string
name=
"msg_delete_message"
>
संदेश को हटाएं
</string>
<string
name=
"msg_delete_message"
>
संदेश को हटाएं
</string>
<string
name=
"msg_delete_description"
>
क्या आप निश्चित रूप से यह संदेश हटाना चाहते हैं
</string>
<string
name=
"msg_delete_description"
>
क्या आप निश्चित रूप से यह संदेश हटाना चाहते हैं
</string>
...
@@ -266,6 +269,7 @@
...
@@ -266,6 +269,7 @@
<string
name=
"header_unknown"
>
अज्ञात
</string>
<string
name=
"header_unknown"
>
अज्ञात
</string>
<!--Notifications-->
<!--Notifications-->
<string
name=
"share_label"
>
साझा संदेश संपादित करें
</string>
<string
name=
"notif_action_reply_hint"
>
जवाब
</string>
<string
name=
"notif_action_reply_hint"
>
जवाब
</string>
<string
name=
"notif_error_sending"
>
उत्तर विफल हुआ है। कृपया फिर से प्रयास करें।
</string>
<string
name=
"notif_error_sending"
>
उत्तर विफल हुआ है। कृपया फिर से प्रयास करें।
</string>
<string
name=
"notif_success_sending"
>
संदेश भेजा गया %1$s!
</string>
<string
name=
"notif_success_sending"
>
संदेश भेजा गया %1$s!
</string>
...
...
app/src/main/res/values-pt-rBR/strings.xml
View file @
7e9682d9
...
@@ -64,7 +64,8 @@
...
@@ -64,7 +64,8 @@
<string
name=
"msg_invalid_email"
>
Por favor informe um e-mail válido
</string>
<string
name=
"msg_invalid_email"
>
Por favor informe um e-mail válido
</string>
<string
name=
"msg_new_user_agreement"
>
Ao proceder você concorda com nossos %1$s e %2$s
</string>
<string
name=
"msg_new_user_agreement"
>
Ao proceder você concorda com nossos %1$s e %2$s
</string>
<string
name=
"msg_2fa_code"
>
Código 2FA
</string>
<string
name=
"msg_2fa_code"
>
Código 2FA
</string>
<string
name=
"msg_yesterday"
>
ontem
</string>
<string
name=
"msg_yesterday"
>
Ontem
</string>
<string
name=
"msg_today"
>
Hoje
</string>
<string
name=
"msg_message"
>
Mensagem
</string>
<string
name=
"msg_message"
>
Mensagem
</string>
<string
name=
"msg_this_room_is_read_only"
>
Este chat é apenas de leitura
</string>
<string
name=
"msg_this_room_is_read_only"
>
Este chat é apenas de leitura
</string>
<string
name=
"msg_invalid_2fa_code"
>
Código 2FA inválido
</string>
<string
name=
"msg_invalid_2fa_code"
>
Código 2FA inválido
</string>
...
@@ -266,9 +267,11 @@
...
@@ -266,9 +267,11 @@
<string
name=
"header_unknown"
>
Desconhecido
</string>
<string
name=
"header_unknown"
>
Desconhecido
</string>
<!--Notifications-->
<!--Notifications-->
<string
name=
"share_label"
>
Editar mensagem compartilhada
</string>
<string
name=
"notif_action_reply_hint"
>
RESPONDER
</string>
<string
name=
"notif_action_reply_hint"
>
RESPONDER
</string>
<string
name=
"notif_error_sending"
>
Falha ao enviar a mensagem.
</string>
<string
name=
"notif_error_sending"
>
Falha ao enviar a mensagem.
</string>
<string
name=
"notif_success_sending"
>
Mensagem enviada para %1$s!
</string>
<string
name=
"notif_success_sending"
>
Mensagem enviada para %1$s!
</string>
<string
name=
"action_share"
>
Compartilhar
</string>
<string
name=
"read_by"
>
Lida por
</string>
<string
name=
"read_by"
>
Lida por
</string>
<string
name=
"message_information_title"
>
Informações da mensagem
</string>
<string
name=
"message_information_title"
>
Informações da mensagem
</string>
<string
name=
"msg_log_out"
>
Deslogando…
</string>
<string
name=
"msg_log_out"
>
Deslogando…
</string>
...
...
app/src/main/res/values-uk-rRU/strings.xml
View file @
7e9682d9
...
@@ -37,6 +37,7 @@
...
@@ -37,6 +37,7 @@
<string
name=
"action_away"
>
Отошел
</string>
<string
name=
"action_away"
>
Отошел
</string>
<string
name=
"action_busy"
>
Занят
</string>
<string
name=
"action_busy"
>
Занят
</string>
<string
name=
"action_invisible"
>
Невидимый
</string>
<string
name=
"action_invisible"
>
Невидимый
</string>
<string
name=
"action_drawing"
>
малюнок
</string>
<string
name=
"action_save_to_gallery"
>
Сохранить в галерею
</string>
<string
name=
"action_save_to_gallery"
>
Сохранить в галерею
</string>
<!-- Settings List -->
<!-- Settings List -->
...
@@ -64,6 +65,7 @@
...
@@ -64,6 +65,7 @@
<string
name=
"msg_new_user_agreement"
>
Продолжая, вы соглашаетесь с нашими\n%1$s и %2$s
</string>
<string
name=
"msg_new_user_agreement"
>
Продолжая, вы соглашаетесь с нашими\n%1$s и %2$s
</string>
<string
name=
"msg_2fa_code"
>
Код 2FA
</string>
<string
name=
"msg_2fa_code"
>
Код 2FA
</string>
<string
name=
"msg_yesterday"
>
Вчера
</string>
<string
name=
"msg_yesterday"
>
Вчера
</string>
<string
name=
"msg_today"
>
Сьогодні
</string>
<string
name=
"msg_message"
>
Сообщение
</string>
<string
name=
"msg_message"
>
Сообщение
</string>
<string
name=
"msg_this_room_is_read_only"
>
Этот канал только для чтения
</string>
<string
name=
"msg_this_room_is_read_only"
>
Этот канал только для чтения
</string>
<string
name=
"msg_invalid_2fa_code"
>
Неверный код 2FA
</string>
<string
name=
"msg_invalid_2fa_code"
>
Неверный код 2FA
</string>
...
@@ -119,6 +121,7 @@
...
@@ -119,6 +121,7 @@
<string
name=
"msg_upload_file"
>
Загрузить файл
</string>
<string
name=
"msg_upload_file"
>
Загрузить файл
</string>
<string
name=
"msg_file_description"
>
Описание файла
</string>
<string
name=
"msg_file_description"
>
Описание файла
</string>
<string
name=
"msg_send"
>
послать
</string>
<string
name=
"msg_send"
>
послать
</string>
<string
name=
"msg_sent_attachment"
>
Надіслано вкладення
</string>
<string
name=
"msg_delete_message"
>
Удалить сообщение
</string>
<string
name=
"msg_delete_message"
>
Удалить сообщение
</string>
<string
name=
"msg_delete_description"
>
Вы уверены, что хотите удалить это сообщение?
</string>
<string
name=
"msg_delete_description"
>
Вы уверены, что хотите удалить это сообщение?
</string>
<string
name=
"msg_channel_name"
>
Название канала
</string>
<string
name=
"msg_channel_name"
>
Название канала
</string>
...
@@ -165,6 +168,7 @@
...
@@ -165,6 +168,7 @@
<string
name=
"action_msg_share"
>
Поделиться
</string>
<string
name=
"action_msg_share"
>
Поделиться
</string>
<string
name=
"action_title_editing"
>
Редактирование сообщения
</string>
<string
name=
"action_title_editing"
>
Редактирование сообщения
</string>
<string
name=
"action_msg_add_reaction"
>
Добавить реакцию
</string>
<string
name=
"action_msg_add_reaction"
>
Добавить реакцию
</string>
<string
name=
"action_share"
>
Поділитися
</string>
<!-- Permission messages -->
<!-- Permission messages -->
<string
name=
"permission_editing_not_allowed"
>
Редактирование запрещено
</string>
<string
name=
"permission_editing_not_allowed"
>
Редактирование запрещено
</string>
...
@@ -173,8 +177,7 @@
...
@@ -173,8 +177,7 @@
<string
name=
"permission_starring_not_allowed"
>
Отмечивание запрещено
</string>
<string
name=
"permission_starring_not_allowed"
>
Отмечивание запрещено
</string>
<!-- Search message -->
<!-- Search message -->
<!-- TODO Add proper translation-->
<string
name=
"title_search_message"
>
Поиск сообщения
</string>
<string
name=
"title_search_message"
>
Search message
</string>
<!-- Favorite/Unfavorite chat room -->
<!-- Favorite/Unfavorite chat room -->
<string
name=
"title_favorite_chat"
>
Добавить чат в избранное
</string>
<string
name=
"title_favorite_chat"
>
Добавить чат в избранное
</string>
...
@@ -263,8 +266,11 @@
...
@@ -263,8 +266,11 @@
<string
name=
"header_unknown"
>
Неизвестные
</string>
<string
name=
"header_unknown"
>
Неизвестные
</string>
<!--Notifications-->
<!--Notifications-->
<string
name=
"share_label"
>
Редагування спільного повідомлення
</string>
<string
name=
"notif_action_reply_hint"
>
ОТВЕТИТЬ
</string>
<string
name=
"notif_action_reply_hint"
>
ОТВЕТИТЬ
</string>
<string
name=
"notif_error_sending"
>
Ошибка ответа. Пожалуйста, попробуйте еще раз.
</string>
<string
name=
"notif_error_sending"
>
Ошибка ответа. Пожалуйста, попробуйте еще раз.
</string>
<string
name=
"notif_success_sending"
>
Сообщение отправлено %1$s!
</string>
<string
name=
"notif_success_sending"
>
Сообщение отправлено %1$s!
</string>
<string
name=
"msg_log_out"
>
Виходьте…
</string>
<string
name=
"read_by"
>
Прочитано
</string>
<string
name=
"message_information_title"
>
Інформація про повідомлення
</string>
<string
name=
"msg_log_out"
>
Выход…
</string>
</resources>
</resources>
app/src/main/res/values/colors.xml
View file @
7e9682d9
...
@@ -44,6 +44,8 @@
...
@@ -44,6 +44,8 @@
<color
name=
"quoteBar"
>
#A0A0A0
</color>
<color
name=
"quoteBar"
>
#A0A0A0
</color>
<color
name=
"colorDivider"
>
#1F000000
</color>
<!-- Suggestions -->
<!-- Suggestions -->
<color
name=
"suggestion_background_color"
>
@color/colorWhite
</color>
<color
name=
"suggestion_background_color"
>
@color/colorWhite
</color>
...
...
app/src/main/res/values/fonts.xml
0 → 100644
View file @
7e9682d9
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string
name=
"font_fontFamily_medium"
translatable=
"false"
>
sans-serif-medium
</string>
</resources>
app/src/main/res/values/strings.xml
View file @
7e9682d9
...
@@ -67,6 +67,7 @@
...
@@ -67,6 +67,7 @@
<string
name=
"msg_2fa_code"
>
2FA Code
</string>
<string
name=
"msg_2fa_code"
>
2FA Code
</string>
<string
name=
"msg_more_than_ninety_nine_unread_messages"
translatable=
"false"
>
99+
</string>
<string
name=
"msg_more_than_ninety_nine_unread_messages"
translatable=
"false"
>
99+
</string>
<string
name=
"msg_yesterday"
>
Yesterday
</string>
<string
name=
"msg_yesterday"
>
Yesterday
</string>
<string
name=
"msg_today"
>
Today
</string>
<string
name=
"msg_message"
>
Message
</string>
<string
name=
"msg_message"
>
Message
</string>
<string
name=
"msg_this_room_is_read_only"
>
This room is read only
</string>
<string
name=
"msg_this_room_is_read_only"
>
This room is read only
</string>
<string
name=
"msg_invalid_2fa_code"
>
Invalid 2FA Code
</string>
<string
name=
"msg_invalid_2fa_code"
>
Invalid 2FA Code
</string>
...
@@ -170,6 +171,7 @@
...
@@ -170,6 +171,7 @@
<string
name=
"action_msg_share"
>
Share
</string>
<string
name=
"action_msg_share"
>
Share
</string>
<string
name=
"action_title_editing"
>
Editing Message
</string>
<string
name=
"action_title_editing"
>
Editing Message
</string>
<string
name=
"action_msg_add_reaction"
>
Add reaction
</string>
<string
name=
"action_msg_add_reaction"
>
Add reaction
</string>
<string
name=
"action_share"
>
Share
</string>
<!-- Permission messages -->
<!-- Permission messages -->
<string
name=
"permission_editing_not_allowed"
>
Editing is not allowed
</string>
<string
name=
"permission_editing_not_allowed"
>
Editing is not allowed
</string>
...
@@ -267,6 +269,7 @@
...
@@ -267,6 +269,7 @@
<string
name=
"header_unknown"
>
Unknown
</string>
<string
name=
"header_unknown"
>
Unknown
</string>
<!--Notifications-->
<!--Notifications-->
<string
name=
"share_label"
>
Edit shared message
</string>
<string
name=
"notif_action_reply_hint"
>
REPLY
</string>
<string
name=
"notif_action_reply_hint"
>
REPLY
</string>
<string
name=
"notif_error_sending"
>
Reply has failed. Please try again.
</string>
<string
name=
"notif_error_sending"
>
Reply has failed. Please try again.
</string>
<string
name=
"notif_success_sending"
>
Message sent to %1$s!
</string>
<string
name=
"notif_success_sending"
>
Message sent to %1$s!
</string>
...
...
app/src/main/res/values/styles.xml
View file @
7e9682d9
...
@@ -101,6 +101,12 @@
...
@@ -101,6 +101,12 @@
<item
name=
"android:textColor"
>
@color/colorPrimaryText
</item>
<item
name=
"android:textColor"
>
@color/colorPrimaryText
</item>
</style>
</style>
<style
name=
"Message.DayMarker"
parent=
"TextAppearance.AppCompat"
>
<item
name=
"android:textSize"
>
14sp
</item>
<item
name=
"android:textColor"
>
@color/colorPrimaryText
</item>
<item
name=
"android:fontFamily"
>
@string/font_fontFamily_medium
</item>
</style>
<style
name=
"Message.Quote.TextView"
parent=
"Message.TextView"
>
<style
name=
"Message.Quote.TextView"
parent=
"Message.TextView"
>
<item
name=
"android:textColor"
>
@color/colorPrimaryText
</item>
<item
name=
"android:textColor"
>
@color/colorPrimaryText
</item>
</style>
</style>
...
...
draw/src/main/res/layout/activity_drawing.xml
View file @
7e9682d9
...
@@ -4,13 +4,17 @@
...
@@ -4,13 +4,17 @@
xmlns:tools=
"http://schemas.android.com/tools"
xmlns:tools=
"http://schemas.android.com/tools"
android:layout_width=
"match_parent"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:layout_height=
"match_parent"
tools:context=
".ui.DrawingActivity"
>
tools:context=
".
main.
ui.DrawingActivity"
>
<chat.rocket.android.draw.widget.CustomDrawView
<chat.rocket.android.draw.widget.CustomDrawView
android:id=
"@+id/custom_draw_view"
android:id=
"@+id/custom_draw_view"
android:layout_width=
"match_parent"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:layout_height=
"match_parent"
android:background=
"@color/color_white"
/>
android:background=
"@color/color_white"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
/>
<ImageView
<ImageView
android:id=
"@+id/image_close_drawing"
android:id=
"@+id/image_close_drawing"
...
...
emoji/src/main/res/layout/emoji_keyboard.xml
View file @
7e9682d9
...
@@ -55,8 +55,10 @@
...
@@ -55,8 +55,10 @@
android:padding=
"8dp"
android:padding=
"8dp"
android:src=
"@drawable/ic_search_gray_24px"
android:src=
"@drawable/ic_search_gray_24px"
android:visibility=
"invisible"
android:visibility=
"invisible"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintEnd_toStartOf=
"@+id/emoji_backspace"
app:layout_constraintEnd_toStartOf=
"@+id/emoji_backspace"
app:layout_constraintStart_toEndOf=
"@+id/color_change_view"
/>
app:layout_constraintStart_toEndOf=
"@+id/color_change_view"
app:layout_constraintTop_toTopOf=
"parent"
/>
<ImageView
<ImageView
android:id=
"@+id/emoji_backspace"
android:id=
"@+id/emoji_backspace"
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment