From 844efce050cffcb71fb5b259869180bf7f0ff8f7 Mon Sep 17 00:00:00 2001 From: NudeDude Date: Mon, 13 Aug 2018 17:27:47 +0200 Subject: [PATCH] added customizable World ID Added location translation --- .../twidda/backend/GlobalSettings.java | 13 ++++++++ .../nuclearfog/twidda/window/AppSettings.java | 32 ++++++++++++++++--- app/src/main/res/layout/item_load.xml | 1 - app/src/main/res/layout/settingpage.xml | 17 ++++++++-- app/src/main/res/menu/setting.xml | 2 +- app/src/main/res/values/array.xml | 3 ++ app/src/main/res/values/strings.xml | 2 +- 7 files changed, 61 insertions(+), 9 deletions(-) diff --git a/app/src/main/java/org/nuclearfog/twidda/backend/GlobalSettings.java b/app/src/main/java/org/nuclearfog/twidda/backend/GlobalSettings.java index c7a98ebf..f2a89843 100644 --- a/app/src/main/java/org/nuclearfog/twidda/backend/GlobalSettings.java +++ b/app/src/main/java/org/nuclearfog/twidda/backend/GlobalSettings.java @@ -22,6 +22,7 @@ public class GlobalSettings { private boolean loadImage; private boolean loggedIn; + private boolean customWorldId; private int row; private int woeId; @@ -34,6 +35,7 @@ public class GlobalSettings { private GlobalSettings(Context context) { settings = context.getSharedPreferences("settings",0); woeId = settings.getInt("world_id",1); + customWorldId = settings.getBoolean("custom_woeId", false); woeIdPos = settings.getInt("world_id_pos",0); background_color = settings.getInt("background_color",0xff0f114a); highlight_color = settings.getInt("highlight_color",0xffff00ff); @@ -72,6 +74,10 @@ public class GlobalSettings { return woeId; } + public boolean customWoeIdset() { + return customWorldId; + } + public int getWoeIdSelection(){ return woeIdPos; } @@ -142,6 +148,13 @@ public class GlobalSettings { edit.apply(); } + public void setCustomWoeId(boolean customWoeId) { + Editor edit = settings.edit(); + edit.putBoolean("custom_woeId", customWoeId); + customWorldId = customWoeId; + edit.apply(); + } + public void setRowLimit(int limit) { Editor edit = settings.edit(); edit.putInt("preload", limit); diff --git a/app/src/main/java/org/nuclearfog/twidda/window/AppSettings.java b/app/src/main/java/org/nuclearfog/twidda/window/AppSettings.java index 5674adce..0e7d2620 100644 --- a/app/src/main/java/org/nuclearfog/twidda/window/AppSettings.java +++ b/app/src/main/java/org/nuclearfog/twidda/window/AppSettings.java @@ -16,6 +16,7 @@ import android.widget.AdapterView; import android.widget.AdapterView.OnItemSelectedListener; import android.widget.Button; import android.widget.CheckBox; +import android.widget.EditText; import android.widget.NumberPicker; import android.widget.Spinner; import android.widget.Toast; @@ -39,10 +40,12 @@ public class AppSettings extends AppCompatActivity implements OnClickListener, private CheckBox toggleImg; private Button colorButton1,colorButton2,colorButton3,colorButton4; private Spinner woeId; + private EditText woeIdText; private int background,tweet,font,highlight; private long wId; private int row; private int woeIdPos; + private boolean customWoeId; private int mode = 0; @Override @@ -64,6 +67,7 @@ public class AppSettings extends AppCompatActivity implements OnClickListener, colorButton3 = findViewById(R.id.color_tweet); colorButton4 = findViewById(R.id.highlight_color); toggleImg = findViewById(R.id.toggleImg); + woeIdText = findViewById(R.id.woe_id); woeId = findViewById(R.id.woeid); load(); @@ -81,6 +85,12 @@ public class AppSettings extends AppCompatActivity implements OnClickListener, colorButton3.setOnClickListener(this); colorButton4.setOnClickListener(this); woeId.setOnItemSelectedListener(this); + + if (customWoeId) { + String text = Long.toString(wId); + woeIdText.setVisibility(View.VISIBLE); + woeIdText.setText(text); + } } @Override @@ -190,8 +200,17 @@ public class AppSettings extends AppCompatActivity implements OnClickListener, @Override public void onItemSelected(AdapterView parent, View view, int position, long id) { + if (position == parent.getCount() - 1) { + woeIdText.setVisibility(View.VISIBLE); + customWoeId = true; + wId = 1; + } else { + woeIdText.setVisibility(View.INVISIBLE); + woeIdText.setText(""); + customWoeId = false; + wId = id; + } woeIdPos = position; - wId = id; } @@ -227,6 +246,7 @@ public class AppSettings extends AppCompatActivity implements OnClickListener, wId = settings.getWoeId(); toggleImg.setChecked( settings.loadImages() ); woeIdPos = settings.getWoeIdSelection(); + customWoeId = settings.customWoeIdset(); woeId.setAdapter( new WorldIdAdapter(this) ); } @@ -235,10 +255,14 @@ public class AppSettings extends AppCompatActivity implements OnClickListener, settings.setHighlightColor(highlight); settings.setTweetColor(tweet); settings.setFontColor(font); - settings.setImageLoad( toggleImg.isChecked() ); - settings.setWoeId(wId); + settings.setImageLoad(toggleImg.isChecked()); settings.setRowLimit(row); settings.setWoeIdSelection(woeIdPos); - Toast.makeText(getApplicationContext(), R.string.saved, Toast.LENGTH_SHORT).show(); + settings.setCustomWoeId(customWoeId); + String woeText = woeIdText.getText().toString(); + if (customWoeId && !woeText.isEmpty()) + wId = Long.parseLong(woeText); + settings.setWoeId(wId); + Toast.makeText(this, R.string.saved, Toast.LENGTH_SHORT).show(); } } \ No newline at end of file diff --git a/app/src/main/res/layout/item_load.xml b/app/src/main/res/layout/item_load.xml index 1b51aa97..28fa950e 100644 --- a/app/src/main/res/layout/item_load.xml +++ b/app/src/main/res/layout/item_load.xml @@ -6,7 +6,6 @@ android:orientation="vertical"> diff --git a/app/src/main/res/layout/settingpage.xml b/app/src/main/res/layout/settingpage.xml index ea0a938e..b0ba93c3 100644 --- a/app/src/main/res/layout/settingpage.xml +++ b/app/src/main/res/layout/settingpage.xml @@ -132,9 +132,22 @@ + android:layout_weight="1" /> + + diff --git a/app/src/main/res/menu/setting.xml b/app/src/main/res/menu/setting.xml index 34676959..93dfdba0 100644 --- a/app/src/main/res/menu/setting.xml +++ b/app/src/main/res/menu/setting.xml @@ -6,7 +6,7 @@ android:id="@+id/save_settings" android:icon="@drawable/save" android:title="@string/save" - app:showAsAction="ifRoom|always" /> + app:showAsAction="ifRoom" /> USA Mexico Algeria + + custom @@ -17,6 +19,7 @@ 23424977 23424900 23424740 + 0 \ No newline at end of file diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 31d816e8..f4789bdc 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -66,5 +66,5 @@ sent from: stop loading save - World-ID + World ID \ No newline at end of file