1 <?xml version="1.0" encoding="utf-8"?>
4 Copyright © 2016-2018 Soren Stoutner <soren@stoutner.com>.
6 This file is part of Privacy Browser <https://www.stoutner.com/privacy-browser>.
8 Privacy Browser is free software: you can redistribute it and/or modify
9 it under the terms of the GNU General Public License as published by
10 the Free Software Foundation, either version 3 of the License, or
11 (at your option) any later version.
13 Privacy Browser is distributed in the hope that it will be useful,
14 but WITHOUT ANY WARRANTY; without even the implied warranty of
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 GNU General Public License for more details.
18 You should have received a copy of the GNU General Public License
19 along with Privacy Browser. If not, see <http://www.gnu.org/licenses/>. -->
21 <!-- The `ScrollView` allows the `LinearLayout` to scroll if it exceeds the height of the page. -->
23 xmlns:android="http://schemas.android.com/apk/res/android"
24 xmlns:tools="http://schemas.android.com/tools"
25 android:layout_height="wrap_content"
26 android:layout_width="match_parent"
27 android:background="?attr/aboutBackground" >
30 android:layout_height="wrap_content"
31 android:layout_width="match_parent"
32 android:orientation="vertical"
33 android:padding="16dp" >
35 <!-- The `RelativeLayout` contains the header. -->
37 android:layout_width="match_parent"
38 android:layout_height="wrap_content" >
40 <!--`tools:ignore="RtlSymmetry"` suppressed the lint warning about adding `android:paddingStart`, which wouldn't work with this layout.
41 `tools:ignore="ContentDescription"` suppresses the lint warning about supplying a content description for the `ImageView`,
42 which isn't needed in this case because the `ImageView` is only decorative. -->
44 android:id="@+id/about_version_icon"
45 android:layout_height="wrap_content"
46 android:layout_width="wrap_content"
47 android:src="@mipmap/privacy_browser"
48 android:paddingTop="10dp"
49 android:paddingEnd="5dp"
50 tools:ignore="RtlSymmetry,ContentDescription" />
53 android:id="@+id/about_version_privacy_browser_textview"
54 android:layout_height="wrap_content"
55 android:layout_width="wrap_content"
56 android:text="@string/privacy_browser"
57 android:textStyle="bold"
58 android:textSize="22sp"
59 android:textColor="?attr/aboutTitle"
60 android:paddingTop="12dp"
61 android:layout_toEndOf="@id/about_version_icon" />
64 android:id="@+id/about_version_number"
65 android:layout_height="wrap_content"
66 android:layout_width="wrap_content"
67 android:textColor="?attr/aboutText"
68 android:layout_below="@id/about_version_privacy_browser_textview"
69 android:layout_toEndOf="@id/about_version_icon" />
72 <!-- The purpose of this `LinearLayout` is to provide padding on the start of the `TextViews` to make them line up with `about_version_icon`.
73 Although we don't need it, we have to include `android:paddingEnd` to make lint happy. -->
75 android:layout_height="wrap_content"
76 android:layout_width="match_parent"
77 android:orientation="vertical"
78 android:paddingTop="16dp"
79 android:paddingStart="4dp"
80 android:paddingEnd="0dp" >
84 android:layout_height="wrap_content"
85 android:layout_width="wrap_content"
86 android:text="@string/hardware"
87 android:textStyle="bold"
88 android:textSize="18sp"
89 android:textColor="?attr/aboutTitle" />
92 android:id="@+id/about_version_brand"
93 android:layout_height="wrap_content"
94 android:layout_width="wrap_content" />
97 android:id="@+id/about_version_manufacturer"
98 android:layout_height="wrap_content"
99 android:layout_width="wrap_content" />
102 android:id="@+id/about_version_model"
103 android:layout_height="wrap_content"
104 android:layout_width="wrap_content" />
107 android:id="@+id/about_version_device"
108 android:layout_height="wrap_content"
109 android:layout_width="wrap_content" />
112 android:id="@+id/about_version_bootloader"
113 android:layout_height="wrap_content"
114 android:layout_width="wrap_content" />
117 android:id="@+id/about_version_radio"
118 android:layout_height="wrap_content"
119 android:layout_width="wrap_content" />
123 android:layout_height="wrap_content"
124 android:layout_width="wrap_content"
125 android:text="@string/software"
126 android:textStyle="bold"
127 android:textSize="18sp"
128 android:textColor="?attr/aboutTitle"
129 android:paddingTop="12dp" />
132 android:id="@+id/about_version_android"
133 android:layout_height="wrap_content"
134 android:layout_width="wrap_content" />
137 android:id="@+id/about_version_securitypatch"
138 android:layout_height="wrap_content"
139 android:layout_width="wrap_content" />
142 android:id="@+id/about_version_build"
143 android:layout_height="wrap_content"
144 android:layout_width="wrap_content" />
147 android:id="@+id/about_version_webkit"
148 android:layout_height="wrap_content"
149 android:layout_width="wrap_content" />
152 android:id="@+id/about_version_chrome"
153 android:layout_height="wrap_content"
154 android:layout_width="wrap_content" />
157 android:id="@+id/about_version_orbot"
158 android:layout_height="wrap_content"
159 android:layout_width="wrap_content" />
161 <!-- Block Lists. -->
163 android:layout_height="wrap_content"
164 android:layout_width="wrap_content"
165 android:text="@string/blocklists"
166 android:textStyle="bold"
167 android:textSize="18sp"
168 android:textColor="?attr/aboutTitle"
169 android:paddingTop="12dp" />
172 android:id="@+id/about_version_easylist"
173 android:layout_height="wrap_content"
174 android:layout_width="wrap_content" />
177 android:id="@+id/about_version_easyprivacy"
178 android:layout_height="wrap_content"
179 android:layout_width="wrap_content" />
182 android:id="@+id/about_version_fanboy-annoyance"
183 android:layout_height="wrap_content"
184 android:layout_width="wrap_content" />
187 android:id="@+id/about_version_fanboy-social"
188 android:layout_height="wrap_content"
189 android:layout_width="wrap_content" />
192 android:id="@+id/about_version_ultraprivacy"
193 android:layout_height="wrap_content"
194 android:layout_width="wrap_content" />
196 <!-- Package Signature. -->
198 android:layout_height="wrap_content"
199 android:layout_width="wrap_content"
200 android:text="@string/package_signature"
201 android:textStyle="bold"
202 android:textSize="18sp"
203 android:textColor="?attr/aboutTitle"
204 android:paddingTop="12dp" />
207 android:id="@+id/about_version_certificate_issuer_dn"
208 android:layout_height="wrap_content"
209 android:layout_width="wrap_content" />
212 android:id="@+id/about_version_certificate_subject_dn"
213 android:layout_height="wrap_content"
214 android:layout_width="wrap_content" />
217 android:id="@+id/about_version_certificate_start_date"
218 android:layout_height="wrap_content"
219 android:layout_width="wrap_content" />
222 android:id="@+id/about_version_certificate_end_date"
223 android:layout_height="wrap_content"
224 android:layout_width="wrap_content" />
227 android:id="@+id/about_version_certificate_version"
228 android:layout_height="wrap_content"
229 android:layout_width="wrap_content" />
232 android:id="@+id/about_version_certificate_serial_number"
233 android:layout_height="wrap_content"
234 android:layout_width="wrap_content" />
237 android:id="@+id/about_version_certificate_signature_algorithm"
238 android:layout_height="wrap_content"
239 android:layout_width="wrap_content" />