Skip to content
Snippets Groups Projects
Verified Commit 782d521e authored by Janne Mareike Koschinski's avatar Janne Mareike Koschinski
Browse files

Prepare for brazilian portuguese translation, updated translators

parent 3f381904
No related branches found
No related tags found
No related merge requests found
Showing
with 446 additions and 1 deletion
......@@ -8,6 +8,7 @@ source_lang = en
trans.de = app/src/main/res/values-de/strings_status.xml
trans.lt = app/src/main/res/values-lt/strings_status.xml
trans.pt = app/src/main/res/values-pt/strings_status.xml
trans.pt_BR = app/src/main/res/values-pt-rBR/strings_status.xml
trans.sr = app/src/main/res/values-sr/strings_status.xml
trans.fr = app/src/main/res/values-fr/strings_status.xml
......@@ -18,6 +19,7 @@ source_lang = en
trans.de = app/src/main/res/values-de/strings_error.xml
trans.lt = app/src/main/res/values-lt/strings_error.xml
trans.pt = app/src/main/res/values-pt/strings_error.xml
trans.pt_BR = app/src/main/res/values-pt-rBR/strings_error.xml
trans.sr = app/src/main/res/values-sr/strings_error.xml
trans.fr = app/src/main/res/values-fr/strings_error.xml
......@@ -28,6 +30,7 @@ source_lang = en
trans.de = app/src/main/res/values-de/strings_defaults.xml
trans.lt = app/src/main/res/values-lt/strings_defaults.xml
trans.pt = app/src/main/res/values-pt/strings_defaults.xml
trans.pt_BR = app/src/main/res/values-pt-rBR/strings_defaults.xml
trans.sr = app/src/main/res/values-sr/strings_defaults.xml
trans.fr = app/src/main/res/values-fr/strings_defaults.xml
......@@ -38,6 +41,7 @@ source_lang = en
trans.de = app/src/main/res/values-de/strings_format.xml
trans.lt = app/src/main/res/values-lt/strings_format.xml
trans.pt = app/src/main/res/values-pt/strings_format.xml
trans.pt_BR = app/src/main/res/values-pt-rBR/strings_format.xml
trans.sr = app/src/main/res/values-sr/strings_format.xml
trans.fr = app/src/main/res/values-fr/strings_format.xml
......@@ -48,6 +52,7 @@ source_lang = en
trans.de = app/src/main/res/values-de/strings_preferences.xml
trans.lt = app/src/main/res/values-lt/strings_preferences.xml
trans.pt = app/src/main/res/values-pt/strings_preferences.xml
trans.pt_BR = app/src/main/res/values-pt-rBR/strings_preferences.xml
trans.sr = app/src/main/res/values-sr/strings_preferences.xml
trans.fr = app/src/main/res/values-fr/strings_preferences.xml
......@@ -58,6 +63,7 @@ source_lang = en
trans.de = app/src/main/res/values-de/strings_messages.xml
trans.lt = app/src/main/res/values-lt/strings_messages.xml
trans.pt = app/src/main/res/values-pt/strings_messages.xml
trans.pt_BR = app/src/main/res/values-pt-rBR/strings_messages.xml
trans.sr = app/src/main/res/values-sr/strings_messages.xml
trans.fr = app/src/main/res/values-fr/strings_messages.xml
......@@ -68,6 +74,7 @@ source_lang = en
trans.de = app/src/main/res/values-de/strings.xml
trans.lt = app/src/main/res/values-lt/strings.xml
trans.pt = app/src/main/res/values-pt/strings.xml
trans.pt_BR = app/src/main/res/values-pt-rBR/strings.xml
trans.sr = app/src/main/res/values-sr/strings.xml
trans.fr = app/src/main/res/values-fr/strings.xml
......@@ -78,6 +85,7 @@ source_lang = en
trans.de = app/src/main/res/values-de/strings_setup.xml
trans.lt = app/src/main/res/values-lt/strings_setup.xml
trans.pt = app/src/main/res/values-pt/strings_setup.xml
trans.pt_BR = app/src/main/res/values-pt-rBR/strings_setup.xml
trans.sr = app/src/main/res/values-sr/strings_setup.xml
trans.fr = app/src/main/res/values-fr/strings_setup.xml
......@@ -88,6 +96,7 @@ source_lang = en
trans.de = app/src/main/res/values-de/strings_contributors.xml
trans.lt = app/src/main/res/values-lt/strings_contributors.xml
trans.pt = app/src/main/res/values-pt/strings_contributors.xml
trans.pt_BR = app/src/main/res/values-pt-rBR/strings_contributors.xml
trans.sr = app/src/main/res/values-sr/strings_contributors.xml
trans.fr = app/src/main/res/values-fr/strings_contributors.xml
......@@ -98,6 +107,7 @@ source_lang = en
trans.de = app/src/main/res/values-de/strings_info.xml
trans.lt = app/src/main/res/values-lt/strings_info.xml
trans.pt = app/src/main/res/values-pt/strings_info.xml
trans.pt_BR = app/src/main/res/values-pt-rBR/strings_info.xml
trans.sr = app/src/main/res/values-sr/strings_info.xml
trans.fr = app/src/main/res/values-fr/strings_info.xml
......@@ -108,6 +118,6 @@ source_lang = en
trans.de = app/src/main/res/values-de/strings_settings.xml
trans.lt = app/src/main/res/values-lt/strings_settings.xml
trans.pt = app/src/main/res/values-pt/strings_settings.xml
trans.pt_BR = app/src/main/res/values-pt-rBR/strings_settings.xml
trans.sr = app/src/main/res/values-sr/strings_settings.xml
trans.fr = app/src/main/res/values-fr/strings_settings.xml
......@@ -357,6 +357,10 @@ class AboutFragment : DaggerFragment() {
translators.layoutManager = LinearLayoutManager(context)
translators.itemAnimator = null
translators.adapter = TranslatorAdapter(listOf(
Translator(
name = "Janne Koschinski",
language = R.string.preference_language_entry_de
),
Translator(
name = "TDa_",
language = R.string.preference_language_entry_lt
......@@ -365,6 +369,10 @@ class AboutFragment : DaggerFragment() {
name = "Exterminador",
language = R.string.preference_language_entry_pt
),
Translator(
name = "Soni",
language = R.string.preference_language_entry_pt_br
),
Translator(
name = "Luka Ilić",
language = R.string.preference_language_entry_sr
......
/*
* Quasseldroid - Quassel client for Android
*
* Copyright (c) 2018 Janne Koschinski
* Copyright (c) 2018 The Quassel Project
*
* This program is free software: you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 3 as published
* by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package de.kuschku.quasseldroid.util.missingfeatures
import android.support.annotation.StringRes
import de.kuschku.libquassel.quassel.ExtendedFeature
data class MissingFeature(
val feature: ExtendedFeature,
@StringRes val description: Int
)
/*
* Quasseldroid - Quassel client for Android
*
* Copyright (c) 2018 Janne Koschinski
* Copyright (c) 2018 The Quassel Project
*
* This program is free software: you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 3 as published
* by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package de.kuschku.quasseldroid.util.missingfeatures
import android.support.v7.recyclerview.extensions.ListAdapter
import android.support.v7.util.DiffUtil
import android.support.v7.widget.RecyclerView
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.widget.TextView
import butterknife.BindView
import butterknife.ButterKnife
import de.kuschku.quasseldroid.R
class MissingFeaturesAdapter :
ListAdapter<MissingFeature, MissingFeaturesAdapter.MissingFeatureViewHolder>(
object : DiffUtil.ItemCallback<MissingFeature>() {
override fun areItemsTheSame(oldItem: MissingFeature, newItem: MissingFeature) =
oldItem.feature == newItem.feature
override fun areContentsTheSame(oldItem: MissingFeature, newItem: MissingFeature) =
oldItem == newItem
}
) {
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int) = MissingFeatureViewHolder(
LayoutInflater.from(parent.context).inflate(R.layout.widget_missing_feature, parent, false)
)
override fun onBindViewHolder(holder: MissingFeatureViewHolder, position: Int) =
holder.bind(getItem(position))
class MissingFeatureViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {
@BindView(R.id.name)
lateinit var name: TextView
@BindView(R.id.description)
lateinit var description: TextView
init {
ButterKnife.bind(this, itemView)
}
fun bind(item: MissingFeature) {
name.text = item.feature.name
description.setText(item.description)
}
}
}
/*
* Quasseldroid - Quassel client for Android
*
* Copyright (c) 2018 Janne Koschinski
* Copyright (c) 2018 The Quassel Project
*
* This program is free software: you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 3 as published
* by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package de.kuschku.quasseldroid.util.missingfeatures
import android.app.Dialog
import android.content.DialogInterface
import android.os.Bundle
import android.support.v4.app.DialogFragment
import android.support.v4.app.FragmentActivity
import android.support.v4.app.FragmentManager
import android.support.v7.widget.LinearLayoutManager
import android.support.v7.widget.RecyclerView
import butterknife.BindView
import butterknife.ButterKnife
import com.afollestad.materialdialogs.MaterialDialog
import de.kuschku.quasseldroid.R
import java.io.Serializable
class MissingFeaturesDialog : DialogFragment() {
val builder: Builder?
get() = arguments?.getSerializable("builder") as? Builder
@BindView(R.id.list)
lateinit var list: RecyclerView
override fun onCreateDialog(savedInstanceState: Bundle?): Dialog {
val dialog = MaterialDialog.Builder(requireContext())
.customView(R.layout.dialog_missing_features, true)
.title(R.string.label_missing_features)
.positiveText(R.string.label_accept)
.build()
ButterKnife.bind(this, dialog.customView!!)
list.layoutManager = LinearLayoutManager(list.context)
val adapter = MissingFeaturesAdapter()
list.adapter = adapter
list.itemAnimator = null
adapter.submitList(builder?.missingFeatures.orEmpty())
return dialog
}
override fun onDismiss(dialog: DialogInterface?) {
super.onDismiss(dialog)
builder?.dismissListener?.onDismiss(this)
}
fun show(context: FragmentActivity) = show(context.supportFragmentManager)
fun show(context: FragmentManager) {
dismissIfNecessary(context)
show(context, TAG)
}
private fun dismissIfNecessary(fragmentManager: FragmentManager) {
fragmentManager.findFragmentByTag(tag)?.let { frag ->
(frag as? DialogFragment)?.dismiss()
fragmentManager.beginTransaction().remove(frag).commit()
}
}
@FunctionalInterface
interface OnDismissListener {
fun onDismiss(dialog: MissingFeaturesDialog)
}
class Builder(private val fragmentManager: FragmentManager) : Serializable {
constructor(context: FragmentActivity) : this(context.supportFragmentManager)
var dismissListener: OnDismissListener? = null
var missingFeatures: List<MissingFeature>? = null
fun missingFeatures(missingFeatures: List<MissingFeature>): Builder {
this.missingFeatures = missingFeatures
return this
}
fun dismissListener(dismissListener: OnDismissListener): Builder {
this.dismissListener = dismissListener
return this
}
fun build() = MissingFeaturesDialog().apply {
arguments = Bundle().apply {
putSerializable("builder", this@Builder)
}
}
fun show() = build().show(fragmentManager)
}
companion object {
const val TAG = "[MISSING_FEATURES]"
}
}
<?xml version="1.0" encoding="utf-8"?><!--
Quasseldroid - Quassel client for Android
Copyright (c) 2018 Janne Koschinski
Copyright (c) 2018 The Quassel Project
This program is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License version 3 as published
by the Free Software Foundation.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program. If not, see <http://www.gnu.org/licenses/>.
-->
<resources></resources>
<?xml version="1.0" encoding="utf-8"?><!--
Quasseldroid - Quassel client for Android
Copyright (c) 2018 Janne Koschinski
Copyright (c) 2018 The Quassel Project
This program is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License version 3 as published
by the Free Software Foundation.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program. If not, see <http://www.gnu.org/licenses/>.
-->
<resources></resources>
<?xml version="1.0" encoding="utf-8"?><!--
Quasseldroid - Quassel client for Android
Copyright (c) 2018 Janne Koschinski
Copyright (c) 2018 The Quassel Project
This program is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License version 3 as published
by the Free Software Foundation.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program. If not, see <http://www.gnu.org/licenses/>.
-->
<resources></resources>
<?xml version="1.0" encoding="utf-8"?><!--
Quasseldroid - Quassel client for Android
Copyright (c) 2018 Janne Koschinski
Copyright (c) 2018 The Quassel Project
This program is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License version 3 as published
by the Free Software Foundation.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program. If not, see <http://www.gnu.org/licenses/>.
-->
<resources></resources>
<?xml version="1.0" encoding="utf-8"?><!--
Quasseldroid - Quassel client for Android
Copyright (c) 2018 Janne Koschinski
Copyright (c) 2018 The Quassel Project
This program is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License version 3 as published
by the Free Software Foundation.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program. If not, see <http://www.gnu.org/licenses/>.
-->
<resources></resources>
<?xml version="1.0" encoding="utf-8"?><!--
Quasseldroid - Quassel client for Android
Copyright (c) 2018 Janne Koschinski
Copyright (c) 2018 The Quassel Project
This program is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License version 3 as published
by the Free Software Foundation.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program. If not, see <http://www.gnu.org/licenses/>.
-->
<resources></resources>
<?xml version="1.0" encoding="utf-8"?><!--
Quasseldroid - Quassel client for Android
Copyright (c) 2018 Janne Koschinski
Copyright (c) 2018 The Quassel Project
This program is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License version 3 as published
by the Free Software Foundation.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program. If not, see <http://www.gnu.org/licenses/>.
-->
<resources></resources>
<?xml version="1.0" encoding="utf-8"?><!--
Quasseldroid - Quassel client for Android
Copyright (c) 2018 Janne Koschinski
Copyright (c) 2018 The Quassel Project
This program is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License version 3 as published
by the Free Software Foundation.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program. If not, see <http://www.gnu.org/licenses/>.
-->
<resources></resources>
<?xml version="1.0" encoding="utf-8"?><!--
Quasseldroid - Quassel client for Android
Copyright (c) 2018 Janne Koschinski
Copyright (c) 2018 The Quassel Project
This program is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License version 3 as published
by the Free Software Foundation.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program. If not, see <http://www.gnu.org/licenses/>.
-->
<resources></resources>
<!--
Quasseldroid - Quassel client for Android
Copyright (c) 2018 Janne Koschinski
Copyright (c) 2018 The Quassel Project
This program is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License version 3 as published
by the Free Software Foundation.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program. If not, see <http://www.gnu.org/licenses/>.
-->
<resources></resources>
<?xml version="1.0" encoding="utf-8"?><!--
Quasseldroid - Quassel client for Android
Copyright (c) 2018 Janne Koschinski
Copyright (c) 2018 The Quassel Project
This program is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License version 3 as published
by the Free Software Foundation.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program. If not, see <http://www.gnu.org/licenses/>.
-->
<resources></resources>
......@@ -85,6 +85,7 @@
<string name="preference_language_entry_de" translatable="false">Deutsch</string>
<string name="preference_language_entry_lt" translatable="false">Lietuvių</string>
<string name="preference_language_entry_pt" translatable="false">Português</string>
<string name="preference_language_entry_pt_br" translatable="false">Português (Brasil)</string>
<string name="preference_language_entry_sr" translatable="false">Srpski (latinica)</string>
<string-array name="preference_language_entries" translatable="false">
<item>@string/preference_language_entry_auto</item>
......@@ -92,6 +93,7 @@
<item>@string/preference_language_entry_de</item>
<item>@string/preference_language_entry_lt</item>
<item>@string/preference_language_entry_pt</item>
<!--<item>@string/preference_language_entry_pt_br</item>-->
<!--<item>@string/preference_language_entry_sr</item>-->
</string-array>
<string-array name="preference_language_entryvalues" translatable="false">
......@@ -100,6 +102,7 @@
<item>de</item>
<item>lt</item>
<item>pt</item>
<!--<item>pt_BR</item>-->
<!--<item>sr</item>-->
</string-array>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment