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
93c2c33d
Commit
93c2c33d
authored
Dec 10, 2018
by
Filipe de Lima Brito
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fix a RuntimeException bug.
Fabric ref.: #3165
parent
a4213242
Changes
14
Show whitespace changes
Inline
Side-by-side
Showing
14 changed files
with
65 additions
and
67 deletions
+65
-67
PasswordPresenter.kt
...droid/settings/password/presentation/PasswordPresenter.kt
+8
-8
PasswordFragment.kt
...t/rocket/android/settings/password/ui/PasswordFragment.kt
+15
-28
fragment_password.xml
app/src/main/res/layout/fragment_password.xml
+15
-15
strings.xml
app/src/main/res/values-de/strings.xml
+5
-5
strings.xml
app/src/main/res/values-es/strings.xml
+2
-1
strings.xml
app/src/main/res/values-fr/strings.xml
+2
-1
strings.xml
app/src/main/res/values-hi-rIN/strings.xml
+2
-1
strings.xml
app/src/main/res/values-it/strings.xml
+2
-1
strings.xml
app/src/main/res/values-ja/strings.xml
+4
-3
strings.xml
app/src/main/res/values-pt-rBR/strings.xml
+2
-0
strings.xml
app/src/main/res/values-ru-rRU/strings.xml
+2
-1
strings.xml
app/src/main/res/values-tr/strings.xml
+2
-1
strings.xml
app/src/main/res/values-uk/strings.xml
+2
-1
strings.xml
app/src/main/res/values/strings.xml
+2
-1
No files found.
app/src/main/java/chat/rocket/android/settings/password/presentation/PasswordPresenter.kt
View file @
93c2c33d
...
@@ -2,13 +2,13 @@ package chat.rocket.android.settings.password.presentation
...
@@ -2,13 +2,13 @@ package chat.rocket.android.settings.password.presentation
import
chat.rocket.android.analytics.AnalyticsManager
import
chat.rocket.android.analytics.AnalyticsManager
import
chat.rocket.android.core.lifecycle.CancelStrategy
import
chat.rocket.android.core.lifecycle.CancelStrategy
import
chat.rocket.android.helper.UserHelper
import
chat.rocket.android.server.domain.GetCurrentServerInteractor
import
chat.rocket.android.server.domain.GetCurrentServerInteractor
import
chat.rocket.android.server.infraestructure.RocketChatClientFactory
import
chat.rocket.android.server.infraestructure.RocketChatClientFactory
import
chat.rocket.android.util.extension.launchUI
import
chat.rocket.android.util.extension.launchUI
import
chat.rocket.android.util.retryIO
import
chat.rocket.android.util.retryIO
import
chat.rocket.common.RocketChatException
import
chat.rocket.common.RocketChatException
import
chat.rocket.core.RocketChatClient
import
chat.rocket.core.RocketChatClient
import
chat.rocket.core.internal.rest.me
import
chat.rocket.core.internal.rest.updateProfile
import
chat.rocket.core.internal.rest.updateProfile
import
javax.inject.Inject
import
javax.inject.Inject
...
@@ -16,6 +16,7 @@ class PasswordPresenter @Inject constructor(
...
@@ -16,6 +16,7 @@ class PasswordPresenter @Inject constructor(
private
val
view
:
PasswordView
,
private
val
view
:
PasswordView
,
private
val
strategy
:
CancelStrategy
,
private
val
strategy
:
CancelStrategy
,
private
val
analyticsManager
:
AnalyticsManager
,
private
val
analyticsManager
:
AnalyticsManager
,
private
val
userHelp
:
UserHelper
,
serverInteractor
:
GetCurrentServerInteractor
,
serverInteractor
:
GetCurrentServerInteractor
,
factory
:
RocketChatClientFactory
factory
:
RocketChatClientFactory
)
{
)
{
...
@@ -26,14 +27,13 @@ class PasswordPresenter @Inject constructor(
...
@@ -26,14 +27,13 @@ class PasswordPresenter @Inject constructor(
launchUI
(
strategy
)
{
launchUI
(
strategy
)
{
try
{
try
{
view
.
showLoading
()
view
.
showLoading
()
userHelp
.
user
()
?.
id
?.
let
{
userId
->
val
me
=
retryIO
(
"me"
)
{
client
.
me
()
}
retryIO
(
"updateProfile()"
)
{
retryIO
(
"updateProfile(${me.id})"
)
{
client
.
updateProfile
(
userId
,
null
,
null
,
password
,
null
)
client
.
updateProfile
(
me
.
id
,
null
,
null
,
password
,
null
)
}
}
analyticsManager
.
logResetPassword
(
true
)
analyticsManager
.
logResetPassword
(
true
)
view
.
showPasswordSuccessfullyUpdatedMessage
()
view
.
showPasswordSuccessfullyUpdatedMessage
()
}
}
catch
(
exception
:
RocketChatException
)
{
}
catch
(
exception
:
RocketChatException
)
{
analyticsManager
.
logResetPassword
(
false
)
analyticsManager
.
logResetPassword
(
false
)
view
.
showPasswordFailsUpdateMessage
(
exception
.
message
)
view
.
showPasswordFailsUpdateMessage
(
exception
.
message
)
...
...
app/src/main/java/chat/rocket/android/settings/password/ui/PasswordFragment.kt
View file @
93c2c33d
...
@@ -6,7 +6,6 @@ import android.view.Menu
...
@@ -6,7 +6,6 @@ import android.view.Menu
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.Toast
import
androidx.appcompat.view.ActionMode
import
androidx.appcompat.view.ActionMode
import
androidx.fragment.app.Fragment
import
androidx.fragment.app.Fragment
import
chat.rocket.android.R
import
chat.rocket.android.R
...
@@ -16,6 +15,7 @@ import chat.rocket.android.settings.password.presentation.PasswordPresenter
...
@@ -16,6 +15,7 @@ import chat.rocket.android.settings.password.presentation.PasswordPresenter
import
chat.rocket.android.settings.password.presentation.PasswordView
import
chat.rocket.android.settings.password.presentation.PasswordView
import
chat.rocket.android.util.extension.asObservable
import
chat.rocket.android.util.extension.asObservable
import
chat.rocket.android.util.extensions.inflate
import
chat.rocket.android.util.extensions.inflate
import
chat.rocket.android.util.extensions.showToast
import
chat.rocket.android.util.extensions.textContent
import
chat.rocket.android.util.extensions.textContent
import
chat.rocket.android.util.extensions.ui
import
chat.rocket.android.util.extensions.ui
import
dagger.android.support.AndroidSupportInjection
import
dagger.android.support.AndroidSupportInjection
...
@@ -33,7 +33,7 @@ class PasswordFragment : Fragment(), PasswordView, ActionMode.Callback {
...
@@ -33,7 +33,7 @@ class PasswordFragment : Fragment(), PasswordView, ActionMode.Callback {
@Inject
@Inject
lateinit
var
analyticsManager
:
AnalyticsManager
lateinit
var
analyticsManager
:
AnalyticsManager
private
var
actionMode
:
ActionMode
?
=
null
private
var
actionMode
:
ActionMode
?
=
null
private
val
disposables
=
CompositeDisposable
()
private
val
compositeDisposable
=
CompositeDisposable
()
override
fun
onCreate
(
savedInstanceState
:
Bundle
?)
{
override
fun
onCreate
(
savedInstanceState
:
Bundle
?)
{
AndroidSupportInjection
.
inject
(
this
)
AndroidSupportInjection
.
inject
(
this
)
...
@@ -48,14 +48,12 @@ class PasswordFragment : Fragment(), PasswordView, ActionMode.Callback {
...
@@ -48,14 +48,12 @@ class PasswordFragment : Fragment(), PasswordView, ActionMode.Callback {
override
fun
onViewCreated
(
view
:
View
,
savedInstanceState
:
Bundle
?)
{
override
fun
onViewCreated
(
view
:
View
,
savedInstanceState
:
Bundle
?)
{
super
.
onViewCreated
(
view
,
savedInstanceState
)
super
.
onViewCreated
(
view
,
savedInstanceState
)
compositeDisposable
.
add
(
listenToChanges
())
disposables
.
add
(
listenToChanges
())
analyticsManager
.
logScreenView
(
ScreenViewEvent
.
Password
)
analyticsManager
.
logScreenView
(
ScreenViewEvent
.
Password
)
}
}
override
fun
onDestroyView
()
{
override
fun
onDestroyView
()
{
disposables
.
clear
()
compositeDisposable
.
clear
()
super
.
onDestroyView
()
super
.
onDestroyView
()
}
}
...
@@ -74,21 +72,19 @@ class PasswordFragment : Fragment(), PasswordView, ActionMode.Callback {
...
@@ -74,21 +72,19 @@ class PasswordFragment : Fragment(), PasswordView, ActionMode.Callback {
mode
.
finish
()
mode
.
finish
()
return
true
return
true
}
}
else
->
{
else
->
false
false
}
}
}
}
}
override
fun
onCreateActionMode
(
mode
:
ActionMode
,
menu
:
Menu
?
):
Boolean
{
override
fun
onCreateActionMode
(
mode
:
ActionMode
,
menu
:
Menu
):
Boolean
{
mode
.
menuInflater
.
inflate
(
R
.
menu
.
password
,
menu
)
mode
.
menuInflater
.
inflate
(
R
.
menu
.
password
,
menu
)
mode
.
title
=
resources
.
getString
(
R
.
string
.
action_confirm_password
)
mode
.
title
=
resources
.
getString
(
R
.
string
.
action_confirm_password
)
return
true
return
true
}
}
override
fun
onPrepareActionMode
(
mode
:
ActionMode
?
,
menu
:
Menu
?):
Boolean
=
false
override
fun
onPrepareActionMode
(
mode
:
ActionMode
,
menu
:
Menu
?):
Boolean
=
false
override
fun
onDestroyActionMode
(
mode
:
ActionMode
?
)
{
override
fun
onDestroyActionMode
(
mode
:
ActionMode
)
{
actionMode
=
null
actionMode
=
null
}
}
...
@@ -101,11 +97,11 @@ class PasswordFragment : Fragment(), PasswordView, ActionMode.Callback {
...
@@ -101,11 +97,11 @@ class PasswordFragment : Fragment(), PasswordView, ActionMode.Callback {
}
}
override
fun
showPasswordFailsUpdateMessage
(
error
:
String
?)
{
override
fun
showPasswordFailsUpdateMessage
(
error
:
String
?)
{
showToast
(
"Password fails to update: "
+
error
)
showToast
(
getString
(
R
.
string
.
msg_unable_to_update_password
,
error
)
)
}
}
override
fun
showPasswordSuccessfullyUpdatedMessage
()
{
override
fun
showPasswordSuccessfullyUpdatedMessage
()
{
showToast
(
"Password was successfully updated!"
)
showToast
(
R
.
string
.
msg_password_updated_successfully
)
}
}
private
fun
finishActionMode
()
=
actionMode
?.
finish
()
private
fun
finishActionMode
()
=
actionMode
?.
finish
()
...
@@ -115,23 +111,14 @@ class PasswordFragment : Fragment(), PasswordView, ActionMode.Callback {
...
@@ -115,23 +111,14 @@ class PasswordFragment : Fragment(), PasswordView, ActionMode.Callback {
text_new_password
.
asObservable
(),
text_new_password
.
asObservable
(),
text_confirm_password
.
asObservable
()
text_confirm_password
.
asObservable
()
).
subscribe
{
).
subscribe
{
val
textPassword
=
text_new_password
.
textContent
val
newPassword
=
it
.
first
.
toString
()
val
textConfirmPassword
=
text_confirm_password
.
textContent
val
newPasswordConfirmation
=
it
.
second
.
toString
()
if
(
newPassword
.
length
>
5
&&
newPassword
==
newPasswordConfirmation
)
{
if
(
textPassword
.
length
>
5
&&
textConfirmPassword
.
length
>
5
&&
textPassword
.
equals
(
textConfirmPassword
)
)
startActionMode
()
startActionMode
()
else
}
else
{
finishActionMode
()
finishActionMode
()
}
}
}
}
private
fun
showToast
(
msg
:
String
?)
{
ui
{
Toast
.
makeText
(
it
,
msg
,
Toast
.
LENGTH_LONG
).
show
()
}
}
}
private
fun
startActionMode
()
{
private
fun
startActionMode
()
{
...
...
app/src/main/res/layout/fragment_password.xml
View file @
93c2c33d
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
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"
xmlns:tools=
"http://schemas.android.com/tools"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
tools:context=
".settings.password.ui.PasswordFragment"
>
tools:context=
".settings.password.ui.PasswordFragment"
>
<com.google.android.material.textfield.TextInputLayout
<com.google.android.material.textfield.TextInputLayout
android:id=
"@+id/layout_new_password"
android:id=
"@+id/layout_new_password"
android:layout_width=
"0dp"
android:layout_width=
"0dp"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_margin=
"16dp"
android:theme=
"@style/EditText.Password"
android:theme=
"@style/EditText.Password"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraint
Top_toTop
Of=
"parent"
app:layout_constraint
Start_toStart
Of=
"parent"
a
ndroid:layout_margin=
"16dp"
a
pp:layout_constraintTop_toTopOf=
"parent"
>
>
<EditText
<EditText
android:id=
"@+id/text_new_password"
android:id=
"@+id/text_new_password"
android:layout_width=
"match_parent"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:hint=
"@string/msg_new_password"
android:hint=
"@string/msg_new_password"
android:inputType=
"textPassword"
android:inputType=
"textPassword"
/>
/>
</com.google.android.material.textfield.TextInputLayout>
</com.google.android.material.textfield.TextInputLayout>
<com.google.android.material.textfield.TextInputLayout
<com.google.android.material.textfield.TextInputLayout
android:id=
"@+id/layout_confirm_password"
android:id=
"@+id/layout_confirm_password"
android:layout_width=
"0dp"
android:layout_width=
"0dp"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_margin=
"16dp"
android:theme=
"@style/EditText.Password"
android:theme=
"@style/EditText.Password"
app:layout_constraintTop_toBottomOf=
"@+id/layout_new_password"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
android:layout_margin=
"16dp"
app:layout_constraintStart_toStartOf=
"parent"
>
app:layout_constraintTop_toBottomOf=
"@+id/layout_new_password"
>
<EditText
<EditText
android:id=
"@+id/text_confirm_password"
android:id=
"@+id/text_confirm_password"
android:layout_width=
"match_parent"
android:layout_width=
"match_parent"
...
@@ -47,12 +46,13 @@
...
@@ -47,12 +46,13 @@
android:id=
"@+id/view_loading"
android:id=
"@+id/view_loading"
android:layout_width=
"wrap_content"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
tools:visibility=
"visible"
android:visibility=
"gone"
android:visibility=
"gone"
app:indicatorColor=
"@color/colorBlack"
app:indicatorColor=
"@color/colorBlack"
app:indicatorName=
"BallPulseIndicator"
app:indicatorName=
"BallPulseIndicator"
app:layout_constraint
Start_toStart
Of=
"parent"
app:layout_constraint
Bottom_toBottom
Of=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
app:layout_constraintBottom_toBottomOf=
"parent"
/>
tools:visibility=
"visible"
/>
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
app/src/main/res/values-de/strings.xml
View file @
93c2c33d
...
@@ -157,15 +157,15 @@
...
@@ -157,15 +157,15 @@
<string
name=
"msg_continue_with_wordpress"
>
Continue with
<b>
WordPress
</b></string>
<!-- TODO Add translation -->
<string
name=
"msg_continue_with_wordpress"
>
Continue with
<b>
WordPress
</b></string>
<!-- TODO Add translation -->
<string
name=
"msg_two_factor_authentication"
>
Two-factor Authentication
</string>
<!-- TODO Add translation -->
<string
name=
"msg_two_factor_authentication"
>
Two-factor Authentication
</string>
<!-- TODO Add translation -->
<string
name=
"msg__your_2fa_code"
>
What’s your 2FA code?
</string>
<!-- TODO Add translation -->
<string
name=
"msg__your_2fa_code"
>
What’s your 2FA code?
</string>
<!-- TODO Add translation -->
<!-- TODO - Add proper translation -->
<string
name=
"msg_muted_on_this_channel"
>
You are muted on this channel
</string>
<!-- TODO - Add proper translation -->
<string
name=
"msg_muted_on_this_channel"
>
You are muted on this channel
</string>
<string
name=
"msg_no_topic"
>
No topic added
</string>
<!-- TODO Add translation -->
<string
name=
"msg_no_topic"
>
No topic added
</string>
<!-- TODO Add translation -->
<string
name=
"msg_no_announcement"
>
No announcement added
</string>
<!-- TODO Add translation -->
<string
name=
"msg_no_announcement"
>
No announcement added
</string>
<!-- TODO Add translation -->
<string
name=
"msg_no_description"
>
No description added
</string>
<!-- TODO Add translation -->
<string
name=
"msg_no_description"
>
No description added
</string>
<!-- TODO Add translation -->
<!-- TODO - Add proper translation -->
<string
name=
"msg_unable_to_update_password"
>
Unable to update password. Error message: %1$s
</string>
<!-- TODO - Add proper translation -->
<string
name=
"msg_password_updated_successfully"
>
Password updated successfully
</string>
<!-- TODO - Add proper translation -->
<plurals
name=
"msg_reacted_with_"
>
<plurals
name=
"msg_reacted_with_"
>
<item
quantity=
"one"
>
%1$s reacted with %2$s
</item>
<item
quantity=
"one"
>
%1$s reacted with %2$s
</item>
<!-- TODO - Add proper translation -->
<item
quantity=
"other"
>
%1$s reacted with %2$s
</item>
<item
quantity=
"other"
>
%1$s reacted with %2$s
</item>
<!-- TODO - Add proper translation -->
</plurals>
</plurals>
<!-- Create channel messages -->
<!-- Create channel messages -->
...
...
app/src/main/res/values-es/strings.xml
View file @
93c2c33d
...
@@ -178,7 +178,8 @@
...
@@ -178,7 +178,8 @@
<string
name=
"msg_no_topic"
>
No topic added
</string>
<!-- TODO Add translation -->
<string
name=
"msg_no_topic"
>
No topic added
</string>
<!-- TODO Add translation -->
<string
name=
"msg_no_announcement"
>
No announcement added
</string>
<!-- TODO Add translation -->
<string
name=
"msg_no_announcement"
>
No announcement added
</string>
<!-- TODO Add translation -->
<string
name=
"msg_no_description"
>
No description added
</string>
<!-- TODO Add translation -->
<string
name=
"msg_no_description"
>
No description added
</string>
<!-- TODO Add translation -->
<string
name=
"msg_unable_to_update_password"
>
Unable to update password. Error message: %1$s
</string>
<!-- TODO - Add proper translation -->
<string
name=
"msg_password_updated_successfully"
>
Password updated successfully
</string>
<!-- TODO - Add proper translation -->
<plurals
name=
"msg_reacted_with_"
>
<plurals
name=
"msg_reacted_with_"
>
<item
quantity=
"one"
>
%1$s reacted with %2$s
</item>
<!-- TODO - Add proper translation -->
<item
quantity=
"one"
>
%1$s reacted with %2$s
</item>
<!-- TODO - Add proper translation -->
<item
quantity=
"other"
>
%1$s reacted with %2$s
</item>
<!-- TODO - Add proper translation -->
<item
quantity=
"other"
>
%1$s reacted with %2$s
</item>
<!-- TODO - Add proper translation -->
...
...
app/src/main/res/values-fr/strings.xml
View file @
93c2c33d
...
@@ -170,7 +170,8 @@
...
@@ -170,7 +170,8 @@
<string
name=
"msg_no_topic"
>
No topic added
</string>
<!-- TODO Add translation -->
<string
name=
"msg_no_topic"
>
No topic added
</string>
<!-- TODO Add translation -->
<string
name=
"msg_no_announcement"
>
No announcement added
</string>
<!-- TODO Add translation -->
<string
name=
"msg_no_announcement"
>
No announcement added
</string>
<!-- TODO Add translation -->
<string
name=
"msg_no_description"
>
No description added
</string>
<!-- TODO Add translation -->
<string
name=
"msg_no_description"
>
No description added
</string>
<!-- TODO Add translation -->
<string
name=
"msg_unable_to_update_password"
>
Unable to update password. Error message: %1$s
</string>
<!-- TODO - Add proper translation -->
<string
name=
"msg_password_updated_successfully"
>
Password updated successfully
</string>
<!-- TODO - Add proper translation -->
<plurals
name=
"msg_reacted_with_"
>
<plurals
name=
"msg_reacted_with_"
>
<item
quantity=
"one"
>
%1$s reacted with %2$s
</item>
<!-- TODO - Add proper translation -->
<item
quantity=
"one"
>
%1$s reacted with %2$s
</item>
<!-- TODO - Add proper translation -->
<item
quantity=
"other"
>
%1$s reacted with %2$s
</item>
<!-- TODO - Add proper translation -->
<item
quantity=
"other"
>
%1$s reacted with %2$s
</item>
<!-- TODO - Add proper translation -->
...
...
app/src/main/res/values-hi-rIN/strings.xml
View file @
93c2c33d
...
@@ -184,7 +184,8 @@
...
@@ -184,7 +184,8 @@
<string
name=
"msg_no_topic"
>
कोई विषय नहीं जोड़ा गया
</string>
<string
name=
"msg_no_topic"
>
कोई विषय नहीं जोड़ा गया
</string>
<string
name=
"msg_no_announcement"
>
कोई घोषणा नहीं जोड़ा गया
</string>
<string
name=
"msg_no_announcement"
>
कोई घोषणा नहीं जोड़ा गया
</string>
<string
name=
"msg_no_description"
>
कोई विवरण नहीं जोड़ा गया
</string>
<string
name=
"msg_no_description"
>
कोई विवरण नहीं जोड़ा गया
</string>
<string
name=
"msg_unable_to_update_password"
>
Unable to update password. Error message: %1$s
</string>
<!-- TODO - Add proper translation -->
<string
name=
"msg_password_updated_successfully"
>
Password updated successfully
</string>
<!-- TODO - Add proper translation -->
<plurals
name=
"msg_reacted_with_"
>
<plurals
name=
"msg_reacted_with_"
>
<item
quantity=
"one"
>
% 1 $ s ने% 2 $ %d s के साथ प्रतिक्रिया व्यक्त की
</item>
<item
quantity=
"one"
>
% 1 $ s ने% 2 $ %d s के साथ प्रतिक्रिया व्यक्त की
</item>
<item
quantity=
"few"
>
% 1 $ s ने% 2 $ s के साथ प्रतिक्रिया व्यक्त की
</item>
<item
quantity=
"few"
>
% 1 $ s ने% 2 $ s के साथ प्रतिक्रिया व्यक्त की
</item>
...
...
app/src/main/res/values-it/strings.xml
View file @
93c2c33d
...
@@ -163,7 +163,8 @@
...
@@ -163,7 +163,8 @@
<string
name=
"msg_no_description"
>
Nessuna descrizione aggiunta
</string>
<string
name=
"msg_no_description"
>
Nessuna descrizione aggiunta
</string>
<string
name=
"msg_send_email"
>
Invia una email
</string>
<string
name=
"msg_send_email"
>
Invia una email
</string>
<string
name=
"msg_android_app_support"
>
Supporto per le app Android
</string>
<string
name=
"msg_android_app_support"
>
Supporto per le app Android
</string>
<string
name=
"msg_unable_to_update_password"
>
Unable to update password. Error message: %1$s
</string>
<!-- TODO - Add proper translation -->
<string
name=
"msg_password_updated_successfully"
>
Password updated successfully
</string>
<!-- TODO - Add proper translation -->
<plurals
name=
"msg_reacted_with_"
>
<plurals
name=
"msg_reacted_with_"
>
<item
quantity=
"one"
>
%1$s ha reagito con %2$s
</item>
<item
quantity=
"one"
>
%1$s ha reagito con %2$s
</item>
<item
quantity=
"other"
>
%1$s ha reagito con %2$s
</item>
<item
quantity=
"other"
>
%1$s ha reagito con %2$s
</item>
...
...
app/src/main/res/values-ja/strings.xml
View file @
93c2c33d
...
@@ -168,10 +168,11 @@
...
@@ -168,10 +168,11 @@
<string
name=
"msg_no_topic"
>
No topic added
</string>
<!-- TODO Add translation -->
<string
name=
"msg_no_topic"
>
No topic added
</string>
<!-- TODO Add translation -->
<string
name=
"msg_no_announcement"
>
No announcement added
</string>
<!-- TODO Add translation -->
<string
name=
"msg_no_announcement"
>
No announcement added
</string>
<!-- TODO Add translation -->
<string
name=
"msg_no_description"
>
No description added
</string>
<!-- TODO Add translation -->
<string
name=
"msg_no_description"
>
No description added
</string>
<!-- TODO Add translation -->
<!-- TODO - Add proper translation -->
<string
name=
"msg_unable_to_update_password"
>
Unable to update password. Error message: %1$s
</string>
<!-- TODO - Add proper translation -->
<string
name=
"msg_password_updated_successfully"
>
Password updated successfully
</string>
<!-- TODO - Add proper translation -->
<plurals
name=
"msg_reacted_with_"
>
<plurals
name=
"msg_reacted_with_"
>
<item
quantity=
"one"
>
%1$s reacted with %2$s
</item>
<item
quantity=
"one"
>
%1$s reacted with %2$s
</item>
<!-- TODO - Add proper translation -->
<item
quantity=
"other"
>
%1$s reacted with %2$s
</item>
<item
quantity=
"other"
>
%1$s reacted with %2$s
</item>
<!-- TODO - Add proper translation -->
</plurals>
</plurals>
<!-- Create channel messages -->
<!-- Create channel messages -->
...
...
app/src/main/res/values-pt-rBR/strings.xml
View file @
93c2c33d
...
@@ -171,6 +171,8 @@
...
@@ -171,6 +171,8 @@
<string
name=
"msg_no_topic"
>
No topic added
</string>
<!-- TODO Add translation -->
<string
name=
"msg_no_topic"
>
No topic added
</string>
<!-- TODO Add translation -->
<string
name=
"msg_no_announcement"
>
No announcement added
</string>
<!-- TODO Add translation -->
<string
name=
"msg_no_announcement"
>
No announcement added
</string>
<!-- TODO Add translation -->
<string
name=
"msg_no_description"
>
No description added
</string>
<!-- TODO Add translation -->
<string
name=
"msg_no_description"
>
No description added
</string>
<!-- TODO Add translation -->
<string
name=
"msg_unable_to_update_password"
>
Não foi possível atualizar a senha. Mensagem de erro: %1$s
</string>
<string
name=
"msg_password_updated_successfully"
>
Senha alterada com sucesso
</string>
<plurals
name=
"msg_reacted_with_"
>
<plurals
name=
"msg_reacted_with_"
>
<item
quantity=
"one"
>
%1$s reagiu com %2$s
</item>
<item
quantity=
"one"
>
%1$s reagiu com %2$s
</item>
<item
quantity=
"other"
>
%1$s reagiram com %2$s
</item>
<item
quantity=
"other"
>
%1$s reagiram com %2$s
</item>
...
...
app/src/main/res/values-ru-rRU/strings.xml
View file @
93c2c33d
...
@@ -169,7 +169,8 @@
...
@@ -169,7 +169,8 @@
<string
name=
"msg_send_email"
>
Отправить e-mail
</string>
<string
name=
"msg_send_email"
>
Отправить e-mail
</string>
<string
name=
"msg_android_app_support"
>
Поддержка Android-приложения
</string>
<string
name=
"msg_android_app_support"
>
Поддержка Android-приложения
</string>
<string
name=
"msg_muted_on_this_channel"
>
Вы лишены дара речи на этом канале
</string>
<string
name=
"msg_muted_on_this_channel"
>
Вы лишены дара речи на этом канале
</string>
<string
name=
"msg_unable_to_update_password"
>
Unable to update password. Error message: %1$s
</string>
<!-- TODO - Add proper translation -->
<string
name=
"msg_password_updated_successfully"
>
Password updated successfully
</string>
<!-- TODO - Add proper translation -->
<plurals
name=
"msg_reacted_with_"
>
<plurals
name=
"msg_reacted_with_"
>
<item
quantity=
"one"
>
%1$s реагирует с %2$s
</item>
<item
quantity=
"one"
>
%1$s реагирует с %2$s
</item>
<item
quantity=
"few"
>
%1$s реагируют с %2$s
</item>
<item
quantity=
"few"
>
%1$s реагируют с %2$s
</item>
...
...
app/src/main/res/values-tr/strings.xml
View file @
93c2c33d
...
@@ -185,7 +185,8 @@
...
@@ -185,7 +185,8 @@
<string
name=
"msg_no_topic"
>
No topic added
</string>
<!-- TODO Add translation -->
<string
name=
"msg_no_topic"
>
No topic added
</string>
<!-- TODO Add translation -->
<string
name=
"msg_no_announcement"
>
No announcement added
</string>
<!-- TODO Add translation -->
<string
name=
"msg_no_announcement"
>
No announcement added
</string>
<!-- TODO Add translation -->
<string
name=
"msg_no_description"
>
No description added
</string>
<!-- TODO Add translation -->
<string
name=
"msg_no_description"
>
No description added
</string>
<!-- TODO Add translation -->
<string
name=
"msg_unable_to_update_password"
>
Unable to update password. Error message: %1$s
</string>
<!-- TODO - Add proper translation -->
<string
name=
"msg_password_updated_successfully"
>
Password updated successfully
</string>
<!-- TODO - Add proper translation -->
<plurals
name=
"msg_reacted_with_"
>
<plurals
name=
"msg_reacted_with_"
>
<item
quantity=
"one"
>
%1$s reacted with %2$s
</item>
<!-- TODO - Add proper translation -->
<item
quantity=
"one"
>
%1$s reacted with %2$s
</item>
<!-- TODO - Add proper translation -->
<item
quantity=
"other"
>
%1$s reacted with %2$s
</item>
<!-- TODO - Add proper translation -->
<item
quantity=
"other"
>
%1$s reacted with %2$s
</item>
<!-- TODO - Add proper translation -->
...
...
app/src/main/res/values-uk/strings.xml
View file @
93c2c33d
...
@@ -168,7 +168,8 @@
...
@@ -168,7 +168,8 @@
<string
name=
"msg_no_topic"
>
No topic added
</string>
<!-- TODO Add translation -->
<string
name=
"msg_no_topic"
>
No topic added
</string>
<!-- TODO Add translation -->
<string
name=
"msg_no_announcement"
>
No announcement added
</string>
<!-- TODO Add translation -->
<string
name=
"msg_no_announcement"
>
No announcement added
</string>
<!-- TODO Add translation -->
<string
name=
"msg_no_description"
>
No description added
</string>
<!-- TODO Add translation -->
<string
name=
"msg_no_description"
>
No description added
</string>
<!-- TODO Add translation -->
<string
name=
"msg_unable_to_update_password"
>
Unable to update password. Error message: %1$s
</string>
<!-- TODO - Add proper translation -->
<string
name=
"msg_password_updated_successfully"
>
Password updated successfully
</string>
<!-- TODO - Add proper translation -->
<plurals
name=
"msg_reacted_with_"
>
<plurals
name=
"msg_reacted_with_"
>
<item
quantity=
"one"
>
%1$s reacted with %2$s
</item>
<!-- TODO - Add proper translation -->
<item
quantity=
"one"
>
%1$s reacted with %2$s
</item>
<!-- TODO - Add proper translation -->
<item
quantity=
"few"
>
%1$s reacted with %2$s
</item>
<!-- TODO - Add proper translation -->
<item
quantity=
"few"
>
%1$s reacted with %2$s
</item>
<!-- TODO - Add proper translation -->
...
...
app/src/main/res/values/strings.xml
View file @
93c2c33d
...
@@ -180,7 +180,8 @@ https://github.com/RocketChat/java-code-styles/blob/master/CODING_STYLE.md#strin
...
@@ -180,7 +180,8 @@ https://github.com/RocketChat/java-code-styles/blob/master/CODING_STYLE.md#strin
<string
name=
"msg_no_description"
>
No description added
</string>
<string
name=
"msg_no_description"
>
No description added
</string>
<string
name=
"msg_send_email"
>
Send email
</string>
<string
name=
"msg_send_email"
>
Send email
</string>
<string
name=
"msg_android_app_support"
>
Android app support
</string>
<string
name=
"msg_android_app_support"
>
Android app support
</string>
<string
name=
"msg_unable_to_update_password"
>
Unable to update password. Error message: %1$s
</string>
<string
name=
"msg_password_updated_successfully"
>
Password updated successfully
</string>
<plurals
name=
"msg_reacted_with_"
>
<plurals
name=
"msg_reacted_with_"
>
<item
quantity=
"one"
>
%1$s reacted with %2$s
</item>
<item
quantity=
"one"
>
%1$s reacted with %2$s
</item>
<item
quantity=
"other"
>
%1$s reacted with %2$s
</item>
<item
quantity=
"other"
>
%1$s reacted with %2$s
</item>
...
...
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