Merge lp:~trb143/openlp/android_fixes into lp:openlp/android2

Proposed by Tim Bentley
Status: Merged
Merged at revision: 39
Proposed branch: lp:~trb143/openlp/android_fixes
Merge into: lp:openlp/android2
Diff against target: 2928 lines (+1325/-368)
75 files modified
app/build.gradle (+18/-21)
app/src/main/java/org/openlp/android2/OpenLP.java (+6/-2)
app/src/main/java/org/openlp/android2/api/Api.java (+1/-1)
app/src/main/java/org/openlp/android2/common/JsonHelpers.java (+4/-1)
app/src/main/java/org/openlp/android2/common/NavigationOptions.java (+1/-1)
app/src/main/java/org/openlp/android2/common/OpenLPFragment.java (+79/-38)
app/src/main/java/org/openlp/android2/common/OpenLPSSLSocketFactory.java (+0/-66)
app/src/main/java/org/openlp/android2/common/OpenLPURLBuilder.java (+86/-0)
app/src/main/java/org/openlp/android2/common/RequestQueueService.java (+99/-0)
app/src/main/java/org/openlp/android2/common/StateHolder.java (+22/-0)
app/src/main/java/org/openlp/android2/dialogs/AlertDisplayDialog.java (+1/-3)
app/src/main/java/org/openlp/android2/dialogs/BlankDisplayDialog.java (+4/-6)
app/src/main/java/org/openlp/android2/dialogs/SearchSelectionDialog.java (+135/-0)
app/src/main/java/org/openlp/android2/fragments/AboutFragment.java (+1/-1)
app/src/main/java/org/openlp/android2/fragments/HomeFragment.java (+1/-1)
app/src/main/java/org/openlp/android2/fragments/LiveListFragment.java (+17/-13)
app/src/main/java/org/openlp/android2/fragments/LiveWebFragment.java (+1/-1)
app/src/main/java/org/openlp/android2/fragments/NavigationDrawerFragment.java (+1/-1)
app/src/main/java/org/openlp/android2/fragments/SearchFragment.java (+357/-0)
app/src/main/java/org/openlp/android2/fragments/ServiceListFragment.java (+11/-7)
app/src/main/java/org/openlp/android2/fragments/StageWebFragment.java (+1/-1)
app/src/main/java/org/openlp/android2/fragments/WebFragment.java (+5/-12)
app/src/main/res/drawable/custom_border.xml (+11/-0)
app/src/main/res/drawable/customborder.xml (+0/-11)
app/src/main/res/drawable/search_list.xml (+11/-0)
app/src/main/res/layout-xlarge/fragment_livelist_list.xml (+10/-1)
app/src/main/res/layout/activity_main.xml (+1/-1)
app/src/main/res/layout/fragment_item_grid.xml (+0/-12)
app/src/main/res/layout/fragment_livelist_grid.xml (+0/-45)
app/src/main/res/layout/fragment_livelist_list.xml (+13/-15)
app/src/main/res/layout/fragment_search.xml (+77/-0)
app/src/main/res/layout/fragment_service_list.xml (+15/-3)
app/src/main/res/layout/fragment_servicelist_grid.xml (+0/-20)
app/src/main/res/layout/search_action_dialog.xml (+40/-0)
app/src/main/res/layout/search_result_row.xml (+18/-0)
app/src/main/res/layout/spinner_dropdown_item.xml (+11/-0)
app/src/main/res/layout/spinner_list_item.xml (+11/-0)
app/src/main/res/menu/open_l.xml (+0/-4)
app/src/main/res/values-af/strings.xml (+30/-1)
app/src/main/res/values-bg/strings.xml (+2/-1)
app/src/main/res/values-cs/strings.xml (+0/-2)
app/src/main/res/values-da/strings.xml (+4/-2)
app/src/main/res/values-de/strings.xml (+6/-6)
app/src/main/res/values-en-rGB/strings.xml (+0/-2)
app/src/main/res/values-en-rZA/strings.xml (+0/-2)
app/src/main/res/values-es/strings.xml (+3/-2)
app/src/main/res/values-et/strings.xml (+1/-2)
app/src/main/res/values-fi/strings.xml (+0/-2)
app/src/main/res/values-fr/strings.xml (+31/-1)
app/src/main/res/values-hu/strings.xml (+4/-6)
app/src/main/res/values-id/strings.xml (+4/-2)
app/src/main/res/values-it/strings.xml (+51/-2)
app/src/main/res/values-ja/strings.xml (+15/-1)
app/src/main/res/values-ko/strings.xml (+5/-0)
app/src/main/res/values-large/refs.xml (+0/-1)
app/src/main/res/values-lt/strings.xml (+0/-2)
app/src/main/res/values-lv/strings.xml (+48/-1)
app/src/main/res/values-nb/strings.xml (+0/-2)
app/src/main/res/values-nl/strings.xml (+4/-2)
app/src/main/res/values-nn/strings.xml (+2/-0)
app/src/main/res/values-pap/strings.xml (+2/-1)
app/src/main/res/values-pl/strings.xml (+6/-2)
app/src/main/res/values-pt-rBR/strings.xml (+7/-4)
app/src/main/res/values-ro/strings.xml (+0/-2)
app/src/main/res/values-ru/strings.xml (+3/-8)
app/src/main/res/values-sk/strings.xml (+0/-2)
app/src/main/res/values-sv/strings.xml (+0/-2)
app/src/main/res/values-sw600dp/refs.xml (+0/-2)
app/src/main/res/values-uk/strings.xml (+6/-2)
app/src/main/res/values-zh-rTW/strings.xml (+0/-2)
app/src/main/res/values/keyStrings.xml (+0/-2)
app/src/main/res/values/strings.xml (+2/-2)
app/src/main/res/xml/pref_general.xml (+1/-1)
app/src/main/res/xml/pref_notification.xml (+0/-6)
fixssl.iml (+19/-0)
To merge this branch: bzr merge lp:~trb143/openlp/android_fixes
Reviewer Review Type Date Requested Status
Tomas Groth Approve
Raoul Snyman Pending
Review via email: mp+310577@code.launchpad.net

This proposal supersedes a proposal from 2016-11-10.

Description of the change

Version 6 release

To post a comment you must log in.
Revision history for this message
Raoul Snyman (raoul-snyman) wrote : Posted in a previous version of this proposal

Text conflict in app/app.iml

review: Needs Fixing
Revision history for this message
Tomas Groth (tomasgroth) :
review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'app/build.gradle'
2--- app/build.gradle 2016-01-11 20:02:36 +0000
3+++ app/build.gradle 2016-11-10 19:40:57 +0000
4@@ -1,17 +1,16 @@
5 apply plugin: 'com.android.application'
6-
7 project.archivesBaseName = 'OpenLP'
8-
9 android {
10- compileSdkVersion 22
11- buildToolsVersion "21.1.2"
12+ compileSdkVersion 25
13+ buildToolsVersion "25"
14
15 defaultConfig {
16 applicationId "org.openlp.android2"
17- minSdkVersion 15
18- targetSdkVersion 22
19- versionCode 5
20+ minSdkVersion 16
21+ targetSdkVersion 25
22+ versionCode 6
23 versionName "2.0"
24+ vectorDrawables.useSupportLibrary = true
25 }
26 android {
27 lintOptions {
28@@ -19,6 +18,9 @@
29 }
30 }
31 buildTypes {
32+ debug {
33+ debuggable true
34+ }
35 release {
36 minifyEnabled false
37 proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
38@@ -26,20 +28,15 @@
39 }
40 testOptions {
41 unitTests.returnDefaultValues = true
42+ }
43+
44+ dependencies {
45+ compile fileTree(include: ['*.jar'], dir: 'libs')
46+ compile 'com.android.support:appcompat-v7:25.0.0'
47+ compile 'com.android.support:support-v4:25.0.0'
48+ compile 'com.android.support:design:25.0.0'
49+ }
50 }
51-
52 dependencies {
53- compile fileTree(include: ['*.jar'], dir: 'libs')
54- compile 'com.android.support:appcompat-v7:22.2.1'
55- compile 'com.android.support:support-v4:22.2.1'
56- compile 'com.android.support:design:22.2.1'
57- compile 'com.loopj.android:android-async-http:1.4.6'
58- testCompile 'junit:junit:4.12'
59- testCompile 'org.easytesting:fest:1.0.16'
60- testCompile 'com.squareup:fest-android:1.0.8'
61- testCompile('org.robolectric:robolectric:3.0-rc2') {
62- exclude group: 'commons-logging', module: 'commons-logging'
63- exclude group: 'org.apache.httpcomponents', module: 'httpclient'
64- }
65-}
66+ compile files('libs/classes.jar')
67 }
68\ No newline at end of file
69
70=== added file 'app/libs/classes.jar'
71Binary files app/libs/classes.jar 1970-01-01 00:00:00 +0000 and app/libs/classes.jar 2016-11-10 19:40:57 +0000 differ
72=== modified file 'app/src/main/java/org/openlp/android2/OpenLP.java'
73--- app/src/main/java/org/openlp/android2/OpenLP.java 2016-01-09 11:10:39 +0000
74+++ app/src/main/java/org/openlp/android2/OpenLP.java 2016-11-10 19:40:57 +0000
75@@ -1,7 +1,7 @@
76 /******************************************************************************
77 * OpenLP - Open Source Lyrics Projection *
78 * --------------------------------------------------------------------------- *
79- * Copyright (c) 2011-2015 OpenLP Android Developers *
80+ * Copyright (c) 2011-2016 OpenLP Android Developers *
81 * --------------------------------------------------------------------------- *
82 * This program is free software; you can redistribute it and/or modify it *
83 * under the terms of the GNU General Public License as published by the Free *
84@@ -35,6 +35,8 @@
85
86 import org.openlp.android2.activities.SettingsActivity;
87 import org.openlp.android2.common.NavigationOptions;
88+import org.openlp.android2.common.OpenLPURLBuilder;
89+import org.openlp.android2.common.StateHolder;
90 import org.openlp.android2.dialogs.AlertDisplayDialog;
91 import org.openlp.android2.dialogs.BlankDisplayDialog;
92 import org.openlp.android2.fragments.AboutFragment;
93@@ -65,6 +67,8 @@
94 protected void onCreate(Bundle savedInstanceState) {
95 super.onCreate(savedInstanceState);
96 setContentView(R.layout.activity_main);
97+ OpenLPURLBuilder.getInstance().setContext(this);
98+ StateHolder.getInstance().setContext(this);
99
100 doPreferenceCheck();
101
102@@ -140,7 +144,7 @@
103 .replace(R.id.container_left, ServiceListFragment.newInstance(), "servicelist")
104 .commit();
105 fragmentManager.beginTransaction()
106- .replace(R.id.container_right, LiveListFragment.newInstance())
107+ .replace(R.id.container_right, LiveListFragment.newInstance(), "livelist")
108 .commit();
109 mTitle = getString(R.string.live_list);
110 toggerContainer(R.id.next_button, View.VISIBLE);
111
112=== modified file 'app/src/main/java/org/openlp/android2/api/Api.java'
113--- app/src/main/java/org/openlp/android2/api/Api.java 2015-01-19 21:09:12 +0000
114+++ app/src/main/java/org/openlp/android2/api/Api.java 2016-11-10 19:40:57 +0000
115@@ -1,7 +1,7 @@
116 /******************************************************************************
117 * OpenLP - Open Source Lyrics Projection *
118 * --------------------------------------------------------------------------- *
119- * Copyright (c) 2011-2015 OpenLP Android Developers *
120+ * Copyright (c) 2011-2016 OpenLP Android Developers *
121 * --------------------------------------------------------------------------- *
122 * This program is free software; you can redistribute it and/or modify it *
123 * under the terms of the GNU General Public License as published by the Free *
124
125=== modified file 'app/src/main/java/org/openlp/android2/common/JsonHelpers.java'
126--- app/src/main/java/org/openlp/android2/common/JsonHelpers.java 2015-11-22 14:56:47 +0000
127+++ app/src/main/java/org/openlp/android2/common/JsonHelpers.java 2016-11-10 19:40:57 +0000
128@@ -1,7 +1,7 @@
129 /******************************************************************************
130 * OpenLP - Open Source Lyrics Projection *
131 * --------------------------------------------------------------------------- *
132- * Copyright (c) 2011-2015 OpenLP Android Developers *
133+ * Copyright (c) 2011-2016 OpenLP Android Developers *
134 * --------------------------------------------------------------------------- *
135 * This program is free software; you can redistribute it and/or modify it *
136 * under the terms of the GNU General Public License as published by the Free *
137@@ -18,6 +18,8 @@
138 *******************************************************************************/
139 package org.openlp.android2.common;
140
141+import android.util.Log;
142+
143 import org.json.JSONException;
144 import org.json.JSONObject;
145 import org.json.JSONStringer;
146@@ -37,6 +39,7 @@
147 responseJSON = new JSONStringer().object().key("request").value(jo)
148 .endObject().toString();
149 responseJSON = URLEncoder.encode(responseJSON, "UTF-8");
150+ Log.d(LOG_TAG, String.format("createRequestJSON: %s : %s : %s", key, value, responseJSON));
151 return responseJSON;
152 } catch (JSONException e) {
153 throw new JSONHandlerException(e);
154
155=== modified file 'app/src/main/java/org/openlp/android2/common/NavigationOptions.java'
156--- app/src/main/java/org/openlp/android2/common/NavigationOptions.java 2015-10-18 18:43:08 +0000
157+++ app/src/main/java/org/openlp/android2/common/NavigationOptions.java 2016-11-10 19:40:57 +0000
158@@ -1,7 +1,7 @@
159 /******************************************************************************
160 * OpenLP - Open Source Lyrics Projection *
161 * --------------------------------------------------------------------------- *
162- * Copyright (c) 2011-2015 OpenLP Android Developers *
163+ * Copyright (c) 2011-2016 OpenLP Android Developers *
164 * --------------------------------------------------------------------------- *
165 * This program is free software; you can redistribute it and/or modify it *
166 * under the terms of the GNU General Public License as published by the Free *
167
168=== modified file 'app/src/main/java/org/openlp/android2/common/OpenLPFragment.java'
169--- app/src/main/java/org/openlp/android2/common/OpenLPFragment.java 2015-10-06 22:40:40 +0000
170+++ app/src/main/java/org/openlp/android2/common/OpenLPFragment.java 2016-11-10 19:40:57 +0000
171@@ -1,7 +1,7 @@
172 /******************************************************************************
173 * OpenLP - Open Source Lyrics Projection *
174 * --------------------------------------------------------------------------- *
175- * Copyright (c) 2011-2015 OpenLP Android Developers *
176+ * Copyright (c) 2011-2016 OpenLP Android Developers *
177 * --------------------------------------------------------------------------- *
178 * This program is free software; you can redistribute it and/or modify it *
179 * under the terms of the GNU General Public License as published by the Free *
180@@ -26,18 +26,30 @@
181
182 import android.widget.ListView;
183 import android.widget.Toast;
184-import com.loopj.android.http.AsyncHttpClient;
185-import com.loopj.android.http.TextHttpResponseHandler;
186-import org.apache.http.Header;
187+
188+import com.android.volley.AuthFailureError;
189+import com.android.volley.ClientError;
190+import com.android.volley.DefaultRetryPolicy;
191+import com.android.volley.NetworkError;
192+import com.android.volley.NoConnectionError;
193+import com.android.volley.ParseError;
194+import com.android.volley.Request;
195+import com.android.volley.Response;
196+import com.android.volley.ServerError;
197+import com.android.volley.TimeoutError;
198+import com.android.volley.VolleyError;
199+import com.android.volley.toolbox.StringRequest;
200 import org.openlp.android2.R;
201 import org.openlp.android2.api.Api;
202
203+import java.util.HashMap;
204+import java.util.Map;
205+
206 abstract public class OpenLPFragment extends ListFragment{
207
208 private String LOG_TAG = OpenLPFragment.class.getName();
209 public Context context;
210- protected String calledURL;
211- protected OpenLPHttpClient httpClient;
212+ protected String urlcalled;
213 protected String updateUrl;
214
215 abstract public void itemClicked(int position);
216@@ -48,42 +60,71 @@
217 itemClicked(position);
218 }
219
220- private static AsyncHttpClient client = new AsyncHttpClient();
221-
222 protected void refreshDisplay(){}
223 protected void populateDisplay(String responseString, boolean inError) {}
224 protected void processUpdate(String responseString, boolean inError) {}
225
226- protected void triggerTextRequest(String url) {
227- calledURL = url;
228- Log.d(LOG_TAG, "Trigger Request for url " + url);
229- String callurl = String.format("%s%s", httpClient.getAbsoluteUrl(client), url );
230- client.get(callurl, null, new TextHttpResponseHandler() {
231- @Override
232- public void onSuccess(int statusCode, Header[] headers, String responseString) {
233- // called when response HTTP status is "200 OK"
234- manageResponse(responseString, true);
235- }
236- @Override
237- public void onFailure(int statusCode, Header[] headers, String responseString, Throwable throwable) {
238- // called when response HTTP status is "4XX" (eg. 401, 403, 404)
239- if (statusCode == 401) {
240- Toast.makeText(context, R.string.httpreturn_unauthorised, Toast.LENGTH_LONG).show();
241- } else {
242- Toast.makeText(context, R.string.unable, Toast.LENGTH_LONG).show();
243- }
244- manageResponse(responseString, false);
245- }
246- });
247- }
248-
249- public void manageResponse(String response, boolean notInError) {
250- if (calledURL.equals(updateUrl)) {
251- populateDisplay(response, notInError);
252- }else {
253- processUpdate(response, notInError);
254- }
255- }
256+ protected void triggerTextRequest(final String urlbase) {
257+ String url = RequestQueueService.getInstance(this.context).getUrl(urlbase);
258+ updateUrl = urlbase;
259+
260+ StringRequest request = new StringRequest(
261+ Request.Method.GET,
262+ url,
263+ listener,
264+ errorListener) {
265+
266+ @Override
267+ public Map<String, String> getHeaders() throws AuthFailureError {
268+ return createBasicAuthHeader("user", "passwd");
269+ }
270+ };
271+ //Set a retry policy in case of SocketTimeout & ConnectionTimeout Exceptions.
272+ // Volley does retry for you if you have specified the policy.
273+ request.setRetryPolicy(new DefaultRetryPolicy(
274+ RequestQueueService.getInstance(this.context).getConnectionTimeout(),
275+ DefaultRetryPolicy.DEFAULT_MAX_RETRIES, DefaultRetryPolicy.DEFAULT_BACKOFF_MULT));
276+ request.setTag("OpenLP");
277+ RequestQueueService.getInstance(this.context).addToRequestQueue(request);
278+ }
279+
280+ Map<String, String> createBasicAuthHeader(String username, String password) {
281+ Map<String, String> headers = new HashMap<String, String>();
282+ headers.put("Authorization", RequestQueueService.getInstance(context).getBasicAuth());
283+
284+ return headers;
285+ }
286+
287+ Response.Listener<String> listener = new Response.Listener<String>() {
288+ @Override
289+ public void onResponse(String response) {
290+ if (urlcalled.equals(updateUrl)) {
291+ populateDisplay(response, true);
292+ } else {
293+ processUpdate(response, true);
294+ }
295+ }
296+ };
297+
298+ Response.ErrorListener errorListener = new Response.ErrorListener() {
299+ @Override
300+ public void onErrorResponse(VolleyError error) {
301+ Log.d(LOG_TAG, String.format("Call response error = %s", error.toString()));
302+ if (error instanceof NetworkError) {
303+ } else if (error instanceof ClientError) {
304+ } else if (error instanceof ServerError) {
305+ } else if (error instanceof AuthFailureError) {
306+ Toast.makeText(context, R.string.httpreturn_unauthorised,
307+ Toast.LENGTH_LONG).show();
308+ } else if (error instanceof ParseError) {
309+ } else if (error instanceof NoConnectionError) {
310+ } else if (error instanceof TimeoutError) {
311+ }
312+ Toast.makeText(context, R.string.unable,
313+ Toast.LENGTH_LONG).show();
314+
315+ }
316+ };
317
318 public void next() {
319 Log.d(LOG_TAG, "Going to next slide");
320
321=== removed file 'app/src/main/java/org/openlp/android2/common/OpenLPSSLSocketFactory.java'
322--- app/src/main/java/org/openlp/android2/common/OpenLPSSLSocketFactory.java 2015-01-19 21:09:12 +0000
323+++ app/src/main/java/org/openlp/android2/common/OpenLPSSLSocketFactory.java 1970-01-01 00:00:00 +0000
324@@ -1,66 +0,0 @@
325-/******************************************************************************
326- * OpenLP - Open Source Lyrics Projection *
327- * --------------------------------------------------------------------------- *
328- * Copyright (c) 2011-2015 OpenLP Android Developers *
329- * --------------------------------------------------------------------------- *
330- * This program is free software; you can redistribute it and/or modify it *
331- * under the terms of the GNU General Public License as published by the Free *
332- * Software Foundation; version 2 of the License. *
333- * *
334- * This program is distributed in the hope that it will be useful, but WITHOUT *
335- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or *
336- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for *
337- * more details. *
338- * *
339- * You should have received a copy of the GNU General Public License along *
340- * with this program; if not, write to the Free Software Foundation, Inc., 59 *
341- * Temple Place, Suite 330, Boston, MA 02111-1307 USA *
342- *******************************************************************************/
343-package org.openlp.android2.common;
344-
345-import org.apache.http.conn.ssl.SSLSocketFactory;
346-
347-import javax.net.ssl.SSLContext;
348-import javax.net.ssl.TrustManager;
349-import javax.net.ssl.X509TrustManager;
350-import java.io.IOException;
351-import java.net.Socket;
352-import java.net.UnknownHostException;
353-import java.security.*;
354-import java.security.cert.CertificateException;
355-import java.security.cert.X509Certificate;
356-
357-/**
358- * Created by tim on 14/11/14.
359- */
360-public class OpenLPSSLSocketFactory extends SSLSocketFactory {
361- SSLContext sslContext = SSLContext.getInstance("TLS");
362-
363- public OpenLPSSLSocketFactory(KeyStore truststore) throws NoSuchAlgorithmException, KeyManagementException, KeyStoreException, UnrecoverableKeyException {
364- super(truststore);
365-
366- TrustManager tm = new X509TrustManager() {
367- public void checkClientTrusted(X509Certificate[] chain, String authType) throws CertificateException {
368- }
369-
370- public void checkServerTrusted(X509Certificate[] chain, String authType) throws CertificateException {
371- }
372-
373- public X509Certificate[] getAcceptedIssuers() {
374- return null;
375- }
376- };
377-
378- sslContext.init(null, new TrustManager[] { tm }, null);
379- }
380-
381- @Override
382- public Socket createSocket(Socket socket, String host, int port, boolean autoClose) throws IOException, UnknownHostException {
383- return sslContext.getSocketFactory().createSocket(socket, host, port, autoClose);
384- }
385-
386- @Override
387- public Socket createSocket() throws IOException {
388- return sslContext.getSocketFactory().createSocket();
389- }
390-}
391
392=== added file 'app/src/main/java/org/openlp/android2/common/OpenLPURLBuilder.java'
393--- app/src/main/java/org/openlp/android2/common/OpenLPURLBuilder.java 1970-01-01 00:00:00 +0000
394+++ app/src/main/java/org/openlp/android2/common/OpenLPURLBuilder.java 2016-11-10 19:40:57 +0000
395@@ -0,0 +1,86 @@
396+/******************************************************************************
397+ * OpenLP - Open Source Lyrics Projection *
398+ * --------------------------------------------------------------------------- *
399+ * Copyright (c) 2011-2016 OpenLP Android Developers *
400+ * --------------------------------------------------------------------------- *
401+ * This program is free software; you can redistribute it and/or modify it *
402+ * under the terms of the GNU General Public License as published by the Free *
403+ * Software Foundation; version 2 of the License. *
404+ * *
405+ * This program is distributed in the hope that it will be useful, but WITHOUT *
406+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or *
407+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for *
408+ * more details. *
409+ * *
410+ * You should have received a copy of the GNU General Public License along *
411+ * with this program; if not, write to the Free Software Foundation, Inc., 59 *
412+ * Temple Place, Suite 330, Boston, MA 02111-1307 USA *
413+ *******************************************************************************/
414+package org.openlp.android2.common;
415+
416+import android.content.Context;
417+import android.content.SharedPreferences;
418+import android.preference.PreferenceManager;
419+import android.util.Base64;
420+import android.util.Log;
421+
422+import org.openlp.android2.R;
423+
424+public class OpenLPURLBuilder {
425+ private final String LOG_TAG = OpenLPURLBuilder.class.getName();
426+ private Context context;
427+
428+ private static OpenLPURLBuilder ourInstance = new OpenLPURLBuilder();
429+
430+ public static OpenLPURLBuilder getInstance() {
431+ return ourInstance;
432+ }
433+
434+ private OpenLPURLBuilder() {
435+ }
436+
437+ public void setContext(Context context) {
438+ this.context = context;
439+ }
440+
441+ public int getConnectionTimeout() {
442+
443+ SharedPreferences sharedPrefs = PreferenceManager.getDefaultSharedPreferences(context);
444+
445+ int connectionTimeout = context.getResources().getInteger(
446+ R.integer.connectionTimeoutDefaultValue);
447+
448+ if (sharedPrefs.getBoolean(context.getString(R.string.key_enable_custom_timeout), false)) {
449+ Log.d(LOG_TAG, "Overriding Connection and Socket timeouts");
450+
451+ connectionTimeout = Integer.parseInt(sharedPrefs.getString(context.getString(R.string.key_connection_timeout),
452+ String.valueOf(context.getResources().getInteger(R.integer.connectionTimeoutDefaultValue))
453+ ));
454+ }
455+ return connectionTimeout;
456+ }
457+
458+ public String getBasicAuth(){
459+
460+ SharedPreferences sharedPrefs = PreferenceManager.getDefaultSharedPreferences(context);
461+ String userid = sharedPrefs.getString(context.getString(R.string.key_userid), "openlp");
462+ String password = sharedPrefs.getString(context.getString(R.string.key_password), "password");
463+
464+ Log.d(LOG_TAG, "Credentials set to " + userid + " : " + password);
465+
466+ String credentials = userid + ":" + password;
467+ return "Basic " + Base64.encodeToString(credentials.getBytes(), Base64.DEFAULT);
468+ }
469+
470+ public String getBaseUrl(){
471+
472+ SharedPreferences sharedPrefs = PreferenceManager.getDefaultSharedPreferences(context);
473+
474+ String host = sharedPrefs.getString(context.getString(R.string.key_host),
475+ context.getString(R.string.host_default_value));
476+ String port = sharedPrefs.getString(context.getString(R.string.key_port), "4316");
477+
478+ return String.format("http://%s:%s", host, port);
479+
480+ }
481+}
482
483=== added file 'app/src/main/java/org/openlp/android2/common/RequestQueueService.java'
484--- app/src/main/java/org/openlp/android2/common/RequestQueueService.java 1970-01-01 00:00:00 +0000
485+++ app/src/main/java/org/openlp/android2/common/RequestQueueService.java 2016-11-10 19:40:57 +0000
486@@ -0,0 +1,99 @@
487+/******************************************************************************
488+ * OpenLP - Open Source Lyrics Projection *
489+ * --------------------------------------------------------------------------- *
490+ * Copyright (c) 2011-2016 OpenLP Android Developers *
491+ * --------------------------------------------------------------------------- *
492+ * This program is free software; you can redistribute it and/or modify it *
493+ * under the terms of the GNU General Public License as published by the Free *
494+ * Software Foundation; version 2 of the License. *
495+ * *
496+ * This program is distributed in the hope that it will be useful, but WITHOUT *
497+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or *
498+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for *
499+ * more details. *
500+ * *
501+ * You should have received a copy of the GNU General Public License along *
502+ * with this program; if not, write to the Free Software Foundation, Inc., 59 *
503+ * Temple Place, Suite 330, Boston, MA 02111-1307 USA *
504+ *******************************************************************************/
505+package org.openlp.android2.common;
506+
507+import android.content.Context;
508+import android.graphics.Bitmap;
509+import android.util.Base64;
510+import android.util.LruCache;
511+
512+import com.android.volley.AuthFailureError;
513+import com.android.volley.Request;
514+import com.android.volley.RequestQueue;
515+import com.android.volley.toolbox.HurlStack;
516+import com.android.volley.toolbox.ImageLoader;
517+import com.android.volley.toolbox.Volley;
518+
519+import java.util.HashMap;
520+import java.util.Map;
521+
522+public class RequestQueueService {
523+
524+ private static RequestQueueService mInstance;
525+ private RequestQueue mRequestQueue;
526+ private ImageLoader mImageLoader;
527+ private static Context mCtx;
528+
529+ private RequestQueueService(Context context) {
530+ mCtx = context;
531+ mRequestQueue = getRequestQueue();
532+
533+ mImageLoader = new ImageLoader(mRequestQueue,
534+ new ImageLoader.ImageCache() {
535+ private final LruCache<String, Bitmap> cache = new LruCache<String, Bitmap>(20);
536+
537+ @Override
538+ public Bitmap getBitmap(String url) {
539+ return cache.get(url);
540+ }
541+
542+ @Override
543+ public void putBitmap(String url, Bitmap bitmap) {
544+ cache.put(url, bitmap);
545+ }
546+ });
547+ }
548+
549+ public static synchronized RequestQueueService getInstance(Context context) {
550+ if (mInstance == null) {
551+ mInstance = new RequestQueueService(context);
552+ }
553+ return mInstance;
554+ }
555+
556+ public RequestQueue getRequestQueue() {
557+ if (mRequestQueue == null) {
558+ // getApplicationContext() is key, it keeps you from leaking the
559+ // Activity or BroadcastReceiver if someone passes one in.
560+ mRequestQueue = Volley.newRequestQueue(mCtx.getApplicationContext());
561+ }
562+ return mRequestQueue;
563+ }
564+
565+ public String getUrl(String url){
566+ return String.format("%s%s", OpenLPURLBuilder.getInstance().getBaseUrl(), url );
567+ }
568+
569+ public String getBasicAuth(){
570+ return OpenLPURLBuilder.getInstance().getBasicAuth();
571+ }
572+
573+ public int getConnectionTimeout(){
574+ return OpenLPURLBuilder.getInstance().getConnectionTimeout();
575+ }
576+
577+ public <T> void addToRequestQueue(Request<T> req) {
578+ getRequestQueue().add(req);
579+ }
580+
581+ public ImageLoader getImageLoader() {
582+ return mImageLoader;
583+ }
584+}
585+
586
587=== added file 'app/src/main/java/org/openlp/android2/common/StateHolder.java'
588--- app/src/main/java/org/openlp/android2/common/StateHolder.java 1970-01-01 00:00:00 +0000
589+++ app/src/main/java/org/openlp/android2/common/StateHolder.java 2016-11-10 19:40:57 +0000
590@@ -0,0 +1,22 @@
591+package org.openlp.android2.common;
592+
593+import android.content.Context;
594+
595+/**
596+ * Created by tim on 14/08/16.
597+ */
598+public class StateHolder {
599+ private static StateHolder ourInstance = new StateHolder();
600+ private static Context context;
601+
602+ public static StateHolder getInstance() {
603+ return ourInstance;
604+ }
605+
606+ private StateHolder() {
607+ }
608+
609+ public void setContext(Context context) {
610+ this.context = context;
611+ }
612+}
613
614=== modified file 'app/src/main/java/org/openlp/android2/dialogs/AlertDisplayDialog.java'
615--- app/src/main/java/org/openlp/android2/dialogs/AlertDisplayDialog.java 2015-01-19 21:09:12 +0000
616+++ app/src/main/java/org/openlp/android2/dialogs/AlertDisplayDialog.java 2016-11-10 19:40:57 +0000
617@@ -1,7 +1,7 @@
618 /******************************************************************************
619 * OpenLP - Open Source Lyrics Projection *
620 * --------------------------------------------------------------------------- *
621- * Copyright (c) 2011-2015 OpenLP Android Developers *
622+ * Copyright (c) 2011-2016 OpenLP Android Developers *
623 * --------------------------------------------------------------------------- *
624 * This program is free software; you can redistribute it and/or modify it *
625 * under the terms of the GNU General Public License as published by the Free *
626@@ -32,7 +32,6 @@
627 import org.openlp.android2.api.Api;
628 import org.openlp.android2.common.JsonHelpers;
629 import org.openlp.android2.common.OpenLPDialog;
630-import org.openlp.android2.common.OpenLPHttpClient;
631
632 public class AlertDisplayDialog extends OpenLPDialog {
633 private final String LOG_TAG = AlertDisplayDialog.class.getName();
634@@ -49,7 +48,6 @@
635 // remove the dialog title, but you must call the superclass to get the Dialog.
636
637 context = getActivity();
638- httpClient = new OpenLPHttpClient(context);
639
640 AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
641 // Get the layout inflater
642
643=== modified file 'app/src/main/java/org/openlp/android2/dialogs/BlankDisplayDialog.java'
644--- app/src/main/java/org/openlp/android2/dialogs/BlankDisplayDialog.java 2015-09-20 21:02:37 +0000
645+++ app/src/main/java/org/openlp/android2/dialogs/BlankDisplayDialog.java 2016-11-10 19:40:57 +0000
646@@ -1,7 +1,7 @@
647 /******************************************************************************
648 * OpenLP - Open Source Lyrics Projection *
649 * --------------------------------------------------------------------------- *
650- * Copyright (c) 2011-2015 OpenLP Android Developers *
651+ * Copyright (c) 2011-2016 OpenLP Android Developers *
652 * --------------------------------------------------------------------------- *
653 * This program is free software; you can redistribute it and/or modify it *
654 * under the terms of the GNU General Public License as published by the Free *
655@@ -35,10 +35,10 @@
656 import org.openlp.android2.api.Api;
657
658 import org.openlp.android2.common.OpenLPDialog;
659-import org.openlp.android2.common.OpenLPHttpClient;
660
661 public class BlankDisplayDialog extends OpenLPDialog {
662 private final String LOG_TAG = BlankDisplayDialog.class.getName();
663+
664 public AlertDialog dialog;
665 RadioButton desktop;
666 RadioButton screen;
667@@ -56,8 +56,6 @@
668 // remove the dialog title, but you must call the superclass to get the Dialog.
669
670 context = getActivity();
671- httpClient = new OpenLPHttpClient(context);
672-
673 AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
674 // Get the layout inflater
675 LayoutInflater inflater = getActivity().getLayoutInflater();
676@@ -147,8 +145,8 @@
677 }
678 }
679
680- public void errorDisplay(int statusCode, String responseString) {
681- Log.d(LOG_TAG, String.format("URL Error status code %d text %s", statusCode, responseString));
682+ public void errorDisplay(String responseString) {
683+ Log.d(LOG_TAG, String.format("URL Error text %s", responseString));
684 reset_display();
685 }
686
687
688=== added file 'app/src/main/java/org/openlp/android2/dialogs/SearchSelectionDialog.java'
689--- app/src/main/java/org/openlp/android2/dialogs/SearchSelectionDialog.java 1970-01-01 00:00:00 +0000
690+++ app/src/main/java/org/openlp/android2/dialogs/SearchSelectionDialog.java 2016-11-10 19:40:57 +0000
691@@ -0,0 +1,135 @@
692+/******************************************************************************
693+ * OpenLP - Open Source Lyrics Projection *
694+ * --------------------------------------------------------------------------- *
695+ * Copyright (c) 2011-2015 OpenLP Android Developers *
696+ * --------------------------------------------------------------------------- *
697+ * This program is free software; you can redistribute it and/or modify it *
698+ * under the terms of the GNU General Public License as published by the Free *
699+ * Software Foundation; version 2 of the License. *
700+ * *
701+ * This program is distributed in the hope that it will be useful, but WITHOUT *
702+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or *
703+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for *
704+ * more details. *
705+ * *
706+ * You should have received a copy of the GNU General Public License along *
707+ * with this program; if not, write to the Free Software Foundation, Inc., 59 *
708+ * Temple Place, Suite 330, Boston, MA 02111-1307 USA *
709+ *******************************************************************************/
710+package org.openlp.android2.dialogs;
711+
712+import android.app.AlertDialog;
713+import android.app.Dialog;
714+import android.content.DialogInterface;
715+import android.os.Bundle;
716+import android.util.Log;
717+import android.view.LayoutInflater;
718+import android.view.View;
719+import android.widget.Button;
720+import android.widget.RadioButton;
721+import android.widget.Toast;
722+import org.openlp.android2.R;
723+import org.openlp.android2.api.Api;
724+import org.openlp.android2.common.JsonHelpers;
725+import org.openlp.android2.common.OpenLPDialog;
726+
727+public class SearchSelectionDialog extends OpenLPDialog {
728+ private final String LOG_TAG = SearchSelectionDialog.class.getName();
729+ public AlertDialog dialog;
730+ private String key;
731+ private String plugin;
732+ private String text;
733+ private RadioButton sendLive;
734+ private RadioButton addToService;
735+
736+ /**
737+ * The system calls this only when creating the layout in a dialog.
738+ */
739+ @Override
740+ public Dialog onCreateDialog(Bundle savedInstanceState) {
741+ // The only reason you might override this method when using onCreateView() is
742+ // to modify any dialog characteristics. For example, the dialog includes a
743+ // title by default, but your custom layout might not need it. So here you can
744+ // remove the dialog title, but you must call the superclass to get the Dialog.
745+
746+ key = getArguments().getString("key");
747+ plugin = getArguments().getString("plugin");
748+ text = getArguments().getString("text");
749+
750+ Log.d(LOG_TAG, String.format("onCreateDialog %s : %s : %s", key, plugin, text));
751+
752+ context = getActivity();
753+
754+ AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
755+ // Get the layout inflater
756+ LayoutInflater inflater = getActivity().getLayoutInflater();
757+
758+ // Inflate and set the layout for the dialog
759+ // Pass null as the parent view because its going in the dialog layout
760+ View view = inflater.inflate(R.layout.search_action_dialog, null);
761+ builder.setView(view);
762+
763+ sendLive = (RadioButton) view.findViewById(R.id.buttonLive);
764+ sendLive.setOnClickListener(new View.OnClickListener() {
765+ @Override
766+ public void onClick(View v) {
767+ createLive();
768+ SearchSelectionDialog.this.getDialog().cancel();
769+ }
770+ });
771+
772+ addToService = (RadioButton) view.findViewById(R.id.buttonService);
773+ addToService.setOnClickListener(new View.OnClickListener() {
774+ @Override
775+ public void onClick(View v) {
776+ createService();
777+ SearchSelectionDialog.this.getDialog().cancel();
778+ }
779+ });
780+
781+ builder.setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
782+ public void onClick(DialogInterface dialog, int id) {
783+ SearchSelectionDialog.this.getDialog().cancel();
784+ }
785+ });
786+ dialog = builder.create();
787+ dialog.setOnShowListener(new DialogInterface.OnShowListener() {
788+ @Override
789+ public void onShow(DialogInterface dialogI) {
790+ Button btnNegative = dialog.getButton(Dialog.BUTTON_NEGATIVE);
791+ btnNegative.setTextSize(20);
792+ }
793+ });
794+ return dialog;
795+ }
796+
797+ @Override
798+ public void onResume() {
799+ super.onResume();
800+ Log.d(LOG_TAG, "Resuming...");
801+ }
802+
803+ public void createLive() {
804+ try {
805+ String request = JsonHelpers.createRequestJSON("id", text);
806+ String url = String.format(Api.SEARCH_PLUGIN_LIVE, plugin.toLowerCase());
807+ triggerTextRequest(String.format("%s%s", url, request));
808+ Log.d(LOG_TAG, String.format("Setting list data. apiBase(%s), text(%s)", Api.SEARCH_PLUGIN_LIVE, request));
809+ } catch (JsonHelpers.JSONHandlerException e) {
810+ e.printStackTrace();
811+ Toast.makeText(context, "Request Failed", Toast.LENGTH_SHORT).show();
812+ }
813+ }
814+
815+ public void createService() {
816+ try {
817+ String request = JsonHelpers.createRequestJSON("id", text);
818+ String url = String.format(Api.SEARCH_PLUGIN_ADD, plugin.toLowerCase());
819+ triggerTextRequest(String.format("%s%s", url, request));
820+ Log.d(LOG_TAG, String.format("Setting list data. apiBase(%s), text(%s)", Api.SEARCH_PLUGIN_ADD, text));
821+ } catch (JsonHelpers.JSONHandlerException e) {
822+ e.printStackTrace();
823+ Toast.makeText(context, "Request Failed", Toast.LENGTH_SHORT).show();
824+ }
825+ }
826+}
827
828=== modified file 'app/src/main/java/org/openlp/android2/fragments/AboutFragment.java'
829--- app/src/main/java/org/openlp/android2/fragments/AboutFragment.java 2015-10-08 20:52:22 +0000
830+++ app/src/main/java/org/openlp/android2/fragments/AboutFragment.java 2016-11-10 19:40:57 +0000
831@@ -1,7 +1,7 @@
832 /******************************************************************************
833 * OpenLP - Open Source Lyrics Projection *
834 * --------------------------------------------------------------------------- *
835- * Copyright (c) 2011-2015 OpenLP Android Developers *
836+ * Copyright (c) 2011-2016 OpenLP Android Developers *
837 * --------------------------------------------------------------------------- *
838 * This program is free software; you can redistribute it and/or modify it *
839 * under the terms of the GNU General Public License as published by the Free *
840
841=== modified file 'app/src/main/java/org/openlp/android2/fragments/HomeFragment.java'
842--- app/src/main/java/org/openlp/android2/fragments/HomeFragment.java 2015-01-23 17:53:00 +0000
843+++ app/src/main/java/org/openlp/android2/fragments/HomeFragment.java 2016-11-10 19:40:57 +0000
844@@ -1,7 +1,7 @@
845 /******************************************************************************
846 * OpenLP - Open Source Lyrics Projection *
847 * --------------------------------------------------------------------------- *
848- * Copyright (c) 2011-2015 OpenLP Android Developers *
849+ * Copyright (c) 2011-2016 OpenLP Android Developers *
850 * --------------------------------------------------------------------------- *
851 * This program is free software; you can redistribute it and/or modify it *
852 * under the terms of the GNU General Public License as published by the Free *
853
854=== modified file 'app/src/main/java/org/openlp/android2/fragments/LiveListFragment.java'
855--- app/src/main/java/org/openlp/android2/fragments/LiveListFragment.java 2015-10-04 21:02:13 +0000
856+++ app/src/main/java/org/openlp/android2/fragments/LiveListFragment.java 2016-11-10 19:40:57 +0000
857@@ -1,7 +1,7 @@
858 /******************************************************************************
859 * OpenLP - Open Source Lyrics Projection *
860 * --------------------------------------------------------------------------- *
861- * Copyright (c) 2011-2015 OpenLP Android Developers *
862+ * Copyright (c) 2011-2016 OpenLP Android Developers *
863 * --------------------------------------------------------------------------- *
864 * This program is free software; you can redistribute it and/or modify it *
865 * under the terms of the GNU General Public License as published by the Free *
866@@ -42,7 +42,6 @@
867 import org.openlp.android2.api.Api;
868 import org.openlp.android2.common.JsonHelpers;
869 import org.openlp.android2.common.OpenLPFragment;
870-import org.openlp.android2.common.OpenLPHttpClient;
871
872 import java.util.ArrayList;
873 import java.util.HashMap;
874@@ -73,8 +72,7 @@
875 @Override
876 public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
877 context = getActivity();
878- updateUrl = Api.LIVE_TEXT;
879- httpClient = new OpenLPHttpClient(context);
880+ urlcalled = Api.LIVE_TEXT;
881 return super.onCreateView(inflater, container, savedInstanceState);
882 }
883
884@@ -106,10 +104,10 @@
885 }
886
887 // Keys used in Hashmap
888- String[] from = {"tag", "liveListNormal", "liveListSelected"};
889+ String[] from = {"line", "tag", "liveListNormal", "liveListSelected"};
890
891 // Ids of views in live_list_fragment
892- int[] to = {R.id.tag, R.id.liveListNormal, R.id.liveListSelected};
893+ int[] to = {R.id.line, R.id.tag, R.id.liveListNormal, R.id.liveListSelected};
894
895 SharedPreferences prefs = context.getSharedPreferences(
896 context.getString(R.string.key_shared_preferences),
897@@ -125,15 +123,21 @@
898 R.layout.fragment_livelist, from, to) {
899 public View getView(int position, View convertView, ViewGroup parent) {
900 View view = super.getView(position, convertView, parent);
901+ // TextView line = (TextView) view.findViewById(R.id.line);
902 TextView text1 = (TextView) view.findViewById(R.id.tag);
903- text1.setTextSize(TypedValue.COMPLEX_UNIT_SP, size);
904+ if (text1 != null) {
905+ text1.setTextSize(TypedValue.COMPLEX_UNIT_SP, size);
906+ }
907 TextView text2 = (TextView) view.findViewById(R.id.liveListNormal);
908- text2.setTextSize(TypedValue.COMPLEX_UNIT_SP, size);
909- if (selected == position) {
910- text2.setTextColor(Color.parseColor("#000000"));
911- text2.setTypeface(null, Typeface.BOLD_ITALIC);
912- } else{
913- text2.setTypeface(null, Typeface.NORMAL);
914+ if (text2 != null) {
915+ text2.setTextSize(TypedValue.COMPLEX_UNIT_SP, size);
916+ if (selected == position) {
917+ text2.setTypeface(null, Typeface.BOLD_ITALIC);
918+ // line.setBackgroundColor(0xffffff);
919+ } else {
920+ text2.setTypeface(null, Typeface.NORMAL);
921+ // line.setBackgroundColor(0xffffff);
922+ }
923 }
924 return view;
925
926
927=== modified file 'app/src/main/java/org/openlp/android2/fragments/LiveWebFragment.java'
928--- app/src/main/java/org/openlp/android2/fragments/LiveWebFragment.java 2015-01-23 17:53:00 +0000
929+++ app/src/main/java/org/openlp/android2/fragments/LiveWebFragment.java 2016-11-10 19:40:57 +0000
930@@ -1,7 +1,7 @@
931 /******************************************************************************
932 * OpenLP - Open Source Lyrics Projection *
933 * --------------------------------------------------------------------------- *
934- * Copyright (c) 2011-2015 OpenLP Android Developers *
935+ * Copyright (c) 2011-2016 OpenLP Android Developers *
936 * --------------------------------------------------------------------------- *
937 * This program is free software; you can redistribute it and/or modify it *
938 * under the terms of the GNU General Public License as published by the Free *
939
940=== modified file 'app/src/main/java/org/openlp/android2/fragments/NavigationDrawerFragment.java'
941--- app/src/main/java/org/openlp/android2/fragments/NavigationDrawerFragment.java 2016-01-09 12:39:40 +0000
942+++ app/src/main/java/org/openlp/android2/fragments/NavigationDrawerFragment.java 2016-11-10 19:40:57 +0000
943@@ -1,7 +1,7 @@
944 /******************************************************************************
945 * OpenLP - Open Source Lyrics Projection *
946 * --------------------------------------------------------------------------- *
947- * Copyright (c) 2011-2015 OpenLP Android Developers *
948+ * Copyright (c) 2011-2016 OpenLP Android Developers *
949 * --------------------------------------------------------------------------- *
950 * This program is free software; you can redistribute it and/or modify it *
951 * under the terms of the GNU General Public License as published by the Free *
952
953=== added file 'app/src/main/java/org/openlp/android2/fragments/SearchFragment.java'
954--- app/src/main/java/org/openlp/android2/fragments/SearchFragment.java 1970-01-01 00:00:00 +0000
955+++ app/src/main/java/org/openlp/android2/fragments/SearchFragment.java 2016-11-10 19:40:57 +0000
956@@ -0,0 +1,357 @@
957+/******************************************************************************
958+ * OpenLP - Open Source Lyrics Projection *
959+ * --------------------------------------------------------------------------- *
960+ * Copyright (c) 2011-2016 OpenLP Android Developers *
961+ * --------------------------------------------------------------------------- *
962+ * This program is free software; you can redistribute it and/or modify it *
963+ * under the terms of the GNU General Public License as published by the Free *
964+ * Software Foundation; version 2 of the License. *
965+ * *
966+ * This program is distributed in the hope that it will be useful, but WITHOUT *
967+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or *
968+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for *
969+ * more details. *
970+ * *
971+ * You should have received a copy of the GNU General Public License along *
972+ * with this program; if not, write to the Free Software Foundation, Inc., 59 *
973+ * Temple Place, Suite 330, Boston, MA 02111-1307 USA *
974+ *******************************************************************************/
975+package org.openlp.android2.fragments;
976+
977+import android.app.DialogFragment;
978+import android.app.Fragment;
979+import android.content.Context;
980+import android.os.Bundle;
981+import android.util.Log;
982+import android.view.KeyEvent;
983+import android.view.LayoutInflater;
984+import android.view.View;
985+import android.view.ViewGroup;
986+import android.view.inputmethod.EditorInfo;
987+import android.view.inputmethod.InputMethodManager;
988+import android.widget.AdapterView;
989+import android.widget.ArrayAdapter;
990+import android.widget.EditText;
991+import android.widget.ListView;
992+import android.widget.Spinner;
993+import android.widget.TextView;
994+import android.widget.Toast;
995+
996+import com.android.volley.AuthFailureError;
997+import com.android.volley.ClientError;
998+import com.android.volley.DefaultRetryPolicy;
999+import com.android.volley.NetworkError;
1000+import com.android.volley.NoConnectionError;
1001+import com.android.volley.ParseError;
1002+import com.android.volley.Request;
1003+import com.android.volley.Response;
1004+import com.android.volley.ServerError;
1005+import com.android.volley.TimeoutError;
1006+import com.android.volley.VolleyError;
1007+import com.android.volley.toolbox.StringRequest;
1008+
1009+import org.json.JSONArray;
1010+import org.json.JSONException;
1011+import org.json.JSONObject;
1012+import org.openlp.android2.R;
1013+import org.openlp.android2.api.Api;
1014+import org.openlp.android2.common.JsonHelpers;
1015+
1016+import org.openlp.android2.common.RequestQueueService;
1017+import org.openlp.android2.dialogs.SearchSelectionDialog;
1018+
1019+import java.util.ArrayList;
1020+import java.util.HashMap;
1021+import java.util.List;
1022+import java.util.Map;
1023+
1024+/**
1025+
1026+ */
1027+public class SearchFragment extends Fragment {
1028+
1029+ private final String LOG_TAG = SearchFragment.class.getName();
1030+ private Spinner spinner;
1031+ public Context context;
1032+ protected String calledURL;
1033+ protected String updateUrl;
1034+ protected String searchedPlugin;
1035+ protected Map<String, String> pluginMap = new HashMap<String, String>();
1036+
1037+ public SearchFragment() {
1038+ Log.d(LOG_TAG, "Constructor");
1039+ }
1040+
1041+ public static SearchFragment newInstance() {
1042+ SearchFragment fragment = new SearchFragment();
1043+ return fragment;
1044+ }
1045+
1046+ @Override
1047+ public void onCreate(Bundle savedInstanceState) {
1048+ super.onCreate(savedInstanceState);
1049+ }
1050+
1051+ @Override
1052+ public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
1053+ context = getActivity();
1054+ updateUrl = Api.SEARCHABLE_PLUGINS;
1055+ View view = inflater.inflate(R.layout.fragment_search, container, false);
1056+ spinner = (Spinner) view.findViewById(R.id.search_spinner);
1057+ triggerTextRequest(Api.SEARCHABLE_PLUGINS);
1058+
1059+ // Add search listener to text field
1060+ final EditText editText = (EditText) view.findViewById(R.id.search_text);
1061+ editText.setOnEditorActionListener(new TextView.OnEditorActionListener() {
1062+ @Override
1063+ public boolean onEditorAction(TextView tv, int actionId, KeyEvent event) {
1064+ if (actionId == EditorInfo.IME_ACTION_SEARCH) {
1065+ // Now close the keyboard as finished with
1066+ View view = getActivity().getCurrentFocus();
1067+ if (view != null) {
1068+ InputMethodManager imm =
1069+ (InputMethodManager) getActivity().getSystemService(Context.INPUT_METHOD_SERVICE);
1070+ imm.hideSoftInputFromWindow(view.getWindowToken(), 0);
1071+ }
1072+ searchedPlugin = pluginMap.get(spinner.getSelectedItem().toString());
1073+ requestSearch(tv.getText().toString());
1074+ return true;
1075+ }
1076+ return false;
1077+ }
1078+ });
1079+ spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
1080+ /**
1081+ * Called when a new item is selected (in the Spinner)
1082+ */
1083+ public void onItemSelected(AdapterView<?> parent, View view,
1084+ int pos, long id) {
1085+ editText.setText("");
1086+ }
1087+ public void onNothingSelected(AdapterView<?> parent) {
1088+ // Do nothing, just another required interface callback
1089+ }
1090+
1091+ });
1092+ return view;
1093+ }
1094+
1095+ @Override
1096+ public void onDetach() {
1097+ super.onDetach();
1098+ }
1099+
1100+ private void populatePluginList(String response, Boolean notInError) {
1101+ Log.i(LOG_TAG, "populatePluginList - entry");
1102+ List<String> categories = new ArrayList<String>();
1103+ pluginMap.clear();
1104+
1105+ if (notInError) {
1106+ try {
1107+ JSONArray items = new JSONObject(response).getJSONObject("results").getJSONArray("items");
1108+ for (int i = 0; i < items.length(); ++i) {
1109+ JSONArray item = items.getJSONArray(i);
1110+ categories.add(item.get(1).toString());
1111+ pluginMap.put(item.get(1).toString(), item.get(0).toString());
1112+ }
1113+ } catch (JSONException e) {
1114+ Log.e(LOG_TAG, response);
1115+ e.printStackTrace();
1116+ }
1117+ ArrayAdapter<String> LTRadapter = new ArrayAdapter<String>(getActivity(),
1118+ R.layout.spinner_list_item, categories);
1119+ LTRadapter.setDropDownViewResource(R.layout.spinner_dropdown_item);
1120+ spinner.setAdapter(LTRadapter);
1121+ Log.i(LOG_TAG, "populatePluginList - exit");
1122+ }
1123+ }
1124+
1125+ protected void triggerTextRequest(String urlbase) {
1126+ Log.d(LOG_TAG, "Trigger Request for url " + urlbase);
1127+ String url = RequestQueueService.getInstance(this.context).getUrl(urlbase);
1128+ calledURL = urlbase;
1129+
1130+ StringRequest request = new StringRequest(
1131+ Request.Method.GET,
1132+ url,
1133+ listener,
1134+ errorListener) {
1135+
1136+ @Override
1137+ public Map<String, String> getHeaders() throws AuthFailureError {
1138+ return createBasicAuthHeader("user", "passwd");
1139+ }
1140+ };
1141+ //Set a retry policy in case of SocketTimeout & ConnectionTimeout Exceptions.
1142+ // Volley does retry for you if you have specified the policy.
1143+ request.setRetryPolicy(new DefaultRetryPolicy(
1144+ RequestQueueService.getInstance(this.context).getConnectionTimeout(),
1145+ DefaultRetryPolicy.DEFAULT_MAX_RETRIES, DefaultRetryPolicy.DEFAULT_BACKOFF_MULT));
1146+ request.setTag("OpenLP");
1147+ RequestQueueService.getInstance(this.context).addToRequestQueue(request);
1148+ }
1149+
1150+ Map<String, String> createBasicAuthHeader(String username, String password) {
1151+ Map<String, String> headers = new HashMap<String, String>();
1152+ headers.put("Authorization", RequestQueueService.getInstance(context).getBasicAuth());
1153+
1154+ return headers;
1155+ }
1156+
1157+ Response.Listener<String> listener = new Response.Listener<String>() {
1158+ @Override
1159+ public void onResponse(String response) {
1160+ if (calledURL.equals(updateUrl)) {
1161+ populatePluginList(response, true);
1162+ } else {
1163+ populateListDisplay(response, true);
1164+ }
1165+ }
1166+ };
1167+
1168+ Response.ErrorListener errorListener = new Response.ErrorListener() {
1169+ @Override
1170+ public void onErrorResponse(VolleyError error) {
1171+ Log.d(LOG_TAG, String.format("Call response error = %s", error.toString()));
1172+ if (error instanceof NetworkError) {
1173+ } else if (error instanceof ClientError) {
1174+ } else if (error instanceof ServerError) {
1175+ } else if (error instanceof AuthFailureError) {
1176+ Toast.makeText(context, R.string.httpreturn_unauthorised,
1177+ Toast.LENGTH_LONG).show();
1178+ } else if (error instanceof ParseError) {
1179+ } else if (error instanceof NoConnectionError) {
1180+ } else if (error instanceof TimeoutError) {
1181+ }
1182+ Toast.makeText(context, R.string.unable,
1183+ Toast.LENGTH_LONG).show();
1184+
1185+ }
1186+ };
1187+
1188+ public void requestSearch(String text) {
1189+ updateUrl = Api.SEARCH_PLUGIN_FORMATTED;
1190+ try {
1191+ String request = JsonHelpers.createRequestJSON("text", text);
1192+ String url = String.format(Api.SEARCH_PLUGIN_FORMATTED, searchedPlugin);
1193+ triggerTextRequest(String.format("%s%s", url, request));
1194+ Log.d(LOG_TAG, String.format("Search request. apiBase(%s), text(%s)", searchedPlugin, text));
1195+ } catch (JsonHelpers.JSONHandlerException e) {
1196+ e.printStackTrace();
1197+ Toast.makeText(context, "Search Request Failed", Toast.LENGTH_SHORT).show();
1198+ }
1199+ }
1200+
1201+ public void populateListDisplay(String json, boolean notInError) {
1202+ Log.i(LOG_TAG, "populateListDisplay - entry");
1203+ ListView list = (ListView) getActivity().findViewById(R.id.searchListView);
1204+ final ArrayList<JSONArray> listitems = new ArrayList<JSONArray>();
1205+ if (notInError) {
1206+ try {
1207+ JSONArray items = new JSONObject(json).getJSONObject("results").getJSONArray("items");
1208+ Log.d(LOG_TAG,items.toString());
1209+ for (int i = 0; i < items.length(); ++i) {
1210+ JSONArray item = items.getJSONArray(i);
1211+ listitems.add(item);
1212+ }
1213+ } catch (JSONException e) {
1214+ Log.e(LOG_TAG, json);
1215+ e.printStackTrace();
1216+ }
1217+ }
1218+
1219+ final StableArrayAdapter adapter = new StableArrayAdapter(context,
1220+ android.R.layout.simple_list_item_1,
1221+ listitems);
1222+
1223+
1224+ list.setAdapter(adapter);
1225+ list.setOnItemClickListener(new AdapterView.OnItemClickListener() {
1226+
1227+ @Override
1228+ public void onItemClick(AdapterView<?> parent, final View view,
1229+ int position, long id) {
1230+ final JSONArray item = (JSONArray) parent.getItemAtPosition(position);
1231+ //Toast.makeText(context, "Item Pressed " + String.valueOf(position) + item,
1232+ // Toast.LENGTH_SHORT).show();
1233+ String it = "";
1234+ try {
1235+ Log.i(LOG_TAG, "list.setOnItemClickListener" + item);
1236+ it = item.get(0).toString();
1237+ } catch (JSONException e) {
1238+ e.printStackTrace();
1239+ }
1240+ Bundle args = new Bundle();
1241+ args.putString("plugin", searchedPlugin);
1242+ args.putString("text", it);
1243+ args.putString("key", Long.toString(id));
1244+ DialogFragment SSDFragment = new SearchSelectionDialog();
1245+ SSDFragment.setArguments(args);
1246+ SSDFragment.show(getFragmentManager(), "TAG");
1247+
1248+ }
1249+ });
1250+ Log.i(LOG_TAG, "populateListDisplay - exit");
1251+ }
1252+
1253+ public class StableArrayAdapter extends ArrayAdapter<JSONArray> {
1254+
1255+ HashMap<String, Integer> mIdMap = new HashMap<String, Integer>();
1256+
1257+ public StableArrayAdapter(Context context,
1258+ int textViewResourceId,
1259+ List<JSONArray> objects) {
1260+ super(context, textViewResourceId, objects);
1261+
1262+ for (int i = 0; i < objects.size(); ++i) {
1263+ JSONArray item = objects.get(i);
1264+ try {
1265+ mIdMap.put(item.get(1).toString(), i);
1266+ } catch (JSONException e) {
1267+ e.printStackTrace();
1268+ }
1269+ }
1270+ }
1271+
1272+ @Override
1273+ public View getView(int position, View convertView, ViewGroup parent) {
1274+ // Get the data item for this position
1275+ //User user = getItem(position);
1276+ String item = null;
1277+ try {
1278+ item = getItem(position).get(1).toString();
1279+ } catch (JSONException e) {
1280+ e.printStackTrace();
1281+ }
1282+ // Check if an existing view is being reused, otherwise inflate the view
1283+ if (convertView == null) {
1284+ convertView = LayoutInflater.from(getContext()).inflate(R.layout.search_result_row,
1285+ parent, false);
1286+ }
1287+ // Lookup view for data population
1288+ TextView tvItem = (TextView) convertView.findViewById(R.id.searchListRow);
1289+ // Populate the data into the template view using the data object
1290+ tvItem.setText(item);
1291+ // Return the completed view to render on screen
1292+ return convertView;
1293+ }
1294+
1295+ @Override
1296+ public long getItemId(int position) {
1297+ String item = null;
1298+ try {
1299+ item = getItem(position).get(1).toString();
1300+ } catch (JSONException e) {
1301+ e.printStackTrace();
1302+ }
1303+ return mIdMap.get(item);
1304+ }
1305+
1306+ @Override
1307+ public boolean hasStableIds() {
1308+ return true;
1309+ }
1310+
1311+ }
1312+
1313+}
1314
1315=== modified file 'app/src/main/java/org/openlp/android2/fragments/ServiceListFragment.java'
1316--- app/src/main/java/org/openlp/android2/fragments/ServiceListFragment.java 2015-10-04 21:02:13 +0000
1317+++ app/src/main/java/org/openlp/android2/fragments/ServiceListFragment.java 2016-11-10 19:40:57 +0000
1318@@ -1,7 +1,7 @@
1319 /******************************************************************************
1320 * OpenLP - Open Source Lyrics Projection *
1321 * --------------------------------------------------------------------------- *
1322- * Copyright (c) 2011-2015 OpenLP Android Developers *
1323+ * Copyright (c) 2011-2016 OpenLP Android Developers *
1324 * --------------------------------------------------------------------------- *
1325 * This program is free software; you can redistribute it and/or modify it *
1326 * under the terms of the GNU General Public License as published by the Free *
1327@@ -40,12 +40,10 @@
1328 import org.openlp.android2.api.Api;
1329 import org.openlp.android2.common.JsonHelpers;
1330 import org.openlp.android2.common.OpenLPFragment;
1331-import org.openlp.android2.common.OpenLPHttpClient;
1332
1333 import java.util.ArrayList;
1334 import java.util.HashMap;
1335 import java.util.List;
1336-import java.util.Map;
1337
1338
1339 public class ServiceListFragment extends OpenLPFragment {
1340@@ -64,8 +62,7 @@
1341 @Override
1342 public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
1343 context = getActivity();
1344- updateUrl = Api.SERVICE_LIST;
1345- httpClient = new OpenLPHttpClient(context);
1346+ urlcalled = Api.SERVICE_LIST;
1347 return super.onCreateView(inflater, container, savedInstanceState);
1348 }
1349
1350@@ -141,10 +138,10 @@
1351 }
1352
1353 // Keys used in Hashmap
1354- String[] from = {"icon", "title"};
1355+ String[] from = {"line","icon", "title"};
1356
1357 // Ids of views in service_list_fragment
1358- int[] to = {R.id.icon, R.id.serviceListText};
1359+ int[] to = {R.id.servicelistLine, R.id.icon, R.id.serviceListText};
1360
1361 SharedPreferences prefs = context.getSharedPreferences(
1362 context.getString(R.string.key_shared_preferences),
1363@@ -158,19 +155,26 @@
1364 // Instantiating an adapter to store each items
1365 ListAdapter adapter = new SimpleAdapter(getActivity().getBaseContext(), aList,
1366 R.layout.fragment_service_list, from, to) {
1367+
1368 public View getView(int position, View convertView, ViewGroup parent) {
1369+
1370 View view = super.getView(position, convertView, parent);
1371+
1372+ TextView line = (TextView) view.findViewById(R.id.servicelistLine);
1373 TextView text1 = (TextView) view.findViewById(R.id.serviceListText);
1374 text1.setTextSize(TypedValue.COMPLEX_UNIT_SP, size);
1375 if (selected == position) {
1376 text1.setTextColor(Color.parseColor("#000000"));
1377 text1.setTypeface(null, Typeface.BOLD_ITALIC);
1378+ line.setBackgroundColor(0xffffff);
1379 } else{
1380 text1.setTypeface(null, Typeface.NORMAL);
1381+ line.setBackgroundColor(0xffffff);
1382 }
1383 return view;
1384 }
1385 };
1386+
1387 setListAdapter(adapter);
1388
1389 SharedPreferences sharedPrefs = PreferenceManager.getDefaultSharedPreferences(context);
1390
1391=== modified file 'app/src/main/java/org/openlp/android2/fragments/StageWebFragment.java'
1392--- app/src/main/java/org/openlp/android2/fragments/StageWebFragment.java 2015-01-23 17:53:00 +0000
1393+++ app/src/main/java/org/openlp/android2/fragments/StageWebFragment.java 2016-11-10 19:40:57 +0000
1394@@ -1,7 +1,7 @@
1395 /******************************************************************************
1396 * OpenLP - Open Source Lyrics Projection *
1397 * --------------------------------------------------------------------------- *
1398- * Copyright (c) 2011-2015 OpenLP Android Developers *
1399+ * Copyright (c) 2011-2016 OpenLP Android Developers *
1400 * --------------------------------------------------------------------------- *
1401 * This program is free software; you can redistribute it and/or modify it *
1402 * under the terms of the GNU General Public License as published by the Free *
1403
1404=== modified file 'app/src/main/java/org/openlp/android2/fragments/WebFragment.java'
1405--- app/src/main/java/org/openlp/android2/fragments/WebFragment.java 2015-01-19 21:09:12 +0000
1406+++ app/src/main/java/org/openlp/android2/fragments/WebFragment.java 2016-11-10 19:40:57 +0000
1407@@ -1,7 +1,7 @@
1408 /******************************************************************************
1409 * OpenLP - Open Source Lyrics Projection *
1410 * --------------------------------------------------------------------------- *
1411- * Copyright (c) 2011-2015 OpenLP Android Developers *
1412+ * Copyright (c) 2011-2016 OpenLP Android Developers *
1413 * --------------------------------------------------------------------------- *
1414 * This program is free software; you can redistribute it and/or modify it *
1415 * under the terms of the GNU General Public License as published by the Free *
1416@@ -19,21 +19,18 @@
1417 package org.openlp.android2.fragments;
1418
1419 import android.app.Fragment;
1420-import android.net.http.SslError;
1421 import android.os.Bundle;
1422 import android.view.LayoutInflater;
1423 import android.view.View;
1424 import android.view.ViewGroup;
1425-import android.webkit.SslErrorHandler;
1426 import android.webkit.WebView;
1427 import android.webkit.WebViewClient;
1428 import org.openlp.android2.R;
1429-import org.openlp.android2.common.OpenLPHttpClient;
1430+import org.openlp.android2.common.OpenLPURLBuilder;
1431
1432 public class WebFragment extends Fragment {
1433
1434 protected String curURL;
1435- private OpenLPHttpClient httpClient;
1436 private WebView webview;
1437
1438 public WebFragment(){
1439@@ -47,7 +44,7 @@
1440
1441 @Override
1442 public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {
1443- httpClient = new OpenLPHttpClient(getActivity());
1444+
1445 View view = inflater.inflate(R.layout.fragment_web, container, false);
1446
1447 if (curURL != null) {
1448@@ -59,7 +56,7 @@
1449 webview.setScrollBarStyle(WebView.SCROLLBARS_OUTSIDE_OVERLAY);
1450 webview.setScrollbarFadingEnabled(true);
1451 webview.setWebViewClient(new webClient());
1452- webview.loadUrl(String.format("%s%s", httpClient.getBaseUrl(), curURL));
1453+ webview.loadUrl(String.format("%s%s", OpenLPURLBuilder.getInstance().getBaseUrl(), curURL));
1454 }
1455 return view;
1456 }
1457@@ -72,14 +69,10 @@
1458 super.onDestroyView();
1459 }
1460
1461- private class webClient extends WebViewClient {
1462+ public class webClient extends WebViewClient {
1463 @Override
1464 public boolean shouldOverrideUrlLoading(WebView view, String url) {
1465 return false;
1466 }
1467- @Override
1468- public void onReceivedSslError(WebView view, SslErrorHandler handler, SslError error) {
1469- handler.proceed(); // Ignore SSL certificate errors
1470- }
1471 }
1472 }
1473
1474=== added file 'app/src/main/res/drawable-hdpi/ic_search_black.png'
1475Binary files app/src/main/res/drawable-hdpi/ic_search_black.png 1970-01-01 00:00:00 +0000 and app/src/main/res/drawable-hdpi/ic_search_black.png 2016-11-10 19:40:57 +0000 differ
1476=== modified file 'app/src/main/res/drawable-hdpi/openlp_splash_screen.png'
1477Binary files app/src/main/res/drawable-hdpi/openlp_splash_screen.png 2014-11-16 08:57:03 +0000 and app/src/main/res/drawable-hdpi/openlp_splash_screen.png 2016-11-10 19:40:57 +0000 differ
1478=== added file 'app/src/main/res/drawable-mdpi/ic_search_black.png'
1479Binary files app/src/main/res/drawable-mdpi/ic_search_black.png 1970-01-01 00:00:00 +0000 and app/src/main/res/drawable-mdpi/ic_search_black.png 2016-11-10 19:40:57 +0000 differ
1480=== added file 'app/src/main/res/drawable-xhdpi/ic_search_black.png'
1481Binary files app/src/main/res/drawable-xhdpi/ic_search_black.png 1970-01-01 00:00:00 +0000 and app/src/main/res/drawable-xhdpi/ic_search_black.png 2016-11-10 19:40:57 +0000 differ
1482=== added file 'app/src/main/res/drawable-xxhdpi/ic_search_black.png'
1483Binary files app/src/main/res/drawable-xxhdpi/ic_search_black.png 1970-01-01 00:00:00 +0000 and app/src/main/res/drawable-xxhdpi/ic_search_black.png 2016-11-10 19:40:57 +0000 differ
1484=== added file 'app/src/main/res/drawable/custom_border.xml'
1485--- app/src/main/res/drawable/custom_border.xml 1970-01-01 00:00:00 +0000
1486+++ app/src/main/res/drawable/custom_border.xml 2016-11-10 19:40:57 +0000
1487@@ -0,0 +1,11 @@
1488+<?xml version="1.0" encoding="UTF-8"?>
1489+<shape xmlns:android="http://schemas.android.com/apk/res/android"
1490+ android:shape="rectangle">
1491+
1492+ <padding android:left="10dp"
1493+ android:right="10dp"
1494+ android:top="10dp"
1495+ android:bottom="10dp"/>
1496+ <solid android:color="#FFF"/>
1497+ <stroke android:width="2px" android:color="#ffffff"/>
1498+</shape>
1499\ No newline at end of file
1500
1501=== removed file 'app/src/main/res/drawable/customborder.xml'
1502--- app/src/main/res/drawable/customborder.xml 2015-09-20 21:02:37 +0000
1503+++ app/src/main/res/drawable/customborder.xml 1970-01-01 00:00:00 +0000
1504@@ -1,11 +0,0 @@
1505-<?xml version="1.0" encoding="UTF-8"?>
1506-<shape xmlns:android="http://schemas.android.com/apk/res/android"
1507- android:shape="rectangle">
1508-
1509- <padding android:left="10dp"
1510- android:right="10dp"
1511- android:top="10dp"
1512- android:bottom="10dp"/>
1513- <solid android:color="#c4c4c4"/>
1514- <stroke android:width="2px" android:color="#ffffff"/>
1515-</shape>
1516\ No newline at end of file
1517
1518=== added file 'app/src/main/res/drawable/search_list.xml'
1519--- app/src/main/res/drawable/search_list.xml 1970-01-01 00:00:00 +0000
1520+++ app/src/main/res/drawable/search_list.xml 2016-11-10 19:40:57 +0000
1521@@ -0,0 +1,11 @@
1522+<?xml version="1.0" encoding="UTF-8"?>
1523+<shape xmlns:android="http://schemas.android.com/apk/res/android"
1524+ android:shape="rectangle">
1525+
1526+ <padding android:left="10dp"
1527+ android:right="10dp"
1528+ android:top="10dp"
1529+ android:bottom="10dp"/>
1530+ <solid android:color="#FFF"/>
1531+ <stroke android:width="20px" android:color="#ffffff"/>
1532+</shape>
1533\ No newline at end of file
1534
1535=== modified file 'app/src/main/res/layout-xlarge/fragment_livelist_list.xml'
1536--- app/src/main/res/layout-xlarge/fragment_livelist_list.xml 2015-04-19 20:12:18 +0000
1537+++ app/src/main/res/layout-xlarge/fragment_livelist_list.xml 2016-11-10 19:40:57 +0000
1538@@ -9,7 +9,16 @@
1539 android:smoothScrollbar="true"
1540 android:clickable="false"
1541 android:longClickable="false"
1542- android:background="@drawable/customborder">
1543+ android:background="@drawable/custom_border">
1544+ <TextView
1545+ android:id="@+id/line"
1546+ android:layout_width="4dp"
1547+ android:layout_height="fill_parent"
1548+ android:paddingTop="1dp"
1549+ android:paddingRight="1dp"
1550+ android:paddingLeft="1dp"
1551+ android:paddingBottom="1dp"
1552+ android:background="#4d7bd8"/>
1553 <TextView
1554 android:id="@+id/tag"
1555 android:layout_width="0dp"
1556
1557=== modified file 'app/src/main/res/layout/activity_main.xml'
1558--- app/src/main/res/layout/activity_main.xml 2015-10-08 18:25:59 +0000
1559+++ app/src/main/res/layout/activity_main.xml 2016-11-10 19:40:57 +0000
1560@@ -4,7 +4,7 @@
1561 android:id="@+id/drawer_layout"
1562 android:layout_width="match_parent"
1563 android:layout_height="match_parent"
1564- tools:context=".MainActivity">
1565+ tools:context=".OpenLP">
1566
1567 <!-- As the main content view, the view below consumes the entire
1568 space available using match_parent in both dimensions. -->
1569
1570=== removed file 'app/src/main/res/layout/fragment_item_grid.xml'
1571--- app/src/main/res/layout/fragment_item_grid.xml 2015-05-27 20:05:55 +0000
1572+++ app/src/main/res/layout/fragment_item_grid.xml 1970-01-01 00:00:00 +0000
1573@@ -1,12 +0,0 @@
1574-<?xml version="1.0" encoding="utf-8"?>
1575-<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
1576- xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
1577- android:layout_height="match_parent" tools:context="org.openlp.android2.emptyFragment">
1578-
1579- <GridView android:id="@android:id/list" android:layout_width="match_parent"
1580- android:layout_height="match_parent" android:numColumns="2" />
1581-
1582- <TextView android:id="@android:id/empty" android:layout_width="match_parent"
1583- android:layout_height="match_parent" android:gravity="center" />
1584-
1585-</FrameLayout>
1586
1587=== removed file 'app/src/main/res/layout/fragment_livelist_grid.xml'
1588--- app/src/main/res/layout/fragment_livelist_grid.xml 2015-01-19 20:26:35 +0000
1589+++ app/src/main/res/layout/fragment_livelist_grid.xml 1970-01-01 00:00:00 +0000
1590@@ -1,45 +0,0 @@
1591-<?xml version="1.0" encoding="utf-8"?>
1592-<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
1593- xmlns:tools="http://schemas.android.com/tools"
1594- android:layout_width="match_parent"
1595- android:layout_height="match_parent"
1596- tools:context="org.openlp.android2.fragments.LiveListFragment">
1597-
1598- <GridView
1599- android:id="@android:id/list"
1600- android:layout_width="match_parent"
1601- android:layout_height="match_parent"
1602- android:numColumns="2" />
1603-
1604- <LinearLayout
1605- xmlns:android="http://schemas.android.com/apk/res/android"
1606- android:id="@+id/fragment_live_list_layout"
1607- android:layout_width="match_parent"
1608- android:layout_height="match_parent"
1609- android:orientation="horizontal"
1610- android:smoothScrollbar="true"
1611- android:clickable="false"
1612- android:longClickable="false">
1613- <TextView
1614- android:id="@+id/tag"
1615- android:layout_width="0dp"
1616- android:layout_height="wrap_content"
1617- android:textSize="14sp"
1618- android:paddingTop="10dp"
1619- android:paddingRight="5dp"
1620- android:paddingLeft="5dp"
1621- android:paddingBottom="10dp"
1622- android:layout_weight="1"/>
1623- <TextView
1624- android:id="@+id/liveListNormal"
1625- android:layout_width="0dp"
1626- android:layout_height="wrap_content"
1627- android:textColor="#ff2a2a2a"
1628- android:textSize="14sp"
1629- android:paddingTop="10dp"
1630- android:paddingBottom="10dp"
1631- android:textStyle="normal"
1632- android:layout_weight="1"/>
1633- </LinearLayout>
1634-
1635-</FrameLayout>
1636
1637=== modified file 'app/src/main/res/layout/fragment_livelist_list.xml'
1638--- app/src/main/res/layout/fragment_livelist_list.xml 2015-10-08 15:27:56 +0000
1639+++ app/src/main/res/layout/fragment_livelist_list.xml 2016-11-10 19:40:57 +0000
1640@@ -9,10 +9,19 @@
1641 android:smoothScrollbar="true"
1642 android:clickable="false"
1643 android:longClickable="false"
1644- android:background="@drawable/customborder">
1645-
1646- <TextView
1647- android:id="@+id/tag"
1648+ android:background="@drawable/custom_border">
1649+ <TextView
1650+ android:id="@+id/liveListLine"
1651+ android:layout_width="75sp"
1652+ android:layout_height="wrap_content"
1653+ android:textSize="14sp"
1654+ android:paddingTop="10dp"
1655+ android:paddingRight="5dp"
1656+ android:paddingLeft="5dp"
1657+ android:paddingBottom="10dp"
1658+ android:layout_weight="1"/>
1659+ <TextView
1660+ android:id="@+id/liveListTag"
1661 android:layout_width="75sp"
1662 android:layout_height="wrap_content"
1663 android:textSize="14sp"
1664@@ -31,15 +40,4 @@
1665 android:paddingBottom="10dp"
1666 android:textStyle="normal"
1667 android:layout_weight="1"/>
1668- <TextView
1669- android:id="@+id/liveListSelected"
1670- android:layout_width="0dp"
1671- android:layout_height="wrap_content"
1672- android:textColor="#000000"
1673- android:textSize="14sp"
1674- android:paddingTop="10dp"
1675- android:paddingBottom="10dp"
1676- android:textStyle="bold|italic"
1677- android:layout_weight="1"
1678- android:visibility="gone"/>
1679 </LinearLayout>
1680
1681=== added file 'app/src/main/res/layout/fragment_search.xml'
1682--- app/src/main/res/layout/fragment_search.xml 1970-01-01 00:00:00 +0000
1683+++ app/src/main/res/layout/fragment_search.xml 2016-11-10 19:40:57 +0000
1684@@ -0,0 +1,77 @@
1685+<?xml version="1.0" encoding="utf-8"?>
1686+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
1687+ android:orientation="vertical" android:layout_width="match_parent"
1688+ android:layout_height="match_parent"
1689+ android:paddingLeft="15dp"
1690+ android:paddingTop="15dp"
1691+ android:paddingRight="15dp"
1692+ >
1693+
1694+ <LinearLayout
1695+ android:orientation="vertical"
1696+ android:layout_width="match_parent"
1697+ android:layout_height="wrap_content">
1698+
1699+ <GridLayout
1700+ android:layout_width="match_parent"
1701+ android:layout_height="wrap_content">
1702+
1703+ <TextView
1704+ android:text="@string/select_plugin"
1705+ android:id="@+id/search_title"
1706+ android:textSize="20sp"
1707+ android:paddingLeft="30dp"
1708+ android:paddingRight="30dp"
1709+ android:layout_row="0"
1710+ android:layout_column="0"/>
1711+
1712+ <Spinner
1713+ android:textSize="20sp"
1714+ android:paddingLeft="30dp"
1715+ android:paddingStart="30dp"
1716+ android:id="@+id/search_spinner"
1717+ android:layout_row="0"
1718+ android:layout_column="1"/>
1719+
1720+ <TextView
1721+ android:text="@string/search_text"
1722+ android:textSize="20sp"
1723+ android:id="@+id/search_value_desc"
1724+ android:paddingLeft="30dp"
1725+ android:paddingRight="30dp"
1726+ android:layout_row="1"
1727+ android:layout_column="0"/>
1728+
1729+ <EditText
1730+ android:imeOptions="actionSearch"
1731+ android:id="@+id/search_text"
1732+ style="@android:style/Animation.InputMethod"
1733+ android:inputType="text"
1734+ android:textSize="22sp"
1735+ android:layout_row="1"
1736+ android:layout_column="1"
1737+ android:layout_width="fill_parent" />
1738+
1739+ </GridLayout>
1740+
1741+ <LinearLayout
1742+ android:orientation="horizontal"
1743+ android:layout_width="match_parent"
1744+ android:layout_height="match_parent"
1745+ android:weightSum="1">
1746+
1747+ <ListView
1748+ android:layout_width="match_parent"
1749+ android:layout_height="fill_parent"
1750+ android:id="@+id/searchListView"
1751+ android:paddingLeft="30dp"
1752+ android:paddingRight="30dp"
1753+ android:textSize="15sp"
1754+ android:height="70dp"
1755+ android:layout_weight="0.8"
1756+ android:background="@drawable/search_list"/>
1757+
1758+ </LinearLayout>
1759+ </LinearLayout>
1760+
1761+</LinearLayout>
1762\ No newline at end of file
1763
1764=== modified file 'app/src/main/res/layout/fragment_service_list.xml'
1765--- app/src/main/res/layout/fragment_service_list.xml 2015-04-19 20:12:18 +0000
1766+++ app/src/main/res/layout/fragment_service_list.xml 2016-11-10 19:40:57 +0000
1767@@ -9,11 +9,23 @@
1768 android:smoothScrollbar="true"
1769 android:clickable="false"
1770 android:longClickable="false"
1771- android:background="@drawable/customborder">
1772+ android:background="@drawable/custom_border">
1773+
1774+ <TextView
1775+ android:id="@+id/servicelistLine"
1776+ android:layout_width="4dp"
1777+ android:layout_height="36dp"
1778+ android:paddingTop="10dp"
1779+ android:paddingRight="5dp"
1780+ android:paddingEnd="5dp"
1781+ android:paddingLeft="5dp"
1782+ android:paddingBottom="10dp"
1783+ android:background="#4d7bd8"/>
1784+
1785 <ImageView
1786 android:id="@+id/icon"
1787 android:layout_width="wrap_content"
1788- android:layout_height="wrap_content"
1789+ android:layout_height="36dp"
1790 android:paddingTop="10dp"
1791 android:paddingRight="5dp"
1792 android:paddingEnd="5dp"
1793@@ -24,7 +36,7 @@
1794 android:id="@+id/serviceListText"
1795 android:layout_width="wrap_content"
1796 android:layout_height="wrap_content"
1797- android:textStyle="bold"
1798+ android:textStyle="normal"
1799 android:textColor="#000000"
1800 android:textSize="14sp"
1801 android:paddingTop="10dp"
1802
1803=== removed file 'app/src/main/res/layout/fragment_servicelist_grid.xml'
1804--- app/src/main/res/layout/fragment_servicelist_grid.xml 2014-11-15 22:03:01 +0000
1805+++ app/src/main/res/layout/fragment_servicelist_grid.xml 1970-01-01 00:00:00 +0000
1806@@ -1,20 +0,0 @@
1807-<?xml version="1.0" encoding="utf-8"?>
1808-<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
1809- xmlns:tools="http://schemas.android.com/tools"
1810- android:layout_width="match_parent"
1811- android:layout_height="match_parent"
1812- tools:context="org.openlp.android2.fragments.ServiceListFragment">
1813-
1814- <GridView
1815- android:id="@android:id/list"
1816- android:layout_width="match_parent"
1817- android:layout_height="match_parent"
1818- android:numColumns="2" />
1819-
1820- <TextView
1821- android:id="@android:id/empty"
1822- android:layout_width="match_parent"
1823- android:layout_height="match_parent"
1824- android:gravity="center" />
1825-
1826-</FrameLayout>
1827
1828=== added file 'app/src/main/res/layout/search_action_dialog.xml'
1829--- app/src/main/res/layout/search_action_dialog.xml 1970-01-01 00:00:00 +0000
1830+++ app/src/main/res/layout/search_action_dialog.xml 2016-11-10 19:40:57 +0000
1831@@ -0,0 +1,40 @@
1832+<?xml version="1.0" encoding="utf-8"?>
1833+
1834+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
1835+
1836+ android:orientation="vertical"
1837+ android:layout_width="fill_parent"
1838+ android:layout_height="fill_parent"
1839+ android:weightSum="1">
1840+ <TextView
1841+ android:layout_width="315dp"
1842+ android:layout_height="wrap_content"
1843+ android:textAppearance="?android:attr/textAppearanceMedium"
1844+ android:text="@string/searchResults"
1845+ android:id="@+id/textView"
1846+ android:textStyle="bold|italic"
1847+ android:textSize="40px"
1848+ android:height="70px"
1849+ android:layout_marginTop="10dp"
1850+ android:layout_marginBottom="10dp"/>
1851+ <RadioButton
1852+ android:layout_width="match_parent"
1853+ android:layout_height="wrap_content"
1854+ android:text="@string/searchSendLive"
1855+ android:id="@+id/buttonLive"
1856+ android:textSize="20sp"
1857+ android:height="30dp"
1858+ android:clickable="true"
1859+ android:layout_marginTop="20dp"
1860+ android:layout_marginBottom="20dp"/>
1861+ <RadioButton
1862+ android:layout_width="match_parent"
1863+ android:layout_height="wrap_content"
1864+ android:text="@string/searchAddToService"
1865+ android:id="@+id/buttonService"
1866+ android:textSize="20sp"
1867+ android:height="40dp"
1868+ android:clickable="true"
1869+ android:layout_marginTop="20dp"
1870+ android:layout_marginBottom="20dp"/>
1871+</LinearLayout>
1872\ No newline at end of file
1873
1874=== added file 'app/src/main/res/layout/search_result_row.xml'
1875--- app/src/main/res/layout/search_result_row.xml 1970-01-01 00:00:00 +0000
1876+++ app/src/main/res/layout/search_result_row.xml 2016-11-10 19:40:57 +0000
1877@@ -0,0 +1,18 @@
1878+<?xml version="1.0" encoding="utf-8"?>
1879+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
1880+ android:layout_width="match_parent"
1881+ android:layout_height="match_parent"
1882+ android:orientation="vertical" >
1883+
1884+ <TextView android:layout_width="wrap_content"
1885+ android:layout_height="wrap_content"
1886+ android:textStyle="bold"
1887+ android:textColor="#000000"
1888+ android:textSize="25sp"
1889+ android:paddingTop="10dp"
1890+ android:paddingRight="5dp"
1891+ android:paddingLeft="5dp"
1892+ android:paddingEnd="5dp"
1893+ android:paddingBottom="10dp"
1894+ android:id="@+id/searchListRow"/>
1895+</LinearLayout>
1896\ No newline at end of file
1897
1898=== added file 'app/src/main/res/layout/spinner_dropdown_item.xml'
1899--- app/src/main/res/layout/spinner_dropdown_item.xml 1970-01-01 00:00:00 +0000
1900+++ app/src/main/res/layout/spinner_dropdown_item.xml 2016-11-10 19:40:57 +0000
1901@@ -0,0 +1,11 @@
1902+<?xml version="1.0" encoding="utf-8"?>
1903+<CheckedTextView xmlns:android="http://schemas.android.com/apk/res/android"
1904+ android:id="@android:id/text1"
1905+ style="?android:attr/spinnerDropDownItemStyle"
1906+ android:singleLine="true"
1907+ android:layout_width="match_parent"
1908+ android:layout_height="?android:attr/listPreferredItemHeight"
1909+ android:ellipsize="marquee"
1910+ android:textColor="#000"
1911+ android:textStyle="bold|italic"
1912+ android:textAppearance="?android:attr/textAppearanceLarge"/>
1913\ No newline at end of file
1914
1915=== added file 'app/src/main/res/layout/spinner_list_item.xml'
1916--- app/src/main/res/layout/spinner_list_item.xml 1970-01-01 00:00:00 +0000
1917+++ app/src/main/res/layout/spinner_list_item.xml 2016-11-10 19:40:57 +0000
1918@@ -0,0 +1,11 @@
1919+<?xml version="1.0" encoding="utf-8"?>
1920+<TextView xmlns:android="http://schemas.android.com/apk/res/android"
1921+ android:id="@android:id/text1"
1922+ style="?android:attr/spinnerItemStyle"
1923+ android:singleLine="true"
1924+ android:layout_width="match_parent"
1925+ android:layout_height="wrap_content"
1926+ android:textColor="#000"
1927+ android:textAppearance="?android:attr/textAppearanceLarge"
1928+ android:ellipsize="marquee"
1929+ android:textStyle="bold|italic" />
1930\ No newline at end of file
1931
1932=== modified file 'app/src/main/res/menu/open_l.xml'
1933--- app/src/main/res/menu/open_l.xml 2015-05-27 20:05:55 +0000
1934+++ app/src/main/res/menu/open_l.xml 2016-11-10 19:40:57 +0000
1935@@ -16,10 +16,6 @@
1936 android:icon="@drawable/ic_refresh_white"
1937 android:title="@string/action_refresh"
1938 app:showAsAction="ifRoom" />
1939- <item android:id="@+id/action_search"
1940- android:icon="@drawable/ic_search_white"
1941- android:title="@string/action_search"
1942- app:showAsAction="never|withText" />
1943 <item android:id="@+id/action_preferences"
1944 android:icon="@android:drawable/ic_menu_preferences"
1945 android:title="@string/action_preferences"
1946
1947=== modified file 'app/src/main/res/values-af/strings.xml'
1948--- app/src/main/res/values-af/strings.xml 2015-05-30 05:53:10 +0000
1949+++ app/src/main/res/values-af/strings.xml 2016-11-10 19:40:57 +0000
1950@@ -1,8 +1,12 @@
1951 <?xml version='1.0' encoding='UTF-8'?>
1952 <resources>
1953+ <string name="about_display_1">OpenLP is \'n gratis kerk skyfievertoning sagteware</string>
1954+ <string name="about_display_2">Besoek die OpenLP webwerf vir meer inligting</string>
1955 <string name="about_display_4">Kopiereg</string>
1956 <string name="about_display_5">Gedeeltelike kopiereg</string>
1957 <string name="about_display_6">Lisensie</string>
1958+ <string name="about_display_7">Hierdie program is gratis; jy kan dit herversprei of verander volgens die GNU Algemene Publieke Lisensie se voorwaardes, wat gepubliseer is deur die Free Software Foundation; weergawe 2 van die lisensie.</string>
1959+ <string name="about_display_8">Hierdie program word versprei met die hoop dat dit nuttig sal wees, maar SONDER ENIGE WAARBORG; selfs sonder \'n geimpliseerde waarborg dat dit TOEPASLIK IS VIR \'N SPESIFIEKE DOEL</string>
1960 <string name="action_settings">Instellings</string>
1961 <string name="action_about">Aangaande</string>
1962 <string name="action_alert">Waarskuwing</string>
1963@@ -12,14 +16,39 @@
1964 <string name="action_search">Soek</string>
1965 <string name="app_name">OpenLP</string>
1966 <string name="cancel">Kanselleer</string>
1967+ <string name="connection_configuration">Konfigureer Netwerk</string>
1968+ <string name="connection_password">Wagwoord</string>
1969+ <string name="connection_profile">Bediener Inligting</string>
1970 <string name="connection_timeout">Konneksie Tyd-uitloop</string>
1971 <string name="connection_timeout_summary">Kies \'n waarde (millisekondes)</string>
1972- <string name="display_blank_summary">Kies die gevraagde blanko tipe</string>
1973+ <string name="connection_userid">Gebruikernaame</string>
1974+ <string name="custom_timeout">Stel pasgemaakte tyd afsnypunt</string>
1975+ <string name="display_blank_summary">Kies die verlangde skerm</string>
1976+ <string name="display_desktop">Vertoon Werkvlak agtergrond</string>
1977+ <string name="display_list_autoscroll">Laat die gekose item toe om na die middel van die lys te beweeg</string>
1978+ <string name="display_reset">Vertoon lewendige skerm</string>
1979+ <string name="display_settings">Vertoon Verstelling</string>
1980+ <string name="display_screen">Vertoon slegs Swart skerm</string>
1981+ <string name="display_theme">Vertoon slegs Tema</string>
1982 <string name="enable_custom_timeouts">Bekragtig Aangepasde Tyd-uitlope</string>
1983+ <string name="enter_alert_text">Voer Afkondiging teks in</string>
1984+ <string name="enable_autoscroll">Laat skerms toe op outomatiese te sentreer</string>
1985 <string name="home">Tuis</string>
1986+ <string name="httpreturn_unauthorised">Ongemagtigde Toegang, voer asb \'n geldige gebruikernaam en wagwoord in.</string>
1987+ <string name="live_list">Lewendige Vertoonlys</string>
1988+ <string name="live_view">Lewendige Kykskerm</string>
1989+ <string name="navigation_drawer_open">Maak navigeer vouer oop</string>
1990+ <string name="navigation_drawer_close">Sluit navigeer vouer</string>
1991+ <string name="next">Volgende</string>
1992 <string name="none">Geen</string>
1993 <string name="port">Poort</string>
1994+ <string name="previous">Vorige</string>
1995+ <string name="process">Voer uit</string>
1996+ <string name="service_list">Orde van diens</string>
1997+ <string name="stage_view">Verhoog skerm</string>
1998+ <string name="text_size">Kies die grootte van die vertoning-teks</string>
1999 <string name="text_size_summary">Verander die Diens teks grootte</string>
2000 <string name="title_activity_settings">Instellings</string>
2001 <string name="url_hint">Gasheer naam of IP</string>
2002+ <string name="unable">Kan nie die versoek uitvoer nie - gaan jou netwerk verstellings na</string>
2003 </resources>
2004
2005=== modified file 'app/src/main/res/values-bg/strings.xml'
2006--- app/src/main/res/values-bg/strings.xml 2015-05-30 05:53:10 +0000
2007+++ app/src/main/res/values-bg/strings.xml 2016-11-10 19:40:57 +0000
2008@@ -13,11 +13,12 @@
2009 <string name="cancel">Откажи</string>
2010 <string name="connection_timeout">Времето за изчакване на свързването</string>
2011 <string name="connection_timeout_summary">Избери стойност (в милисекунди)</string>
2012- <string name="display_blank_summary">Избери изисквания тип на празнота</string>
2013 <string name="enable_custom_timeouts">Активирай клиентски срокове</string>
2014 <string name="home">Начало</string>
2015+ <string name="next">След.</string>
2016 <string name="none">Нищо</string>
2017 <string name="port">Порт</string>
2018+ <string name="previous">назад</string>
2019 <string name="text_size_summary">Промени размера на текста за Службата</string>
2020 <string name="title_activity_settings">Настройки</string>
2021 <string name="url_hint">Hostname или IP</string>
2022
2023=== modified file 'app/src/main/res/values-cs/strings.xml'
2024--- app/src/main/res/values-cs/strings.xml 2015-10-16 19:32:04 +0000
2025+++ app/src/main/res/values-cs/strings.xml 2016-11-10 19:40:57 +0000
2026@@ -20,8 +20,6 @@
2027 <string name="connection_configuration">Nastavení sítě</string>
2028 <string name="connection_password">Heslo</string>
2029 <string name="connection_profile">Podrobnosti serveru</string>
2030- <string name="connection_profile_ssl_use">Použít HTTPS</string>
2031- <string name="connection_profile_ssl_summary">Upřesnit jestli použít HTTPS</string>
2032 <string name="connection_timeout">Časový limit spojení</string>
2033 <string name="connection_timeout_summary">Vybrat hodnotu (milisekundy)</string>
2034 <string name="connection_userid">Uživatelské jméno</string>
2035
2036=== modified file 'app/src/main/res/values-da/strings.xml'
2037--- app/src/main/res/values-da/strings.xml 2015-10-16 19:32:04 +0000
2038+++ app/src/main/res/values-da/strings.xml 2016-11-10 19:40:57 +0000
2039@@ -20,22 +20,24 @@
2040 <string name="connection_configuration">Konfigurér netværk</string>
2041 <string name="connection_password">Adgangskode</string>
2042 <string name="connection_profile">Serverdetaljer</string>
2043- <string name="connection_profile_ssl_use">Benyt HTTPS</string>
2044- <string name="connection_profile_ssl_summary">Angiv om HTTPS skal benyttes</string>
2045 <string name="connection_timeout">Timeout for forbindelse</string>
2046 <string name="connection_timeout_summary">Vælg en værdi (millisekunder)</string>
2047 <string name="connection_userid">Brugernavn</string>
2048 <string name="custom_timeout">Sæt brugerdefineret timeout</string>
2049 <string name="display_blank_summary">Vælg den ønskede skærm</string>
2050 <string name="display_desktop">Vis skrivebordsbaggrund</string>
2051+ <string name="display_list_autoscroll">Tillad centrering af det valgte element</string>
2052 <string name="display_reset">Vis fremvisningsskærm</string>
2053+ <string name="display_settings">Visningsindstillinger</string>
2054 <string name="display_screen">Vis kun sort</string>
2055 <string name="display_theme">Vis kun temabaggrund</string>
2056 <string name="enable_custom_timeouts">Aktiver brugerdefinerede timeouts</string>
2057 <string name="enter_alert_text">Indtast meddelelsestekst</string>
2058+ <string name="enable_autoscroll">Tiilad autocentrering</string>
2059 <string name="home">Hjem</string>
2060 <string name="httpreturn_unauthorised">Adgang ikke godkendt. Indtast gyldigt brugernavn og adgangskode</string>
2061 <string name="live_list">Fremvisningsliste</string>
2062+ <string name="live_view">Præsentationsvisning</string>
2063 <string name="navigation_drawer_open">Åbn navigationsskuffe</string>
2064 <string name="navigation_drawer_close">Luk navigationsskuffe</string>
2065 <string name="next">Næste</string>
2066
2067=== modified file 'app/src/main/res/values-de/strings.xml'
2068--- app/src/main/res/values-de/strings.xml 2015-10-16 19:32:04 +0000
2069+++ app/src/main/res/values-de/strings.xml 2016-11-10 19:40:57 +0000
2070@@ -1,8 +1,8 @@
2071 <?xml version='1.0' encoding='UTF-8'?>
2072 <resources>
2073- <string name="about_display_1">OpenLP ist eine freie Präsentationssoftware für Kirchen und Gemeinden. Erfahre mehr über OpenLP.</string>
2074+ <string name="about_display_1">OpenLP ist eine freie Präsentationssoftware für Kirchen und Gemeinden.</string>
2075 <string name="about_display_2">Weitere Informationen sind auf der OpenLP Webseite zu finden.</string>
2076- <string name="about_display_4">Copyright</string>
2077+ <string name="about_display_4">Urheberrecht</string>
2078 <string name="about_display_5">Anteiliges Urheberrecht</string>
2079 <string name="about_display_6">Lizenz</string>
2080 <string name="about_display_7">Dieses Programm ist freie Software. Sie können es unter den Bedingungen der GNU General Public License Version 2, herausgegeben von der Free Software Foundation, weitergeben und/oder modifizieren.</string>
2081@@ -12,7 +12,7 @@
2082 <string name="action_alert">Hinweis</string>
2083 <string name="action_back">Zurück</string>
2084 <string name="action_blank">Anzeige umschalten</string>
2085- <string name="action_preferences">Voreinstellungen</string>
2086+ <string name="action_preferences">Einstellungen</string>
2087 <string name="action_refresh">Aktualisieren</string>
2088 <string name="action_search">Suche</string>
2089 <string name="app_name">OpenLP</string>
2090@@ -20,20 +20,20 @@
2091 <string name="connection_configuration">Netzwerk einrichten</string>
2092 <string name="connection_password">Passwort</string>
2093 <string name="connection_profile">Server-Einstellungen</string>
2094- <string name="connection_profile_ssl_use">HTTPS benutzen</string>
2095- <string name="connection_profile_ssl_summary">Festlegen, ob HTTPS verwendet werden soll</string>
2096 <string name="connection_timeout">Verbindungzeit überschritten</string>
2097 <string name="connection_timeout_summary">Wähle einen Wert (in Millisekunden)</string>
2098 <string name="connection_userid">Benutzername</string>
2099- <string name="custom_timeout">Setze eigenes Zeitlimit</string>
2100+ <string name="custom_timeout">Setze benutzerdefiniertes Zeitlimit</string>
2101 <string name="display_blank_summary">Wähle die erforderlichen Ansicht</string>
2102 <string name="display_desktop">Bildschirmhintergrund anzeigen</string>
2103+ <string name="display_list_autoscroll">Ausgewähltes Item mittig in Liste</string>
2104 <string name="display_reset">Live-Ansicht anzeigen</string>
2105 <string name="display_settings">Anzeigeeinstellung</string>
2106 <string name="display_screen">Abdunkeln</string>
2107 <string name="display_theme">Nur Design anzeigen</string>
2108 <string name="enable_custom_timeouts">Aktiviere eigene Time-outs</string>
2109 <string name="enter_alert_text">Hinweis eingeben</string>
2110+ <string name="enable_autoscroll">Anzeigen automatisch zentrieren</string>
2111 <string name="home">Start</string>
2112 <string name="httpreturn_unauthorised">Zugriff nicht erlaubt, bitte einen gültigen Benutzernamen und das korrekte Passwort eingeben</string>
2113 <string name="live_list">Live Liste</string>
2114
2115=== modified file 'app/src/main/res/values-en-rGB/strings.xml'
2116--- app/src/main/res/values-en-rGB/strings.xml 2015-10-16 19:32:04 +0000
2117+++ app/src/main/res/values-en-rGB/strings.xml 2016-11-10 19:40:57 +0000
2118@@ -20,8 +20,6 @@
2119 <string name="connection_configuration">Configure Network</string>
2120 <string name="connection_password">Password</string>
2121 <string name="connection_profile">Server Details</string>
2122- <string name="connection_profile_ssl_use">Use HTTPS</string>
2123- <string name="connection_profile_ssl_summary">Specify whether HTTPS should be used</string>
2124 <string name="connection_timeout">Connection Timeout</string>
2125 <string name="connection_timeout_summary">Select a value (milliseconds)</string>
2126 <string name="connection_userid">Username</string>
2127
2128=== modified file 'app/src/main/res/values-en-rZA/strings.xml'
2129--- app/src/main/res/values-en-rZA/strings.xml 2015-10-16 19:32:04 +0000
2130+++ app/src/main/res/values-en-rZA/strings.xml 2016-11-10 19:40:57 +0000
2131@@ -20,8 +20,6 @@
2132 <string name="connection_configuration">Configure Network</string>
2133 <string name="connection_password">Password</string>
2134 <string name="connection_profile">Server Details</string>
2135- <string name="connection_profile_ssl_use">Use HTTPS</string>
2136- <string name="connection_profile_ssl_summary">Specify whether HTTPS should be used</string>
2137 <string name="connection_timeout">Connection Timeout</string>
2138 <string name="connection_timeout_summary">Select a value (milliseconds)</string>
2139 <string name="connection_userid">Username</string>
2140
2141=== modified file 'app/src/main/res/values-es/strings.xml'
2142--- app/src/main/res/values-es/strings.xml 2015-10-16 19:32:04 +0000
2143+++ app/src/main/res/values-es/strings.xml 2016-11-10 19:40:57 +0000
2144@@ -20,23 +20,24 @@
2145 <string name="connection_configuration">Configurar Red</string>
2146 <string name="connection_password">Clave</string>
2147 <string name="connection_profile">Detalles de Servidor</string>
2148- <string name="connection_profile_ssl_use">Usar HTTPS</string>
2149- <string name="connection_profile_ssl_summary">Especificar si se debe usar HTTPS</string>
2150 <string name="connection_timeout">Tiempo de espera de conexión</string>
2151 <string name="connection_timeout_summary">Seleccione un valor (en milisegundos)</string>
2152 <string name="connection_userid">Usuario</string>
2153 <string name="custom_timeout">Tiempo de espera personalizado</string>
2154 <string name="display_blank_summary">Seleccionar la pantalla requerida</string>
2155 <string name="display_desktop">Mostrar Fondo del Escritorio</string>
2156+ <string name="display_list_autoscroll">Permitir que el elemento actual se desplace hacia el centro de la lista</string>
2157 <string name="display_reset">Mostrar pantalla En Vivo</string>
2158 <string name="display_settings">Preferencias de pantalla</string>
2159 <string name="display_screen">Mostrar Negro solamente</string>
2160 <string name="display_theme">Mostrar Tema solamente</string>
2161 <string name="enable_custom_timeouts">Permitir tiempos de espera personalizados</string>
2162 <string name="enter_alert_text">Ingrese Texto de Alerta</string>
2163+ <string name="enable_autoscroll">Permitir auto centrado de pantalla</string>
2164 <string name="home">Inicio</string>
2165 <string name="httpreturn_unauthorised">Acceso No Autorizado, ingrese usuario y clave válidos</string>
2166 <string name="live_list">Lista En Vivo</string>
2167+ <string name="live_view">Vista En Vivo</string>
2168 <string name="navigation_drawer_open">Abrir cajón de navegación</string>
2169 <string name="navigation_drawer_close">Cerrar cajón de navegación</string>
2170 <string name="next">Siguiente</string>
2171
2172=== modified file 'app/src/main/res/values-et/strings.xml'
2173--- app/src/main/res/values-et/strings.xml 2015-10-16 19:32:04 +0000
2174+++ app/src/main/res/values-et/strings.xml 2016-11-10 19:40:57 +0000
2175@@ -18,8 +18,6 @@
2176 <string name="connection_configuration">Seadista võrk</string>
2177 <string name="connection_password">Parool</string>
2178 <string name="connection_profile">Serveri andmed</string>
2179- <string name="connection_profile_ssl_use">HTTPSi kasutamine</string>
2180- <string name="connection_profile_ssl_summary">Määra, kas kasutada tuleks HTTPSi kaudu ühendust</string>
2181 <string name="connection_timeout">Ühenduse aegumine</string>
2182 <string name="connection_timeout_summary">Vali kestus (millisekundid)</string>
2183 <string name="connection_userid">Kasutajanimi</string>
2184@@ -36,6 +34,7 @@
2185 <string name="home">Kodu</string>
2186 <string name="httpreturn_unauthorised">Lubamatu ligipääs, palun sisesta õiged kasutajanimi ja parool.</string>
2187 <string name="live_list">Ekraanil</string>
2188+ <string name="live_view">Ekraan</string>
2189 <string name="navigation_drawer_open">Ava navisahtel</string>
2190 <string name="navigation_drawer_close">Sulge navisahtel</string>
2191 <string name="next">Järgmine</string>
2192
2193=== modified file 'app/src/main/res/values-fi/strings.xml'
2194--- app/src/main/res/values-fi/strings.xml 2015-10-16 19:32:04 +0000
2195+++ app/src/main/res/values-fi/strings.xml 2016-11-10 19:40:57 +0000
2196@@ -20,8 +20,6 @@
2197 <string name="connection_configuration">Verkon asetukset</string>
2198 <string name="connection_password">Salasana</string>
2199 <string name="connection_profile">Palvelimen asetukset</string>
2200- <string name="connection_profile_ssl_use">Käytä HTTPS</string>
2201- <string name="connection_profile_ssl_summary">Määrittele tahdotaanko HTTPS ottaa käyttöön</string>
2202 <string name="connection_timeout">Yhteyden aikakatkaisu</string>
2203 <string name="connection_timeout_summary">Valitse arvo (millisekuntia)</string>
2204 <string name="connection_userid">Käyttäjätunnus</string>
2205
2206=== modified file 'app/src/main/res/values-fr/strings.xml'
2207--- app/src/main/res/values-fr/strings.xml 2015-05-30 05:53:10 +0000
2208+++ app/src/main/res/values-fr/strings.xml 2016-11-10 19:40:57 +0000
2209@@ -1,25 +1,55 @@
2210 <?xml version='1.0' encoding='UTF-8'?>
2211 <resources>
2212+ <string name="about_display_1">OpenLP est un logiciel de projection libre</string>
2213+ <string name="about_display_2">Pour en savoir plus visitez le site web d\'OpenLP</string>
2214 <string name="about_display_4">Copyright</string>
2215 <string name="about_display_5">Copyright partiel</string>
2216 <string name="about_display_6">Licence</string>
2217+ <string name="about_display_7">Ce programme est un logiciel libre; vous pouvez le redistribuer et/ou le modifier au titre des clauses de la Licence Publique Générale GNU, telle que publiée par la Free Software Foundation; version 2 de la Licence.</string>
2218+ <string name="about_display_8">Ce programme est distribué dans l\'espoir qu\'il sera utile, mais SANS AUCUNE GARANTIE ; sans même une garantie implicite de COMMERCIABILITÉ ou DE CONFORMITÉ À UNE UTILISATION PARTICULIÈRE.</string>
2219 <string name="action_settings">Paramètres</string>
2220 <string name="action_about">A propos de</string>
2221 <string name="action_alert">Alerte</string>
2222 <string name="action_back">Arrière</string>
2223+ <string name="action_blank">Afficher/Masquer</string>
2224 <string name="action_preferences">Préférences</string>
2225 <string name="action_refresh">Rafraîchir</string>
2226 <string name="action_search">Recherche</string>
2227 <string name="app_name">OpenLP</string>
2228 <string name="cancel">Annuler</string>
2229+ <string name="connection_configuration">Configuration du réseau</string>
2230+ <string name="connection_password">Mot de passe</string>
2231+ <string name="connection_profile">Détails du serveur</string>
2232 <string name="connection_timeout">Délai de connexion</string>
2233 <string name="connection_timeout_summary">Sélectionnez une valeur (millisecondes)</string>
2234- <string name="display_blank_summary">Sélectionnez le type vide requis</string>
2235+ <string name="connection_userid">Nom d\'utilisateur</string>
2236+ <string name="custom_timeout">Définir un délai personnalisé</string>
2237+ <string name="display_blank_summary">Sélectionner l\'affichage souhaité</string>
2238+ <string name="display_desktop">Afficher le fond du bureau</string>
2239+ <string name="display_list_autoscroll">Permettre à l\'élément sélectionné de défiler au centre de la liste</string>
2240+ <string name="display_reset">Afficher le direct</string>
2241+ <string name="display_settings">Paramètres d\'affichage</string>
2242+ <string name="display_screen">Afficher un écran noir</string>
2243+ <string name="display_theme">Afficher uniquement le thème</string>
2244 <string name="enable_custom_timeouts">Activer le délai personnalisé</string>
2245+ <string name="enter_alert_text">Entrer le message d\'alerte</string>
2246+ <string name="enable_autoscroll">Permettre les affichages au centre</string>
2247 <string name="home">Accueil</string>
2248+ <string name="httpreturn_unauthorised">Accès refusé, veuillez entrer un nom d\'utilisateur et un mot de passe valide</string>
2249+ <string name="live_list">Liste du direct</string>
2250+ <string name="live_view">Vue du direct</string>
2251+ <string name="navigation_drawer_open">Ouvrir le tiroir de navigation</string>
2252+ <string name="navigation_drawer_close">Fermer le tiroir de navigation</string>
2253+ <string name="next">Suivant</string>
2254 <string name="none">Rien</string>
2255 <string name="port">Port</string>
2256+ <string name="previous">Précédent</string>
2257+ <string name="process">Processus</string>
2258+ <string name="service_list">Liste du service</string>
2259+ <string name="stage_view">Prompteur</string>
2260+ <string name="text_size">Sélectionner la taille du texte</string>
2261 <string name="text_size_summary">Modifier la taille du texte du service</string>
2262 <string name="title_activity_settings">Paramètres</string>
2263 <string name="url_hint">Nom d\'hôte ou IP</string>
2264+ <string name="unable">Impossible d\'effectuer la demande - vérifiez les paramètres réseau</string>
2265 </resources>
2266
2267=== modified file 'app/src/main/res/values-hu/strings.xml'
2268--- app/src/main/res/values-hu/strings.xml 2015-10-16 19:32:04 +0000
2269+++ app/src/main/res/values-hu/strings.xml 2016-11-10 19:40:57 +0000
2270@@ -20,13 +20,11 @@
2271 <string name="connection_configuration">Hálózat beállítása</string>
2272 <string name="connection_password">Jelszó</string>
2273 <string name="connection_profile">Szerver részletek</string>
2274- <string name="connection_profile_ssl_use">HTTPS alkalmazása</string>
2275- <string name="connection_profile_ssl_summary">HTTPS alkalmazásának meghatározása</string>
2276 <string name="connection_timeout">Kapcsolódási időtúllépés</string>
2277- <string name="connection_timeout_summary">Válassz egy értéket (milliszekundum)</string>
2278+ <string name="connection_timeout_summary">Érték választása (milliszekundum)</string>
2279 <string name="connection_userid">Felhasználói név</string>
2280 <string name="custom_timeout">Egyéni időtúllépés beállítása</string>
2281- <string name="display_blank_summary">Válaszd ki a kívánt megjelenést</string>
2282+ <string name="display_blank_summary">Kívánt megjelenés kiválasztása</string>
2283 <string name="display_desktop">Asztal hátterének megjelenítése</string>
2284 <string name="display_list_autoscroll">Görgetés a lista közepére a kijelölt elemhez</string>
2285 <string name="display_reset">Élő adás megjelenítése</string>
2286@@ -37,7 +35,7 @@
2287 <string name="enter_alert_text">Riasztási üzenet megadása</string>
2288 <string name="enable_autoscroll">Megjelenés automatikus középre igazítása</string>
2289 <string name="home">Kezdőlap</string>
2290- <string name="httpreturn_unauthorised">Engedély nélküli hozzáférés, adjon meg érvényes felhasználói nevet és jelszót</string>
2291+ <string name="httpreturn_unauthorised">Engedély nélküli hozzáférés, érvényes a felhasználói név és a jelszó?</string>
2292 <string name="live_list">Élő lista</string>
2293 <string name="live_view">Élő nézet</string>
2294 <string name="navigation_drawer_open">Menü megnyitása</string>
2295@@ -53,5 +51,5 @@
2296 <string name="text_size_summary">Sorrend betűméretének módosítása</string>
2297 <string name="title_activity_settings">Beállítások</string>
2298 <string name="url_hint">Gépnév vagy IP-cím</string>
2299- <string name="unable">A kérés feldolgozhatatlan - ellenőrizzük a hálózati beállításokat</string>
2300+ <string name="unable">A kérés feldolgozhatatlan ‒ a hálózati beállítások ellenőrzése javasolt</string>
2301 </resources>
2302
2303=== modified file 'app/src/main/res/values-id/strings.xml'
2304--- app/src/main/res/values-id/strings.xml 2015-10-16 19:32:04 +0000
2305+++ app/src/main/res/values-id/strings.xml 2016-11-10 19:40:57 +0000
2306@@ -20,22 +20,24 @@
2307 <string name="connection_configuration">Mengkonfigurasi Jaringan</string>
2308 <string name="connection_password">Kata sandi</string>
2309 <string name="connection_profile">Rincian Server</string>
2310- <string name="connection_profile_ssl_use">Gunakan HTTPS</string>
2311- <string name="connection_profile_ssl_summary">Tentukan apakah HTTPS seharusnya digunakan</string>
2312 <string name="connection_timeout">Batas-Waktu Sambungan</string>
2313 <string name="connection_timeout_summary">Pilih sebuah nilai (milidetik)</string>
2314 <string name="connection_userid">Nama Pengguna</string>
2315 <string name="custom_timeout">Setel Batas-waktu Kustom</string>
2316 <string name="display_blank_summary">Pilih tampilan yang dibutuhkan</string>
2317 <string name="display_desktop">Tampilkan latar Desktop</string>
2318+ <string name="display_list_autoscroll">Izinkan butir terpilih untuk digulir ke tengah daftar</string>
2319 <string name="display_reset">Tampilkan tampilan Tayang</string>
2320+ <string name="display_settings">Setelan Tampilan</string>
2321 <string name="display_screen">Tampilkan Layar Hitam saja</string>
2322 <string name="display_theme">Tampilkan Tema saja</string>
2323 <string name="enable_custom_timeouts">Aktifkan Batas-Waktu Kustom</string>
2324 <string name="enter_alert_text">Masukkan Teks Peringatan</string>
2325+ <string name="enable_autoscroll">Izinkan semua tampilan diposisikan ke tengah secara otomatis</string>
2326 <string name="home">Beranda</string>
2327 <string name="httpreturn_unauthorised">Akses Tidak sah, silakan masukkan nama pengguna dan kata sandi yang valid</string>
2328 <string name="live_list">Daftar Tayang</string>
2329+ <string name="live_view">Tinjauan Tayang</string>
2330 <string name="navigation_drawer_open">Buka penarik navigasi</string>
2331 <string name="navigation_drawer_close">Tutup penarik navigasi</string>
2332 <string name="next">Selanjutnya</string>
2333
2334=== modified file 'app/src/main/res/values-it/strings.xml'
2335--- app/src/main/res/values-it/strings.xml 2015-05-30 05:53:10 +0000
2336+++ app/src/main/res/values-it/strings.xml 2016-11-10 19:40:57 +0000
2337@@ -1,6 +1,55 @@
2338 <?xml version='1.0' encoding='UTF-8'?>
2339 <resources>
2340- <string name="about_display_6">Licensa</string>
2341- <string name="action_alert">Allerta</string>
2342+ <string name="about_display_1">OpenLP è un software libero di presentazione per le Chiese</string>
2343+ <string name="about_display_2">Per saperne di più visita il sito Web OpenLP</string>
2344+ <string name="about_display_4">Copyright</string>
2345+ <string name="about_display_5">Porzioni di copyright</string>
2346+ <string name="about_display_6">Licenza</string>
2347+ <string name="about_display_7">Questo è un software libero; può essere redistribuito e/o modificato nei termini della GNU General Public License come pubblicato dalla Free Software Foundation; vesione 2 della licenza</string>
2348+ <string name="about_display_8">Questo programma è distribuito nella speranza che sia utile, ma SENZA ALCUNA GARANZIA, senza neppure l\'implicita garanzia della COMMERCIABILITA\' o IDONEITA\' PER UN PARTICOLARE SCOPO</string>
2349+ <string name="action_settings">Impostazioni</string>
2350+ <string name="action_about">Informazioni</string>
2351+ <string name="action_alert">Avviso</string>
2352+ <string name="action_back">Indietro</string>
2353+ <string name="action_blank">Attiva/disattiva visualizzazione</string>
2354+ <string name="action_preferences">Preferenze</string>
2355+ <string name="action_refresh">Aggiorna</string>
2356 <string name="action_search">Ricerca</string>
2357+ <string name="app_name">OpenLP</string>
2358+ <string name="cancel">Annulla</string>
2359+ <string name="connection_configuration">Configura Rete</string>
2360+ <string name="connection_password">Password</string>
2361+ <string name="connection_profile">Dettagli Server</string>
2362+ <string name="connection_timeout">Timeout Connessione</string>
2363+ <string name="connection_timeout_summary">Seleziona un valore (millisecondi)</string>
2364+ <string name="connection_userid">Nome Utente</string>
2365+ <string name="custom_timeout">Imposta Timeout personalizzato</string>
2366+ <string name="display_blank_summary">Selezionare il monitor desiderato</string>
2367+ <string name="display_desktop">Visualizza sfondo Desktop</string>
2368+ <string name="display_list_autoscroll">Consentire l\'elemento selezionato di scorrere al centro dell\'elenco</string>
2369+ <string name="display_reset">Visualizzazione Live Show</string>
2370+ <string name="display_settings">Impostazione Visualizzazione</string>
2371+ <string name="display_screen">Solo Schermo Nero</string>
2372+ <string name="display_theme">Visualizza solo il Tema</string>
2373+ <string name="enable_custom_timeouts">Abilitare i timeout personalizzati</string>
2374+ <string name="enter_alert_text">Inserisci il testo Avviso</string>
2375+ <string name="enable_autoscroll">Consenti la visualizzazione al centro automaticamente</string>
2376+ <string name="home">Inizio</string>
2377+ <string name="httpreturn_unauthorised">Accesso non consentito, prego inserire un nome utente e password valida</string>
2378+ <string name="live_list">Elenco LIVE</string>
2379+ <string name="live_view">Visualizza LIVE</string>
2380+ <string name="navigation_drawer_open">Apri sezione navigazione</string>
2381+ <string name="navigation_drawer_close">Chiudi sezione navigazione</string>
2382+ <string name="next">Successivo</string>
2383+ <string name="none">Nessuno</string>
2384+ <string name="port">Porta</string>
2385+ <string name="previous">Precedente</string>
2386+ <string name="process">Elabora</string>
2387+ <string name="service_list">Elenco Servizio</string>
2388+ <string name="stage_view">Visualizza Palco</string>
2389+ <string name="text_size">Selezionare la dimensione testo di visualizzazione</string>
2390+ <string name="text_size_summary">Modificare le dimensioni del testo di servizio</string>
2391+ <string name="title_activity_settings">Impostazioni</string>
2392+ <string name="url_hint">Hostname o IP</string>
2393+ <string name="unable">Impossibile elaborare la richiesta - controllare le impostazioni di rete</string>
2394 </resources>
2395
2396=== modified file 'app/src/main/res/values-ja/strings.xml'
2397--- app/src/main/res/values-ja/strings.xml 2015-05-30 05:53:10 +0000
2398+++ app/src/main/res/values-ja/strings.xml 2016-11-10 19:40:57 +0000
2399@@ -1,8 +1,12 @@
2400 <?xml version='1.0' encoding='UTF-8'?>
2401 <resources>
2402+ <string name="about_display_1">OpenLPは無償の教会プレゼンテーション用ソフトです。</string>
2403+ <string name="about_display_2">詳しくはOpenLPウェブサイトをご覧ください。</string>
2404 <string name="about_display_4">著作権</string>
2405 <string name="about_display_5">追加の著作権</string>
2406 <string name="about_display_6">ライセンス</string>
2407+ <string name="about_display_7">このプログラムはフリーソフトウェアです。あなたはこれを、フリーソフトウェア財団によって発行された GNU 一般公衆利用許諾契約書バージョン2の定める条件の下で再頒布または改変することができます。</string>
2408+ <string name="about_display_8">このプログラムは有用であることを願って頒布されますが、*全くの無保証* です。商業可能性の保証や特定の目的への適合性は、言外に示されたものも含め全く存在しません。</string>
2409 <string name="action_settings">設定</string>
2410 <string name="action_about">情報</string>
2411 <string name="action_alert">警告</string>
2412@@ -12,13 +16,23 @@
2413 <string name="action_search">検索</string>
2414 <string name="app_name">OpenLP</string>
2415 <string name="cancel">キャンセル</string>
2416+ <string name="connection_configuration">ネットワーク設定</string>
2417+ <string name="connection_password">パスワード</string>
2418+ <string name="connection_profile">サーバの詳細</string>
2419 <string name="connection_timeout">接続タイムアウト</string>
2420 <string name="connection_timeout_summary">値を選択 (ミリ秒)</string>
2421- <string name="display_blank_summary">ブランクの種類を選択してください</string>
2422+ <string name="connection_userid">ユーザ名</string>
2423+ <string name="custom_timeout">任意のタイムアウト時間を設定する</string>
2424 <string name="enable_custom_timeouts">任意のタイムアウトを有効にする</string>
2425+ <string name="enter_alert_text">警告文を入力</string>
2426 <string name="home">ホーム</string>
2427+ <string name="httpreturn_unauthorised">認証が必要です。ユーザ名とパスワードを入力してください。</string>
2428+ <string name="live_list">ライブ一覧</string>
2429+ <string name="next">次</string>
2430 <string name="none">無し</string>
2431 <string name="port">ポート</string>
2432+ <string name="previous">前</string>
2433+ <string name="text_size">文字の大きさを選択</string>
2434 <string name="text_size_summary">礼拝テキストの大きさを変更します</string>
2435 <string name="title_activity_settings">設定</string>
2436 <string name="url_hint">ホスト名またはIPアドレス</string>
2437
2438=== modified file 'app/src/main/res/values-ko/strings.xml'
2439--- app/src/main/res/values-ko/strings.xml 2015-05-30 05:53:10 +0000
2440+++ app/src/main/res/values-ko/strings.xml 2016-11-10 19:40:57 +0000
2441@@ -2,9 +2,14 @@
2442 <resources>
2443 <string name="about_display_6">라이선스</string>
2444 <string name="action_settings">설정</string>
2445+ <string name="action_about">정보</string>
2446 <string name="action_alert">알림</string>
2447+ <string name="action_back">뒤로</string>
2448+ <string name="action_refresh">새로 고침</string>
2449 <string name="action_search">검색</string>
2450 <string name="cancel">취소</string>
2451+ <string name="home">처음</string>
2452+ <string name="next">다음</string>
2453 <string name="port">포트</string>
2454 <string name="title_activity_settings">설정</string>
2455 </resources>
2456
2457=== modified file 'app/src/main/res/values-large/refs.xml'
2458--- app/src/main/res/values-large/refs.xml 2015-05-27 20:05:55 +0000
2459+++ app/src/main/res/values-large/refs.xml 2016-11-10 19:40:57 +0000
2460@@ -7,6 +7,5 @@
2461 For more on layout aliases, see:
2462 http://developer.android.com/training/multiscreen/screensizes.html#TaskUseAliasFilters
2463 -->
2464- <item name="fragment_item" type="layout">@layout/fragment_item_grid</item>
2465
2466 </resources>
2467\ No newline at end of file
2468
2469=== modified file 'app/src/main/res/values-lt/strings.xml'
2470--- app/src/main/res/values-lt/strings.xml 2015-10-16 19:32:04 +0000
2471+++ app/src/main/res/values-lt/strings.xml 2016-11-10 19:40:57 +0000
2472@@ -20,8 +20,6 @@
2473 <string name="connection_configuration">Konfigūruoti Tinklą</string>
2474 <string name="connection_password">Slaptažodis</string>
2475 <string name="connection_profile">Išsamiau apie Serverį</string>
2476- <string name="connection_profile_ssl_use">Naudoti HTTPS</string>
2477- <string name="connection_profile_ssl_summary">Nurodykite ar turėtų būti naudojamas HTTPS</string>
2478 <string name="connection_timeout">Sujungimo Laiko Limitas</string>
2479 <string name="connection_timeout_summary">Pasirinkite reikšmę (milisekundėmis)</string>
2480 <string name="connection_userid">Vartotojo vardas</string>
2481
2482=== modified file 'app/src/main/res/values-lv/strings.xml'
2483--- app/src/main/res/values-lv/strings.xml 2015-05-30 05:53:10 +0000
2484+++ app/src/main/res/values-lv/strings.xml 2016-11-10 19:40:57 +0000
2485@@ -1,8 +1,55 @@
2486 <?xml version='1.0' encoding='UTF-8'?>
2487 <resources>
2488+ <string name="about_display_1">OpenLP ir bezmaksas prezentāciju programma baznīcām</string>
2489+ <string name="about_display_2">Lai uzzinātu vairāk, apmeklējiet mājaslapu</string>
2490+ <string name="about_display_4">Autortiesības</string>
2491+ <string name="about_display_5">Daļu autortiesības</string>
2492+ <string name="about_display_6">Licence</string>
2493+ <string name="about_display_7">Šī ir bezmaksas programma. Jūs varat to izplatīt vai mainīt pēc GNU publiskās licences noteikumiem, kas publicēti Free Software Foundation, 2. versijas licencē.</string>
2494+ <string name="about_display_8">Šī programma ir izplatīta ar cerību, ka tā būs noderīga, bet be jebkādām garantijām par tās noderīgumu mērķim vai ienesīgumu.</string>
2495 <string name="action_settings">Iestatījumi</string>
2496+ <string name="action_about">Par</string>
2497+ <string name="action_alert">Ziņojums</string>
2498+ <string name="action_back">Atgriezties</string>
2499+ <string name="action_blank">Pārslēgt displeju</string>
2500+ <string name="action_preferences">Iestatījumi</string>
2501+ <string name="action_refresh">Atsvaidzināt</string>
2502+ <string name="action_search">Meklēt</string>
2503 <string name="app_name">OpenLP</string>
2504- <string name="connection_timeout">Savienojuma laika beigas</string>
2505+ <string name="cancel">Atcelt</string>
2506+ <string name="connection_configuration">Tīkla konfigurācija</string>
2507+ <string name="connection_password">Parole</string>
2508+ <string name="connection_profile">Servera iestatījumi</string>
2509+ <string name="connection_timeout">Savienojuma noildze</string>
2510 <string name="connection_timeout_summary">Izvēlieties vērtību (milisekundes)</string>
2511+ <string name="connection_userid">Lietotājvārds</string>
2512+ <string name="custom_timeout">Izvēlieties vēlamo noildzi</string>
2513+ <string name="display_blank_summary">Izvēlieties nepieciešamo displeju</string>
2514+ <string name="display_desktop">Parādīt fona attēlu</string>
2515+ <string name="display_list_autoscroll">Atļaut šim elementa pārvietoties uz saraksta centru</string>
2516+ <string name="display_reset">Parādīt displeju</string>
2517+ <string name="display_settings">Ekrāna iestatījumi</string>
2518+ <string name="display_screen">Attēlot melnu ekrānu</string>
2519+ <string name="display_theme">Attēlot tēmas attēlu</string>
2520+ <string name="enable_custom_timeouts">Iespējot pielāgotās noildzes</string>
2521+ <string name="enter_alert_text">Ievadiet ziņojuma tekstu</string>
2522+ <string name="enable_autoscroll">Atļaut ekrānam iecentrēties automatiski.</string>
2523+ <string name="home">Sākums</string>
2524+ <string name="httpreturn_unauthorised">Pieeja liegta! Lūdzu ievadiet pareizu lietotājvārdu un paroli.</string>
2525+ <string name="live_list">Saraksts demonstrēšanai</string>
2526+ <string name="live_view">Attēls ekrānā</string>
2527+ <string name="navigation_drawer_open">Atvērt navigācijas slaidni</string>
2528+ <string name="navigation_drawer_close">Aizvērt navigācijas slaidni</string>
2529+ <string name="next">Nākamais</string>
2530+ <string name="none">Nekas</string>
2531+ <string name="port">Ports</string>
2532+ <string name="previous">Iepriekšējais</string>
2533+ <string name="process">Process</string>
2534+ <string name="service_list">Saraksts</string>
2535+ <string name="stage_view">Skatuves ekrāns</string>
2536+ <string name="text_size">Izvēlieties teksta lielumu</string>
2537+ <string name="text_size_summary">Izvēlieties dievkalpojuma teksta lielumu</string>
2538 <string name="title_activity_settings">Iestatījumi</string>
2539+ <string name="url_hint">Vārds vai IP adrese</string>
2540+ <string name="unable">Nav iespējams apstrādāt pieprasījumu - pārbaudiet tīkla iestatījumus.</string>
2541 </resources>
2542
2543=== modified file 'app/src/main/res/values-nb/strings.xml'
2544--- app/src/main/res/values-nb/strings.xml 2015-10-16 19:32:04 +0000
2545+++ app/src/main/res/values-nb/strings.xml 2016-11-10 19:40:57 +0000
2546@@ -20,8 +20,6 @@
2547 <string name="connection_configuration">Konfigurer nettverk</string>
2548 <string name="connection_password">Passord</string>
2549 <string name="connection_profile">Serverditaljer</string>
2550- <string name="connection_profile_ssl_use">Bruk HTTPS</string>
2551- <string name="connection_profile_ssl_summary">Angi om HTTPS skal brukes</string>
2552 <string name="connection_timeout">Tidsavbrudd for tilkobling</string>
2553 <string name="connection_timeout_summary">Velg en verdi (millisekund)</string>
2554 <string name="connection_userid">Brukernavn</string>
2555
2556=== modified file 'app/src/main/res/values-nl/strings.xml'
2557--- app/src/main/res/values-nl/strings.xml 2015-10-16 19:32:04 +0000
2558+++ app/src/main/res/values-nl/strings.xml 2016-11-10 19:40:57 +0000
2559@@ -20,22 +20,24 @@
2560 <string name="connection_configuration">Netwerk instellen</string>
2561 <string name="connection_password">Wachtwoord</string>
2562 <string name="connection_profile">Serverdetails</string>
2563- <string name="connection_profile_ssl_use">Gebruik HTTPS</string>
2564- <string name="connection_profile_ssl_summary">Geef aan of HTTPS gebruikt moet worden</string>
2565 <string name="connection_timeout">Verbindingstimeout</string>
2566 <string name="connection_timeout_summary">Selecteer een waarde (milliseconden)</string>
2567 <string name="connection_userid">Gebruikersnaam</string>
2568 <string name="custom_timeout">Aangepaste timeout instellen</string>
2569 <string name="display_blank_summary">Selecteer het verplichte scherm</string>
2570 <string name="display_desktop">Toon Desktop achtergrond</string>
2571+ <string name="display_list_autoscroll">Toegang geven aan geselecteerde items om naar het midden van de lijst te scrollen</string>
2572 <string name="display_reset">Toon live scherm</string>
2573+ <string name="display_settings">Beeldscherminstellingen</string>
2574 <string name="display_screen">Toon alleen zwart</string>
2575 <string name="display_theme">Toon alleen thema</string>
2576 <string name="enable_custom_timeouts"> Aangepaste timeouts toestaan</string>
2577 <string name="enter_alert_text">Voer waarschuwingstekst in</string>
2578+ <string name="enable_autoscroll">Schermen toegang geven tot auto center</string>
2579 <string name="home">Startpagina</string>
2580 <string name="httpreturn_unauthorised">Geen toegang, voer juiste gebruikersnaam en wachtwoord in</string>
2581 <string name="live_list">Live lijst</string>
2582+ <string name="live_view">Live kijken</string>
2583 <string name="navigation_drawer_open">Open navigatiemenu</string>
2584 <string name="navigation_drawer_close">Sluit navigatiemenu</string>
2585 <string name="next">Volgende</string>
2586
2587=== modified file 'app/src/main/res/values-nn/strings.xml'
2588--- app/src/main/res/values-nn/strings.xml 2015-05-30 05:53:10 +0000
2589+++ app/src/main/res/values-nn/strings.xml 2016-11-10 19:40:57 +0000
2590@@ -5,6 +5,8 @@
2591 <string name="app_name">OpenLP</string>
2592 <string name="connection_timeout">Tidsavbrot for tilkopling</string>
2593 <string name="connection_timeout_summary">Oppgje ein verdi i millisekund</string>
2594+ <string name="next">Neste</string>
2595 <string name="port">Port</string>
2596+ <string name="previous">Førre</string>
2597 <string name="title_activity_settings">Innstillingar.</string>
2598 </resources>
2599
2600=== modified file 'app/src/main/res/values-pap/strings.xml'
2601--- app/src/main/res/values-pap/strings.xml 2015-05-30 05:53:10 +0000
2602+++ app/src/main/res/values-pap/strings.xml 2016-11-10 19:40:57 +0000
2603@@ -8,10 +8,11 @@
2604 <string name="action_preferences">Preferensia</string>
2605 <string name="action_search">Buska</string>
2606 <string name="app_name">OpenLP</string>
2607- <string name="display_blank_summary">Selekta e tipo blanko nesesario</string>
2608 <string name="enable_custom_timeouts">Permití Timeout adaptá</string>
2609+ <string name="next">Sigiente</string>
2610 <string name="none">Niun</string>
2611 <string name="port">Port</string>
2612+ <string name="previous">Bai bèk</string>
2613 <string name="title_activity_settings">Konfigurashon</string>
2614 <string name="url_hint">Hostname òf IP</string>
2615 </resources>
2616
2617=== modified file 'app/src/main/res/values-pl/strings.xml'
2618--- app/src/main/res/values-pl/strings.xml 2015-10-16 19:32:04 +0000
2619+++ app/src/main/res/values-pl/strings.xml 2016-11-10 19:40:57 +0000
2620@@ -11,6 +11,7 @@
2621 <string name="action_about">O programie</string>
2622 <string name="action_alert">Komunikat</string>
2623 <string name="action_back">Wróć</string>
2624+ <string name="action_blank">Przełącz Ekran</string>
2625 <string name="action_preferences">Preferencje</string>
2626 <string name="action_refresh">Odśwież</string>
2627 <string name="action_search">Szukaj</string>
2628@@ -19,23 +20,26 @@
2629 <string name="connection_configuration">Konfiguruj sieć</string>
2630 <string name="connection_password">Hasło</string>
2631 <string name="connection_profile">Szczegóły serwera</string>
2632- <string name="connection_profile_ssl_use">Używaj HTTPS</string>
2633- <string name="connection_profile_ssl_summary">Sprecyzuj czy HTTPS powinno być używane</string>
2634 <string name="connection_timeout">Limit czasowy połączenia</string>
2635 <string name="connection_timeout_summary">Wybierz wartość (milisekundy)</string>
2636 <string name="connection_userid">Nazwa użytkownika</string>
2637 <string name="custom_timeout">Ustaw inny limit czasowy</string>
2638 <string name="display_blank_summary">Wybierz wyświetlacz</string>
2639 <string name="display_desktop">Wyświetl tło ekranu</string>
2640+ <string name="display_list_autoscroll">Pozwól wybranemu elementowi przewinąć do środka listy</string>
2641 <string name="display_reset">Pokaż Ekran</string>
2642+ <string name="display_settings">Ustawienia wyświetlania</string>
2643 <string name="display_screen">Wyświetl czarny ekran</string>
2644 <string name="display_theme">Wyświetl tylko motyw</string>
2645 <string name="enable_custom_timeouts">Niestandardowy limit czasu</string>
2646 <string name="enter_alert_text">Wpisz tekst komunikatu</string>
2647+ <string name="enable_autoscroll">Pozwól na autowyśrodkowanie </string>
2648 <string name="home">Home</string>
2649 <string name="httpreturn_unauthorised">Nieuprawniony dostęp, proszę wprowadź nazwę użytkownika oraz hasło.</string>
2650 <string name="live_list">Plan nabożeństwa</string>
2651 <string name="live_view">Ekran</string>
2652+ <string name="navigation_drawer_open">Otwórz zakładkę nawigacji</string>
2653+ <string name="navigation_drawer_close">Zamknij zakładkę nawigacji</string>
2654 <string name="next">Następny</string>
2655 <string name="none">Nic</string>
2656 <string name="port">Port</string>
2657
2658=== modified file 'app/src/main/res/values-pt-rBR/strings.xml'
2659--- app/src/main/res/values-pt-rBR/strings.xml 2015-10-16 19:32:04 +0000
2660+++ app/src/main/res/values-pt-rBR/strings.xml 2016-11-10 19:40:57 +0000
2661@@ -11,7 +11,7 @@
2662 <string name="action_about">Sobre</string>
2663 <string name="action_alert">Alertar</string>
2664 <string name="action_back">Voltar</string>
2665- <string name="action_blank">Altenar Monitor</string>
2666+ <string name="action_blank">Alternar Monitor</string>
2667 <string name="action_preferences">Preferências</string>
2668 <string name="action_refresh">Atualizar</string>
2669 <string name="action_search">Busca</string>
2670@@ -20,30 +20,33 @@
2671 <string name="connection_configuration">Configurar Rede</string>
2672 <string name="connection_password">Senha</string>
2673 <string name="connection_profile">Detalhes do Servidor</string>
2674- <string name="connection_profile_ssl_use">Usar HTTPS</string>
2675- <string name="connection_profile_ssl_summary">Especifique se o HTTPS deve ser usado</string>
2676 <string name="connection_timeout">Tempo limite de conexão</string>
2677 <string name="connection_timeout_summary">Selecione um valor (em milissegundos)</string>
2678 <string name="connection_userid">Usuário</string>
2679 <string name="custom_timeout">Ativar Timeout Personalizado</string>
2680 <string name="display_blank_summary">Selecione o monitor requerido</string>
2681 <string name="display_desktop">Exibir Plano de Fundo da Área de Trabalho</string>
2682+ <string name="display_list_autoscroll">Permitir ao item selecionado se deslocar ao centro da lista</string>
2683 <string name="display_reset">Mostrar Visualização Ao Vivo</string>
2684 <string name="display_settings">Configurações de Exibição</string>
2685 <string name="display_screen">Exibir Tela Preta</string>
2686 <string name="display_theme">Exibir Tema</string>
2687 <string name="enable_custom_timeouts">Habilitar Timeouts personalizados</string>
2688 <string name="enter_alert_text">Digitar Texto de Alerta</string>
2689+ <string name="enable_autoscroll">Auto-centralizar slides na tela</string>
2690 <string name="home">Home</string>
2691 <string name="httpreturn_unauthorised">Acesso não autorizado, por favor, digite usuário e senha válidos</string>
2692 <string name="live_list">Lista Ao Vivo</string>
2693+ <string name="live_view">Ao vivo</string>
2694+ <string name="navigation_drawer_open">Abrir painel de navegação</string>
2695+ <string name="navigation_drawer_close">Fechar painel de navegação</string>
2696 <string name="next">Próximo</string>
2697 <string name="none">Nenhum</string>
2698 <string name="port">Porta</string>
2699 <string name="previous">Anterior</string>
2700 <string name="process">Processo</string>
2701 <string name="service_list">Lista de Serviço</string>
2702- <string name="stage_view">Visualização de Palvo</string>
2703+ <string name="stage_view">Visualização de Palco</string>
2704 <string name="text_size">Selecionar tamanho do monitor de exibição</string>
2705 <string name="text_size_summary">Alterar o tamanho do texto de culto</string>
2706 <string name="title_activity_settings">Configurações</string>
2707
2708=== modified file 'app/src/main/res/values-ro/strings.xml'
2709--- app/src/main/res/values-ro/strings.xml 2015-10-16 19:32:04 +0000
2710+++ app/src/main/res/values-ro/strings.xml 2016-11-10 19:40:57 +0000
2711@@ -20,8 +20,6 @@
2712 <string name="connection_configuration">Configurează Rețeaua</string>
2713 <string name="connection_password">Parola</string>
2714 <string name="connection_profile">Detalii Server</string>
2715- <string name="connection_profile_ssl_use">Folosește HTTPS</string>
2716- <string name="connection_profile_ssl_summary">Specificați dacă ar trebui folosit HTTPS</string>
2717 <string name="connection_timeout">Conexiunea a expirat</string>
2718 <string name="connection_timeout_summary">Selectați o valoare (milisecunde)</string>
2719 <string name="connection_userid">Nume utilizator</string>
2720
2721=== modified file 'app/src/main/res/values-ru/strings.xml'
2722--- app/src/main/res/values-ru/strings.xml 2015-10-08 18:25:59 +0000
2723+++ app/src/main/res/values-ru/strings.xml 2016-11-10 19:40:57 +0000
2724@@ -20,25 +20,20 @@
2725 <string name="connection_configuration">Настроить сеть</string>
2726 <string name="connection_password">Пароль</string>
2727 <string name="connection_profile">Параметры сервера</string>
2728- <string name="connection_profile_ssl_use">Использовать HTTPS</string>
2729- <string name="connection_profile_ssl_summary">Укажите, следует ли использовать HTTPS</string>
2730 <string name="connection_timeout">Время ожидания соединения</string>
2731 <string name="connection_timeout_summary">Выберите значение (в миллисекундах)</string>
2732 <string name="custom_timeout">Установить пользовательский тайм-аут</string>
2733- <string name="display_blank_summary">Выберите нужный тип блокировки</string>
2734- <string name="display_desktop">Показать рабочий стол</string>
2735- <string name="display_reset">Сбросить дисплей</string>
2736- <string name="display_screen">Очистить дисплей (черный)</string>
2737- <string name="display_theme">Очистить контент дисплея</string>
2738 <string name="enable_custom_timeouts">Включить пользовательские тайм-ауты</string>
2739 <string name="enter_alert_text">Введите текст оповещения</string>
2740 <string name="home">Домой</string>
2741+ <string name="live_view">Вид прямого эфира</string>
2742+ <string name="next">Следующий</string>
2743 <string name="none">Ничего</string>
2744 <string name="port">Порт</string>
2745+ <string name="previous">Предыдущий</string>
2746 <string name="process">Выполнение</string>
2747 <string name="service_list">Список служения</string>
2748 <string name="stage_view">Вид сцены</string>
2749-
2750 <string name="text_size">Выберите размер текста</string>
2751 <string name="text_size_summary">Изменить размер текста Служения</string>
2752 <string name="title_activity_settings">Параметры</string>
2753
2754=== modified file 'app/src/main/res/values-sk/strings.xml'
2755--- app/src/main/res/values-sk/strings.xml 2015-10-16 19:32:04 +0000
2756+++ app/src/main/res/values-sk/strings.xml 2016-11-10 19:40:57 +0000
2757@@ -20,8 +20,6 @@
2758 <string name="connection_configuration">Nastavenie sieťe</string>
2759 <string name="connection_password">Heslo</string>
2760 <string name="connection_profile">Podrobnosti servera</string>
2761- <string name="connection_profile_ssl_use">Použiť HTTPS</string>
2762- <string name="connection_profile_ssl_summary">Upresniť či by malo byť použité HTTPS</string>
2763 <string name="connection_timeout">Časový limit spojenia</string>
2764 <string name="connection_timeout_summary">Vybrať hodnotu (milisekundy)</string>
2765 <string name="connection_userid">Používateľské meno</string>
2766
2767=== modified file 'app/src/main/res/values-sv/strings.xml'
2768--- app/src/main/res/values-sv/strings.xml 2015-10-16 19:32:04 +0000
2769+++ app/src/main/res/values-sv/strings.xml 2016-11-10 19:40:57 +0000
2770@@ -20,8 +20,6 @@
2771 <string name="connection_configuration">Konfigurera nätverk</string>
2772 <string name="connection_password">Lösenord</string>
2773 <string name="connection_profile">Serverinställningar</string>
2774- <string name="connection_profile_ssl_use">Använd HTTPS</string>
2775- <string name="connection_profile_ssl_summary">Ange om HTTPS ska användas</string>
2776 <string name="connection_timeout">Anslutningstimeout</string>
2777 <string name="connection_timeout_summary">Välj ett värde (millisekunder)</string>
2778 <string name="connection_userid">Användarnamn</string>
2779
2780=== modified file 'app/src/main/res/values-sw600dp/refs.xml'
2781--- app/src/main/res/values-sw600dp/refs.xml 2015-05-27 20:05:55 +0000
2782+++ app/src/main/res/values-sw600dp/refs.xml 2016-11-10 19:40:57 +0000
2783@@ -7,6 +7,4 @@
2784 For more on layout aliases, see:
2785 http://developer.android.com/training/multiscreen/screensizes.html#TaskUseAliasFilters
2786 -->
2787- <item name="fragment_item" type="layout">@layout/fragment_item_grid</item>
2788-
2789 </resources>
2790\ No newline at end of file
2791
2792=== modified file 'app/src/main/res/values-uk/strings.xml'
2793--- app/src/main/res/values-uk/strings.xml 2015-10-16 19:32:04 +0000
2794+++ app/src/main/res/values-uk/strings.xml 2016-11-10 19:40:57 +0000
2795@@ -20,26 +20,30 @@
2796 <string name="connection_configuration">Налаштування Мережі</string>
2797 <string name="connection_password">Пароль</string>
2798 <string name="connection_profile">Деталі Сервера</string>
2799- <string name="connection_profile_ssl_use">Використовувати HTTPS</string>
2800- <string name="connection_profile_ssl_summary">Вкажіть, чи варто використовувати протокол HTTPS</string>
2801 <string name="connection_timeout">Час очікування з\'єднання</string>
2802 <string name="connection_timeout_summary">Виберіть значення (в мілісекундах)</string>
2803 <string name="connection_userid">Ім\'я користувача:</string>
2804 <string name="custom_timeout">Втановити інший Час Очікування</string>
2805 <string name="display_blank_summary">Виберіть потрібний дисплей</string>
2806 <string name="display_desktop">Обрати фон для робочого столу дисплея</string>
2807+ <string name="display_list_autoscroll">Дозволити вибраний елемент, щоб перейти до центру списку</string>
2808 <string name="display_reset">Показати основний дисплей</string>
2809+ <string name="display_settings">Налаштування Дисплею</string>
2810 <string name="display_screen">Тільки Чорний дисплей</string>
2811 <string name="display_theme">Тільки Тема дисплею</string>
2812 <string name="enable_custom_timeouts">Обрати інший Час Очікування</string>
2813 <string name="enter_alert_text">Введіть Текст Сповіщення</string>
2814+ <string name="enable_autoscroll">Дозволити дисплей в центрі</string>
2815 <string name="home">Дім</string>
2816 <string name="httpreturn_unauthorised">Несанкціонований доступ будь ласка, введіть правильне ім\'я користувача та пароль</string>
2817 <string name="live_list">Список Перегляду</string>
2818+ <string name="live_view">Режим Живого Перегляду</string>
2819 <string name="navigation_drawer_open">Відкрити вікно навігації</string>
2820 <string name="navigation_drawer_close">Закрити вікно навігації</string>
2821+ <string name="next">Наступний</string>
2822 <string name="none">Ні</string>
2823 <string name="port">Порт</string>
2824+ <string name="previous">Попередній</string>
2825 <string name="process">Процес</string>
2826 <string name="service_list">Список Служб</string>
2827 <string name="stage_view">Поставити Прегляд</string>
2828
2829=== modified file 'app/src/main/res/values-zh-rTW/strings.xml'
2830--- app/src/main/res/values-zh-rTW/strings.xml 2015-10-16 19:32:04 +0000
2831+++ app/src/main/res/values-zh-rTW/strings.xml 2016-11-10 19:40:57 +0000
2832@@ -20,8 +20,6 @@
2833 <string name="connection_configuration">設定網路</string>
2834 <string name="connection_password">密碼</string>
2835 <string name="connection_profile">聚會細節</string>
2836- <string name="connection_profile_ssl_use">使用 HTTPS</string>
2837- <string name="connection_profile_ssl_summary">指定是否應使用HTTPS</string>
2838 <string name="connection_timeout">連接逾時</string>
2839 <string name="connection_timeout_summary">選擇數值(毫秒)</string>
2840 <string name="connection_userid">帳號</string>
2841
2842=== modified file 'app/src/main/res/values/keyStrings.xml'
2843--- app/src/main/res/values/keyStrings.xml 2015-10-04 21:02:13 +0000
2844+++ app/src/main/res/values/keyStrings.xml 2016-11-10 19:40:57 +0000
2845@@ -8,6 +8,4 @@
2846 <string name="key_userid">key_userid</string>
2847 <string name="key_password">key_password</string>
2848 <string name="key_shared_preferences">key_shared_preferences</string>
2849- <string name="key_ssl_use">key_ssl_use</string>
2850-
2851 </resources>
2852
2853=== modified file 'app/src/main/res/values/strings.xml'
2854--- app/src/main/res/values/strings.xml 2016-01-03 15:02:30 +0000
2855+++ app/src/main/res/values/strings.xml 2016-11-10 19:40:57 +0000
2856@@ -20,8 +20,6 @@
2857 <string name="connection_configuration">Configure Network</string>
2858 <string name="connection_password">Password</string>
2859 <string name="connection_profile">Server Details</string>
2860- <string name="connection_profile_ssl_use">Use HTTPS</string>
2861- <string name="connection_profile_ssl_summary">Specify whether HTTPS should be used</string>
2862 <string name="connection_timeout">Connection Timeout</string>
2863 <string name="connection_timeout_summary">Select a value (milliseconds)</string>
2864 <string name="connection_userid">Username</string>
2865@@ -47,6 +45,8 @@
2866 <string name="port">Port</string>
2867 <string name="previous">Previous</string>
2868 <string name="process">Process</string>
2869+ <string name="search_text">Search Text</string>
2870+ <string name="select_plugin">Select Plugin</string>
2871 <string name="service_list">Service List</string>
2872 <string name="searchResults">Search Results</string>
2873 <string name="searchSendLive">Send Live</string>
2874
2875=== modified file 'app/src/main/res/xml/pref_general.xml'
2876--- app/src/main/res/xml/pref_general.xml 2015-10-04 21:02:13 +0000
2877+++ app/src/main/res/xml/pref_general.xml 2016-11-10 19:40:57 +0000
2878@@ -10,7 +10,7 @@
2879
2880 <CheckBoxPreference
2881 android:key="key_auto_scroll"
2882- android:defaultValue="false"
2883+ android:defaultValue="true"
2884 android:summary="@string/display_list_autoscroll"
2885 android:title="@string/enable_autoscroll"/>
2886
2887
2888=== modified file 'app/src/main/res/xml/pref_notification.xml'
2889--- app/src/main/res/xml/pref_notification.xml 2015-01-23 17:53:00 +0000
2890+++ app/src/main/res/xml/pref_notification.xml 2016-11-10 19:40:57 +0000
2891@@ -33,12 +33,6 @@
2892 android:defaultValue="@string/port_default_value"
2893 android:inputType="number" />
2894
2895- <CheckBoxPreference
2896- android:key="@string/key_ssl_use"
2897- android:title="@string/connection_profile_ssl_use"
2898- android:summary="@string/connection_profile_ssl_summary"
2899- android:defaultValue="false" />
2900-
2901 <EditTextPreference
2902 android:key="@string/key_userid"
2903 android:title="@string/connection_userid"
2904
2905=== added file 'fixssl.iml'
2906--- fixssl.iml 1970-01-01 00:00:00 +0000
2907+++ fixssl.iml 2016-11-10 19:40:57 +0000
2908@@ -0,0 +1,19 @@
2909+<?xml version="1.0" encoding="UTF-8"?>
2910+<module external.linked.project.id="fixssl" external.linked.project.path="$MODULE_DIR$" external.root.project.path="$MODULE_DIR$" external.system.id="GRADLE" external.system.module.group="" external.system.module.version="unspecified" type="JAVA_MODULE" version="4">
2911+ <component name="FacetManager">
2912+ <facet type="java-gradle" name="Java-Gradle">
2913+ <configuration>
2914+ <option name="BUILD_FOLDER_PATH" value="$MODULE_DIR$/build" />
2915+ <option name="BUILDABLE" value="false" />
2916+ </configuration>
2917+ </facet>
2918+ </component>
2919+ <component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_7" inherit-compiler-output="true">
2920+ <exclude-output />
2921+ <content url="file://$MODULE_DIR$">
2922+ <excludeFolder url="file://$MODULE_DIR$/.gradle" />
2923+ </content>
2924+ <orderEntry type="inheritedJdk" />
2925+ <orderEntry type="sourceFolder" forTests="false" />
2926+ </component>
2927+</module>
2928\ No newline at end of file

Subscribers

People subscribed via source and target branches

to all changes: