summaryrefslogtreecommitdiffhomepage
path: root/android/src
diff options
context:
space:
mode:
Diffstat (limited to 'android/src')
-rw-r--r--android/src/main/kotlin/net/mullvad/mullvadvpn/ProblemReportFragment.kt16
-rw-r--r--android/src/main/kotlin/net/mullvad/mullvadvpn/SettingsFragment.kt11
-rw-r--r--android/src/main/res/layout/problem_report.xml63
-rw-r--r--android/src/main/res/values/colors.xml1
-rw-r--r--android/src/main/res/values/strings.xml8
5 files changed, 96 insertions, 3 deletions
diff --git a/android/src/main/kotlin/net/mullvad/mullvadvpn/ProblemReportFragment.kt b/android/src/main/kotlin/net/mullvad/mullvadvpn/ProblemReportFragment.kt
new file mode 100644
index 0000000000..d7402fbe3f
--- /dev/null
+++ b/android/src/main/kotlin/net/mullvad/mullvadvpn/ProblemReportFragment.kt
@@ -0,0 +1,16 @@
+package net.mullvad.mullvadvpn
+
+import android.os.Bundle
+import android.support.v4.app.Fragment
+import android.view.LayoutInflater
+import android.view.ViewGroup
+
+import org.joda.time.DateTime
+
+class ProblemReportFragment : Fragment() {
+ override fun onCreateView(
+ inflater: LayoutInflater,
+ container: ViewGroup?,
+ savedInstanceState: Bundle?
+ ) = inflater.inflate(R.layout.problem_report, container, false)
+}
diff --git a/android/src/main/kotlin/net/mullvad/mullvadvpn/SettingsFragment.kt b/android/src/main/kotlin/net/mullvad/mullvadvpn/SettingsFragment.kt
index ee89ed7945..3400d43e58 100644
--- a/android/src/main/kotlin/net/mullvad/mullvadvpn/SettingsFragment.kt
+++ b/android/src/main/kotlin/net/mullvad/mullvadvpn/SettingsFragment.kt
@@ -34,7 +34,12 @@ class SettingsFragment : Fragment() {
activity?.finishAndRemoveTask()
}
- view.findViewById<View>(R.id.account).setOnClickListener { openAccountSettings() }
+ view.findViewById<View>(R.id.account).setOnClickListener {
+ openSubFragment(AccountFragment())
+ }
+ view.findViewById<View>(R.id.report_a_problem).setOnClickListener {
+ openSubFragment(ProblemReportFragment())
+ }
remainingTimeLabel = RemainingTimeLabel(parentActivity, view)
@@ -51,7 +56,7 @@ class SettingsFragment : Fragment() {
super.onDestroyView()
}
- private fun openAccountSettings() {
+ private fun openSubFragment(fragment: Fragment) {
fragmentManager?.beginTransaction()?.apply {
setCustomAnimations(
R.anim.fragment_enter_from_right,
@@ -59,7 +64,7 @@ class SettingsFragment : Fragment() {
R.anim.fragment_half_enter_from_left,
R.anim.fragment_exit_to_right
)
- replace(R.id.main_fragment, AccountFragment())
+ replace(R.id.main_fragment, fragment)
addToBackStack(null)
commit()
}
diff --git a/android/src/main/res/layout/problem_report.xml b/android/src/main/res/layout/problem_report.xml
new file mode 100644
index 0000000000..8dae3f3b11
--- /dev/null
+++ b/android/src/main/res/layout/problem_report.xml
@@ -0,0 +1,63 @@
+<LinearLayout
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:background="@color/darkBlue"
+ android:orientation="vertical"
+ android:gravity="left"
+ android:elevation="2dp"
+ >
+ <LinearLayout android:id="@+id/back"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:padding="12dp"
+ android:orientation="horizontal"
+ android:gravity="center_vertical | left"
+ android:clickable="true"
+ android:background="?android:attr/selectableItemBackground"
+ >
+ <ImageView
+ android:layout_width="24dp"
+ android:layout_height="24dp"
+ android:layout_marginRight="8dp"
+ android:src="@drawable/icon_back"
+ />
+ <TextView
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:textColor="@color/white60"
+ android:textSize="13sp"
+ android:textStyle="bold"
+ android:text="@string/settings"
+ />
+ </LinearLayout>
+ <LinearLayout
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:layout_marginTop="4dp"
+ android:layout_marginBottom="16dp"
+ android:orientation="vertical"
+ >
+ <TextView
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_weight="0"
+ android:layout_marginBottom="8dp"
+ android:layout_marginHorizontal="24dp"
+ android:textColor="@color/white"
+ android:textSize="32sp"
+ android:textStyle="bold"
+ android:text="@string/report_a_problem"
+ />
+ <TextView
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_weight="0"
+ android:layout_marginBottom="24dp"
+ android:layout_marginHorizontal="24dp"
+ android:textColor="@color/white80"
+ android:textSize="13sp"
+ android:text="@string/problem_report_description"
+ />
+ </LinearLayout>
+</LinearLayout>
diff --git a/android/src/main/res/values/colors.xml b/android/src/main/res/values/colors.xml
index 0e7b0cea4e..d62bb53035 100644
--- a/android/src/main/res/values/colors.xml
+++ b/android/src/main/res/values/colors.xml
@@ -6,6 +6,7 @@
<color name="blue20">#33294D73</color>
<color name="darkBlue">#192E45</color>
<color name="white">#FFFFFF</color>
+ <color name="white80">#CCFFFFFF</color>
<color name="white60">#99FFFFFF</color>
<color name="white40">#66FFFFFF</color>
<color name="white20">#33FFFFFF</color>
diff --git a/android/src/main/res/values/strings.xml b/android/src/main/res/values/strings.xml
index 693afa8b79..8bca084626 100644
--- a/android/src/main/res/values/strings.xml
+++ b/android/src/main/res/values/strings.xml
@@ -25,6 +25,14 @@
<string name="paid_until">Paid until</string>
<string name="log_out">Log out</string>
+ <string name="problem_report_description">
+ To help you more effectively, your app\'s log file will be attached to this message. Your
+ data will remain secure and private, as it is anonymised before being sent over an encrypted
+ channel.
+ </string>
+ <string name="user_email_hint">Your email (optional)</string>
+ <string name="user_message_hint">Describe your problem</string>
+
<string name="unsecured_connection">Unsecured connection</string>
<string name="creating_secure_connection">Creating secure connection</string>
<string name="secure_connection">Secure connection</string>