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
954107fa
Commit
954107fa
authored
Dec 11, 2018
by
Govind Dixit
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
feat: add multi language support
parent
a4213242
Changes
9
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
91 additions
and
31 deletions
+91
-31
MainActivity.kt
...src/main/java/chat/rocket/android/main/ui/MainActivity.kt
+52
-0
SettingsFragment.kt
.../java/chat/rocket/android/settings/ui/SettingsFragment.kt
+8
-5
legal.xml
app/src/main/res/menu/legal.xml
+2
-2
profile.xml
app/src/main/res/menu/profile.xml
+1
-1
strings.xml
app/src/main/res/values-hi-rIN/strings.xml
+1
-0
strings.xml
app/src/main/res/values-it/strings.xml
+1
-0
strings.xml
app/src/main/res/values-ja/strings.xml
+24
-23
strings.xml
app/src/main/res/values-ru-rRU/strings.xml
+1
-0
strings.xml
app/src/main/res/values/strings.xml
+1
-0
No files found.
app/src/main/java/chat/rocket/android/main/ui/MainActivity.kt
View file @
954107fa
...
...
@@ -4,6 +4,8 @@ import DrawableHelper
import
android.app.Activity
import
android.app.AlertDialog
import
android.app.ProgressDialog
import
android.content.Context
import
android.content.res.Configuration
import
android.os.Bundle
import
androidx.annotation.IdRes
import
androidx.appcompat.app.AppCompatActivity
...
...
@@ -36,6 +38,7 @@ import dagger.android.support.HasSupportFragmentInjector
import
kotlinx.android.synthetic.main.activity_main.*
import
kotlinx.android.synthetic.main.app_bar.*
import
kotlinx.android.synthetic.main.nav_header.view.*
import
java.util.Locale
import
javax.inject.Inject
private
const
val
CURRENT_STATE
=
"current_state"
...
...
@@ -257,4 +260,53 @@ class MainActivity : AppCompatActivity(), MainView, HasActivityInjector,
progressDialog
?.
dismiss
()
progressDialog
=
null
}
fun
changeLanguage
(){
val
languages
=
arrayOf
(
"English"
,
"Hindi"
,
"Japanese"
,
"Russian"
,
"Italian"
)
val
builder
=
AlertDialog
.
Builder
(
this
)
builder
.
setTitle
(
"Choose Language"
)
builder
.
setSingleChoiceItems
(
languages
,-
1
)
{
dialog
,
which
->
if
(
which
==
0
){
setLocale
(
"en"
)
recreate
()
}
else
if
(
which
==
1
){
setLocale
(
"hi"
)
recreate
()
}
else
if
(
which
==
2
){
setLocale
(
"ja"
)
recreate
()
}
else
if
(
which
==
3
){
setLocale
(
"ru"
)
recreate
()
}
else
if
(
which
==
4
){
setLocale
(
"it"
)
recreate
()
}
dialog
.
dismiss
()
}
val
mdialog
=
builder
.
create
()
mdialog
.
show
()
}
fun
setLocale
(
lang
:
String
)
{
val
locale
=
Locale
(
lang
)
Locale
.
setDefault
(
locale
)
val
config
=
Configuration
()
config
.
locale
=
locale
baseContext
.
resources
.
updateConfiguration
(
config
,
baseContext
.
resources
.
displayMetrics
)
val
editor
=
getSharedPreferences
(
"Settings"
,
Context
.
MODE_PRIVATE
).
edit
()
editor
.
putString
(
"My_Lang"
,
lang
)
editor
.
apply
()
}
private
fun
loadLocale
(){
val
sharedPreferences
=
getSharedPreferences
(
"settings"
,
Activity
.
MODE_PRIVATE
)
val
language
=
sharedPreferences
.
getString
(
"My_Lang"
,
""
)
setLocale
(
language
)
}
}
app/src/main/java/chat/rocket/android/settings/ui/SettingsFragment.kt
View file @
954107fa
...
...
@@ -73,20 +73,22 @@ class SettingsFragment : Fragment(), SettingsView, AdapterView.OnItemClickListen
resources
.
getStringArray
(
R
.
array
.
settings_actions
)[
1
]
->
activity
?.
startActivity
(
Intent
(
activity
,
PasswordActivity
::
class
.
java
))
resources
.
getStringArray
(
R
.
array
.
settings_actions
)[
2
]
->
shareApp
()
resources
.
getStringArray
(
R
.
array
.
settings_actions
)[
2
]
->
(
activity
as
?
MainActivity
)
?.
changeLanguage
()
resources
.
getStringArray
(
R
.
array
.
settings_actions
)[
3
]
->
sh
owAppOnStore
()
resources
.
getStringArray
(
R
.
array
.
settings_actions
)[
3
]
->
sh
areApp
()
resources
.
getStringArray
(
R
.
array
.
settings_actions
)[
4
]
->
contactSupport
()
resources
.
getStringArray
(
R
.
array
.
settings_actions
)[
4
]
->
showAppOnStore
()
resources
.
getStringArray
(
R
.
array
.
settings_actions
)[
5
]
->
activity
?.
startActivity
(
resources
.
getStringArray
(
R
.
array
.
settings_actions
)[
5
]
->
contactSupport
()
resources
.
getStringArray
(
R
.
array
.
settings_actions
)[
6
]
->
activity
?.
startActivity
(
context
?.
webViewIntent
(
getString
(
R
.
string
.
license_url
),
getString
(
R
.
string
.
title_licence
)
)
)
resources
.
getStringArray
(
R
.
array
.
settings_actions
)[
6
]
->
{
resources
.
getStringArray
(
R
.
array
.
settings_actions
)[
7
]
->
{
(
activity
as
AppCompatActivity
).
addFragmentBackStack
(
TAG_ABOUT_FRAGMENT
,
R
.
id
.
fragment_container
...
...
@@ -97,6 +99,7 @@ class SettingsFragment : Fragment(), SettingsView, AdapterView.OnItemClickListen
}
}
private
fun
showAppOnStore
()
{
try
{
startActivity
(
Intent
(
Intent
.
ACTION_VIEW
,
getString
(
R
.
string
.
market_link
).
toUri
()))
...
...
app/src/main/res/menu/legal.xml
View file @
954107fa
...
...
@@ -5,10 +5,10 @@
<item
android:id=
"@+id/action_terms_of_Service"
android:title=
"@string/action_terms_of_service"
a
pp
:showAsAction=
"never"
/>
a
ndroid
:showAsAction=
"never"
/>
<item
android:id=
"@+id/action_privacy_policy"
android:title=
"@string/action_privacy_policy"
a
pp
:showAsAction=
"never"
/>
a
ndroid
:showAsAction=
"never"
/>
</menu>
\ No newline at end of file
app/src/main/res/menu/profile.xml
View file @
954107fa
...
...
@@ -5,6 +5,6 @@
<item
android:id=
"@+id/action_delete_account"
android:title=
"@string/action_delete_account"
a
pp
:showAsAction=
"never"
/>
a
ndroid
:showAsAction=
"never"
/>
</menu>
\ No newline at end of file
app/src/main/res/values-hi-rIN/strings.xml
View file @
954107fa
...
...
@@ -64,6 +64,7 @@
<string-array
name=
"settings_actions"
>
<item
name=
"item_preferences"
>
पसंद
</item>
<item
name=
"item_password"
>
पासवर्ड बदलें
</item>
<item
name=
"change_language"
>
भाषा बदलें
</item>
<item
name=
"item_share_app"
>
ऐप शेयर करें
</item>
<item
name=
"item_rate_us"
>
हमें रेटिंग दें
</item>
<item
name=
"item_contact_us"
>
हमसे संपर्क करें
</item>
...
...
app/src/main/res/values-it/strings.xml
View file @
954107fa
...
...
@@ -64,6 +64,7 @@
<string-array
name=
"settings_actions"
>
<item
name=
"item_preferences"
>
Preferenze
</item>
<item
name=
"item_password"
>
Cambia password
</item>
<item
name=
"change_language"
>
Cambia lingua
</item>
<item
name=
"item_share_app"
>
Condividi app
</item>
<item
name=
"item_rate_us"
>
Votaci
</item>
<item
name=
"item_contact_us"
>
Contattaci
</item>
...
...
app/src/main/res/values-ja/strings.xml
View file @
954107fa
...
...
@@ -22,11 +22,11 @@
<string
name=
"title_admin_panel"
>
管理パネル
</string>
<string
name=
"title_password"
>
パスワードの変更
</string>
<string
name=
"title_update_profile"
>
プロフィールの更新
</string>
<string
name=
"title_about"
>
About
</string>
<string
name=
"title_licence"
>
Licence
</string>
<!-- TODO Add translation --
>
<string
name=
"title_about"
>
約
</string>
<string
name=
"title_licence"
>
ライセンス
</string
>
<string
name=
"title_create_channel"
>
新しいチャネルを作成
</string>
<string
name=
"title_are_you_sure"
>
本気ですか?
</string>
<string
name=
"title_channel_details"
>
Channel Details
</string>
<!-- TODO add translation --
>
<string
name=
"title_channel_details"
>
チャンネルの詳細
</string
>
<string
name=
"title_topic"
>
トピック
</string>
<string
name=
"title_announcement"
>
発表
</string>
<string
name=
"title_description"
>
説明
</string>
...
...
@@ -42,7 +42,7 @@
<string
name=
"action_create_channel"
>
チャンネル作成
</string>
<string
name=
"action_create"
>
作ります
</string>
<string
name=
"action_logout"
>
ログアウト
</string>
<string
name=
"action_attach_a_files"
>
Attach a file
</string>
<!-- TODO Add translation -->
<string
name=
"action_attach_a_files"
>
Attach a file
</string>
<string
name=
"action_confirm_password"
>
変更したパスワードの確認
</string>
<string
name=
"action_join_chat"
>
チャットに参加
</string>
<string
name=
"action_add_account"
>
サーバーの追加
</string>
...
...
@@ -64,13 +64,14 @@
<!-- Settings List -->
<string-array
name=
"settings_actions"
>
<item
name=
"item_preferences"
>
Preferences
</item>
<!-- TODO Add translation -->
<item
name=
"item_password"
>
Change password
</item>
<!-- TODO Add translation -->
<item
name=
"item_share_app"
>
Share app
</item>
<!-- TODO Add translation -->
<item
name=
"item_rate_us"
>
Rate us
</item>
<!-- TODO Add translation -->
<item
name=
"item_contact_us"
>
Contact us
</item>
<!-- TODO Add translation -->
<item
name=
"item_licence"
>
Licence
</item>
<!-- TODO Add translation -->
<item
name=
"item_about"
>
About
</item>
<!-- TODO Add translation -->
<item
name=
"item_preferences"
>
設定
</item>
<item
name=
"item_password"
>
パスワードを変更する
</item>
<item
name=
"change_language"
>
言語を変えてください
</item>
<item
name=
"item_share_app"
>
アプリを共有する
</item>
<item
name=
"item_rate_us"
>
私たちを評価してください
</item>
<item
name=
"item_contact_us"
>
お問い合わせ
</item>
<item
name=
"item_licence"
>
ライセンス
</item>
<item
name=
"item_about"
>
約
</item>
</string-array>
<!-- Regular information messages -->
...
...
@@ -165,9 +166,9 @@
<string
name=
"msg_view_more"
>
更に表示
</string>
<string
name=
"msg_view_less"
>
隠す
</string>
<string
name=
"msg_muted_on_this_channel"
>
あなたはこのチャンネルでミュートされています
</string>
<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_description"
>
No description added
</string>
<!-- TODO Add translation --
>
<string
name=
"msg_no_topic"
>
トピックが追加されていない
</string
>
<string
name=
"msg_no_announcement"
>
お知らせが追加されていません
</string
>
<string
name=
"msg_no_description"
>
説明が追加されていない
</string
>
<!-- TODO - Add proper translation -->
<plurals
name=
"msg_reacted_with_"
>
<item
quantity=
"one"
>
%1$s reacted with %2$s
</item>
...
...
@@ -189,8 +190,8 @@
<string
name=
"msg_delete_message"
>
メッセージを削除
</string>
<string
name=
"msg_delete_description"
>
このメッセージを削除してもよろしいですか?
</string>
<string
name=
"msg_permalink_copied"
>
パーマリンクのコピー
</string>
<string
name=
"msg_send_email"
>
Send email
</string>
<!-- TODO - Add proper translation --
>
<string
name=
"msg_android_app_support"
>
Android
app support
</string>
<!-- TODO - Add proper translation --
>
<string
name=
"msg_send_email"
>
メールを送る
</string
>
<string
name=
"msg_android_app_support"
>
Android
アプリのサポート
</string
>
<!-- Preferences messages -->
<string
name=
"msg_analytics_tracking"
>
トラッキングの分析
</string>
...
...
@@ -339,13 +340,13 @@
<string
name=
"message_room_changed_privacy"
>
ルームタイプを %2$s から %1$s に変更しました
</string>
<!-- User Details -->
<string
name=
"message"
>
Message
</string>
<!--TODO - Add proper translation--
>
<string
name=
"timezone"
>
Timezone
</string>
<!--TODO - Add proper translation--
>
<string
name=
"error_opening_dm"
>
Something went wrong while we were creating this conversation…
</string>
<!-- TODO - Add proper translation --
>
<string
name=
"retry"
>
Retry
</string>
<!-- TODO - Add proper translation --
>
<string
name=
"message"
>
メッセージ
</string
>
<string
name=
"timezone"
>
タイムゾーン
</string
>
<string
name=
"error_opening_dm"
>
この会話を作成しているうちに何か問題が発生しました…
</string
>
<string
name=
"retry"
>
リトライ
</string
>
<!-- Report -->
<string
name=
"submit"
>
Submit
</string>
<!--TODO - Add proper translation--
>
<string
name=
"required"
>
*
required
</string>
<!--TODO - Add proper translation--
>
<string
name=
"report_sent"
>
Your report has been sent!
</string>
<!--TODO - Add proper translation--
>
<string
name=
"submit"
>
提出する
</string
>
<string
name=
"required"
>
*
必須
</string
>
<string
name=
"report_sent"
>
あなたのレポートが送信されました!
</string
>
</resources>
app/src/main/res/values-ru-rRU/strings.xml
View file @
954107fa
...
...
@@ -64,6 +64,7 @@
<string-array
name=
"settings_actions"
>
<item
name=
"item_preferences"
>
Персональные
</item>
<item
name=
"item_password"
>
Изменить пароль
</item>
<item
name=
"change_language"
>
Изменить язык
</item>
<item
name=
"item_share_app"
>
Поделиться приложением
</item>
<item
name=
"item_rate_us"
>
Оцените нас
</item>
<item
name=
"item_contact_us"
>
Связаться с нами
</item>
...
...
app/src/main/res/values/strings.xml
View file @
954107fa
...
...
@@ -76,6 +76,7 @@ https://github.com/RocketChat/java-code-styles/blob/master/CODING_STYLE.md#strin
<string-array
name=
"settings_actions"
>
<item
name=
"item_preferences"
>
Preferences
</item>
<item
name=
"item_password"
>
Change password
</item>
<item
name=
"change_language"
>
Change Language
</item>
<item
name=
"item_share_app"
>
Share app
</item>
<item
name=
"item_rate_us"
>
Rate us
</item>
<item
name=
"item_contact_us"
>
Contact us
</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