From 42ff424622d72264d0d95a8b09dd4354145541f7 Mon Sep 17 00:00:00 2001 From: Giovanni Harting Date: Wed, 16 Sep 2015 13:40:04 +0200 Subject: [PATCH] general post-release cleanup removed lots of unused strings/resources/drawables extracted all translatable strings added new logo --- app/src/main/AndroidManifest.xml | 2 +- .../com/idlegandalf/ledd/ColorActivity.java | 135 ++++++++---------- .../idlegandalf/ledd/ColorApplication.java | 69 ++++----- .../idlegandalf/ledd/SettingsActivity.java | 4 +- .../ledd/components/StripeGroup.java | 5 +- .../ledd/fragments/AddControllerDialog.java | 106 ++++++-------- .../ledd/fragments/AddDaemonDialog.java | 70 ++++----- .../ledd/fragments/AddStripeDialog.java | 132 +++++++---------- .../idlegandalf/ledd/helper/LedDHelper.java | 106 +++++++------- .../ledd/services/ColorService.java | 74 +++++----- .../res/drawable-hdpi/ic_action_settings.png | Bin 953 -> 0 bytes .../res/drawable-hdpi/ic_add_black_48dp.png | Bin 114 -> 0 bytes .../drawable-hdpi/ic_add_box_black_48dp.png | Bin 228 -> 0 bytes .../ic_arrow_forward_black_48dp.png | Bin 186 -> 0 bytes .../drawable-hdpi/ic_cancel_black_48dp.png | Bin 721 -> 0 bytes .../drawable-hdpi/ic_devices_black_48dp.png | Bin 213 -> 0 bytes .../main/res/drawable-hdpi/ic_launcher.png | Bin 7366 -> 0 bytes .../res/drawable-mdpi/ic_action_settings.png | Bin 594 -> 0 bytes .../res/drawable-mdpi/ic_add_black_48dp.png | Bin 108 -> 0 bytes .../drawable-mdpi/ic_add_box_black_48dp.png | Bin 168 -> 0 bytes .../ic_arrow_forward_black_48dp.png | Bin 150 -> 0 bytes .../drawable-mdpi/ic_cancel_black_48dp.png | Bin 517 -> 0 bytes .../drawable-mdpi/ic_devices_black_48dp.png | Bin 167 -> 0 bytes .../main/res/drawable-mdpi/ic_launcher.png | Bin 3876 -> 0 bytes .../main/res/drawable-nodpi/ic_launcher.png | Bin 9775 -> 0 bytes .../res/drawable-xhdpi/ic_action_settings.png | Bin 1231 -> 0 bytes .../res/drawable-xhdpi/ic_add_black_48dp.png | Bin 119 -> 0 bytes .../drawable-xhdpi/ic_add_box_black_48dp.png | Bin 288 -> 0 bytes .../ic_arrow_forward_black_48dp.png | Bin 222 -> 0 bytes .../drawable-xhdpi/ic_cancel_black_48dp.png | Bin 963 -> 0 bytes .../drawable-xhdpi/ic_devices_black_48dp.png | Bin 269 -> 0 bytes .../main/res/drawable-xhdpi/ic_launcher.png | Bin 11861 -> 0 bytes .../drawable-xxhdpi/ic_action_settings.png | Bin 1863 -> 0 bytes .../res/drawable-xxhdpi/ic_add_black_48dp.png | Bin 130 -> 0 bytes .../drawable-xxhdpi/ic_add_box_black_48dp.png | Bin 432 -> 0 bytes .../ic_arrow_forward_black_48dp.png | Bin 294 -> 0 bytes .../drawable-xxhdpi/ic_cancel_black_48dp.png | Bin 1411 -> 0 bytes .../drawable-xxhdpi/ic_devices_black_48dp.png | Bin 402 -> 0 bytes .../main/res/drawable-xxhdpi/ic_launcher.png | Bin 21819 -> 0 bytes .../drawable-xxxhdpi/ic_add_black_48dp.png | Bin 133 -> 0 bytes .../ic_add_box_black_48dp.png | Bin 624 -> 0 bytes .../ic_arrow_forward_black_48dp.png | Bin 373 -> 0 bytes .../drawable-xxxhdpi/ic_cancel_black_48dp.png | Bin 1903 -> 0 bytes .../ic_devices_black_48dp.png | Bin 551 -> 0 bytes app/src/main/res/layout/activity_asistent.xml | 23 --- .../res/layout/fragment_addcontroller.xml | 8 +- .../main/res/layout/fragment_adddaemon.xml | 4 +- .../main/res/layout/fragment_addstripe.xml | 16 +-- app/src/main/res/layout/host_row.xml | 2 +- app/src/main/res/layout/progress.xml | 37 ----- app/src/main/res/menu/navigation_drawer.xml | 4 +- app/src/main/res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 3633 bytes app/src/main/res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 1982 bytes app/src/main/res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 5294 bytes .../main/res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 9898 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 15111 bytes app/src/main/res/values/dimens.xml | 4 - app/src/main/res/values/strings.xml | 19 ++- 58 files changed, 342 insertions(+), 478 deletions(-) delete mode 100644 app/src/main/res/drawable-hdpi/ic_action_settings.png delete mode 100644 app/src/main/res/drawable-hdpi/ic_add_black_48dp.png delete mode 100644 app/src/main/res/drawable-hdpi/ic_add_box_black_48dp.png delete mode 100644 app/src/main/res/drawable-hdpi/ic_arrow_forward_black_48dp.png delete mode 100644 app/src/main/res/drawable-hdpi/ic_cancel_black_48dp.png delete mode 100644 app/src/main/res/drawable-hdpi/ic_devices_black_48dp.png delete mode 100644 app/src/main/res/drawable-hdpi/ic_launcher.png delete mode 100644 app/src/main/res/drawable-mdpi/ic_action_settings.png delete mode 100644 app/src/main/res/drawable-mdpi/ic_add_black_48dp.png delete mode 100644 app/src/main/res/drawable-mdpi/ic_add_box_black_48dp.png delete mode 100644 app/src/main/res/drawable-mdpi/ic_arrow_forward_black_48dp.png delete mode 100644 app/src/main/res/drawable-mdpi/ic_cancel_black_48dp.png delete mode 100644 app/src/main/res/drawable-mdpi/ic_devices_black_48dp.png delete mode 100644 app/src/main/res/drawable-mdpi/ic_launcher.png delete mode 100644 app/src/main/res/drawable-nodpi/ic_launcher.png delete mode 100644 app/src/main/res/drawable-xhdpi/ic_action_settings.png delete mode 100644 app/src/main/res/drawable-xhdpi/ic_add_black_48dp.png delete mode 100644 app/src/main/res/drawable-xhdpi/ic_add_box_black_48dp.png delete mode 100644 app/src/main/res/drawable-xhdpi/ic_arrow_forward_black_48dp.png delete mode 100644 app/src/main/res/drawable-xhdpi/ic_cancel_black_48dp.png delete mode 100644 app/src/main/res/drawable-xhdpi/ic_devices_black_48dp.png delete mode 100644 app/src/main/res/drawable-xhdpi/ic_launcher.png delete mode 100644 app/src/main/res/drawable-xxhdpi/ic_action_settings.png delete mode 100644 app/src/main/res/drawable-xxhdpi/ic_add_black_48dp.png delete mode 100644 app/src/main/res/drawable-xxhdpi/ic_add_box_black_48dp.png delete mode 100644 app/src/main/res/drawable-xxhdpi/ic_arrow_forward_black_48dp.png delete mode 100644 app/src/main/res/drawable-xxhdpi/ic_cancel_black_48dp.png delete mode 100644 app/src/main/res/drawable-xxhdpi/ic_devices_black_48dp.png delete mode 100644 app/src/main/res/drawable-xxhdpi/ic_launcher.png delete mode 100644 app/src/main/res/drawable-xxxhdpi/ic_add_black_48dp.png delete mode 100644 app/src/main/res/drawable-xxxhdpi/ic_add_box_black_48dp.png delete mode 100644 app/src/main/res/drawable-xxxhdpi/ic_arrow_forward_black_48dp.png delete mode 100644 app/src/main/res/drawable-xxxhdpi/ic_cancel_black_48dp.png delete mode 100644 app/src/main/res/drawable-xxxhdpi/ic_devices_black_48dp.png delete mode 100644 app/src/main/res/layout/activity_asistent.xml delete mode 100644 app/src/main/res/layout/progress.xml create mode 100644 app/src/main/res/mipmap-hdpi/ic_launcher.png create mode 100644 app/src/main/res/mipmap-mdpi/ic_launcher.png create mode 100644 app/src/main/res/mipmap-xhdpi/ic_launcher.png create mode 100644 app/src/main/res/mipmap-xxhdpi/ic_launcher.png create mode 100644 app/src/main/res/mipmap-xxxhdpi/ic_launcher.png diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index d1ad057..61ebf66 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -29,7 +29,7 @@ android:name=".ColorApplication" android:allowBackup="true" android:fullBackupContent="false" - android:icon="@drawable/ic_launcher" + android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme"> stripes) { - runOnUiThread(new Runnable() { - @Override - public void run() { - SubMenu nDaemonMenu = nvMenu.addSubMenu(Menu.NONE, Menu.NONE, finalI, dDaemon.toString()); - nDaemonMenu.setGroupCheckable(stripeGroup, true, true); + final int finalI = i; + helper.getStripes(new StripesCallback() { + @Override + public void onSuccess(final List stripes) { + runOnUiThread(new Runnable() { + @Override + public void run() { + SubMenu nDaemonMenu = nvMenu.addSubMenu(Menu.NONE, Menu.NONE, finalI, dDaemon.toString()); + nDaemonMenu.setGroupCheckable(stripeGroup, true, true); - ledStripes = stripes; - Snackbar.make(findViewById(android.R.id.content), "LED stripes reloaded", Snackbar.LENGTH_LONG).show(); + ledStripes = stripes; + Snackbar.make(findViewById(android.R.id.content), "LED stripes reloaded", Snackbar.LENGTH_LONG).show(); - for (LedStripe stripe : ledStripes) { - MenuItem sItem = nDaemonMenu.add(stripeGroup, View.generateViewId(), stripe.getId(), stripe.getName()); - sItem.setIcon(R.drawable.ic_wb_iridescent_black_48dp); - } + for (LedStripe stripe : ledStripes) { + MenuItem sItem = nDaemonMenu.add(stripeGroup, View.generateViewId(), stripe.getId(), stripe.getName()); + sItem.setIcon(R.drawable.ic_wb_iridescent_black_48dp); } - }); - } + } + }); + } - @Override - public void onGetFailed(String message) { - Snackbar.make(findViewById(android.R.id.content), "Coudn't get stripes from daemon: " + message, Snackbar.LENGTH_LONG) - .show(); + @Override + public void onGetFailed(String message) { + Snackbar.make(findViewById(android.R.id.content), "Coudn't get stripes from daemon: " + message, Snackbar.LENGTH_LONG).show(); - } + } + + @Override + public void onConnectionFailed(String message) { + Snackbar.make(findViewById(android.R.id.content), "Coudn't connect to daemon: " + message, Snackbar.LENGTH_LONG).show(); + } + }); - @Override - public void onConnectionFailed(String message) { - Snackbar.make(findViewById(android.R.id.content), "Coudn't connect to daemon: " + message, Snackbar.LENGTH_LONG).show(); - } - }); - } catch (JSONException | IOException e) { - e.printStackTrace(); - } } i++; @@ -343,11 +332,7 @@ public class ColorActivity extends AppCompatActivity implements NavigationView.O @Override public void onReceive(Context context, Intent intent) { if (intent.getAction().equals(ColorApplication.INTENT_ACTION_REFRESH)) { - try { - refreshStripes(); - } catch (IOException e) { - e.printStackTrace(); - } + refreshStripes(); } } } diff --git a/app/src/main/java/com/idlegandalf/ledd/ColorApplication.java b/app/src/main/java/com/idlegandalf/ledd/ColorApplication.java index 49eeb58..ab05838 100644 --- a/app/src/main/java/com/idlegandalf/ledd/ColorApplication.java +++ b/app/src/main/java/com/idlegandalf/ledd/ColorApplication.java @@ -29,9 +29,6 @@ import com.idlegandalf.ledd.callbacks.DiscoverCallback; import com.idlegandalf.ledd.components.LedDDaemon; import com.idlegandalf.ledd.helper.LedDHelper; -import org.json.JSONException; - -import java.io.IOException; import java.util.ArrayList; import java.util.HashMap; import java.util.List; @@ -56,28 +53,22 @@ public class ColorApplication extends Application { this.onResume(); } - public LedDHelper getHelperForDaemon(final LedDDaemon ledDDaemon) throws IOException { + public LedDHelper getHelperForDaemon(final LedDDaemon ledDDaemon) { if (ledDHelpers.containsKey(ledDDaemon) && ledDHelpers.get(ledDDaemon) != null) { return ledDHelpers.get(ledDDaemon); } else { final LedDHelper dHelper = new LedDHelper(ledDDaemon, getApplicationContext()); - try { - dHelper.discover(new DiscoverCallback() { - @Override - public void onConnectionFailed(String message) { - - } - - @Override - public void onDiscoverSuccessfully(String version) { - ledDHelpers.put(ledDDaemon, dHelper); - } - }); - } catch (JSONException e) { - e.printStackTrace(); - } + dHelper.discover(new DiscoverCallback() { + @Override + public void onConnectionFailed(String message) { + } + @Override + public void onDiscoverSuccessfully(String version) { + ledDHelpers.put(ledDDaemon, dHelper); + } + }); return dHelper; } } @@ -104,33 +95,27 @@ public class ColorApplication extends Application { }.getType()); for (final LedDDaemon ledDDaemon : ledDDaemons) { - try { - final LedDHelper helper = new LedDHelper(ledDDaemon, getApplicationContext()); + final LedDHelper helper = new LedDHelper(ledDDaemon, getApplicationContext()); - helper.discover(new DiscoverCallback() { - @Override - public void onDiscoverSuccessfully(String version) { - //ledDDaemon.setActive(true); - ledDHelpers.put(ledDDaemon, helper); + helper.discover(new DiscoverCallback() { + @Override + public void onDiscoverSuccessfully(String version) { + //ledDDaemon.setActive(true); + ledDHelpers.put(ledDDaemon, helper); - Intent i = new Intent(INTENT_ACTION_REFRESH); - sendBroadcast(i); - } + Intent i = new Intent(INTENT_ACTION_REFRESH); + sendBroadcast(i); + } - @Override - public void onConnectionFailed(String message) { - //ledDDaemon.setActive(false); - ledDHelpers.put(ledDDaemon, helper); + @Override + public void onConnectionFailed(String message) { + //ledDDaemon.setActive(false); + ledDHelpers.put(ledDDaemon, helper); - Intent i = new Intent(INTENT_ACTION_REFRESH); - sendBroadcast(i); - } - }); - - - } catch (IOException | JSONException e) { - e.printStackTrace(); - } + Intent i = new Intent(INTENT_ACTION_REFRESH); + sendBroadcast(i); + } + }); } } diff --git a/app/src/main/java/com/idlegandalf/ledd/SettingsActivity.java b/app/src/main/java/com/idlegandalf/ledd/SettingsActivity.java index 12f3c7d..80271f2 100644 --- a/app/src/main/java/com/idlegandalf/ledd/SettingsActivity.java +++ b/app/src/main/java/com/idlegandalf/ledd/SettingsActivity.java @@ -19,11 +19,11 @@ package com.idlegandalf.ledd; import android.os.Bundle; -import android.support.v7.app.ActionBarActivity; +import android.support.v7.app.AppCompatActivity; import com.idlegandalf.ledd.fragments.SettingsFragment; -public class SettingsActivity extends ActionBarActivity { +public class SettingsActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); diff --git a/app/src/main/java/com/idlegandalf/ledd/components/StripeGroup.java b/app/src/main/java/com/idlegandalf/ledd/components/StripeGroup.java index 9df4a90..ce7f9d9 100644 --- a/app/src/main/java/com/idlegandalf/ledd/components/StripeGroup.java +++ b/app/src/main/java/com/idlegandalf/ledd/components/StripeGroup.java @@ -21,9 +21,6 @@ package com.idlegandalf.ledd.components; import com.idlegandalf.ledd.helper.LedDHelper; -import org.json.JSONException; - -import java.io.IOException; import java.util.ArrayList; public class StripeGroup { @@ -60,7 +57,7 @@ public class StripeGroup { return null; } - public void setRGB(int r, int g, int b, LedDHelper api) throws JSONException, IOException { + public void setRGB(int r, int g, int b, LedDHelper api) { for (int i = 0; i < mStripes.size(); i++) { //mStripes.get(i).setRGB(r, g, b, api); } diff --git a/app/src/main/java/com/idlegandalf/ledd/fragments/AddControllerDialog.java b/app/src/main/java/com/idlegandalf/ledd/fragments/AddControllerDialog.java index 72c3d09..700ab5c 100644 --- a/app/src/main/java/com/idlegandalf/ledd/fragments/AddControllerDialog.java +++ b/app/src/main/java/com/idlegandalf/ledd/fragments/AddControllerDialog.java @@ -39,9 +39,6 @@ import com.idlegandalf.ledd.components.Controller; import com.idlegandalf.ledd.components.LedDDaemon; import com.idlegandalf.ledd.helper.LedDHelper; -import org.json.JSONException; - -import java.io.IOException; import java.text.NumberFormat; import java.text.ParsePosition; @@ -64,6 +61,13 @@ public class AddControllerDialog extends DialogFragment implements DialogInterfa EditText channelText; LedDDaemon dDaemon; + private static boolean isNumeric(String str) { + NumberFormat formatter = NumberFormat.getInstance(); + ParsePosition pos = new ParsePosition(0); + formatter.parse(str, pos); + return str.length() == pos.getIndex(); + } + public Dialog onCreateDialog(Bundle savedInstanceState) { View v = View.inflate(getActivity(), R.layout.fragment_addcontroller, null); ButterKnife.bind(this, v); @@ -168,69 +172,53 @@ public class AddControllerDialog extends DialogFragment implements DialogInterfa c.setI2c_device(Integer.parseInt(i2cText.getText().toString())); c.setChannels(Integer.parseInt(channelText.getText().toString())); - LedDHelper helper = null; - try { - helper = ColorApplication.getInstance().getHelperForDaemon(dDaemon); - } catch (IOException e) { - e.printStackTrace(); - } + LedDHelper helper = ColorApplication.getInstance().getHelperForDaemon(dDaemon); if (helper != null) { - try { - helper.addController(c, new AddControllerCallback() { - @Override - public void onControllerAdded(final Controller controller) { - getActivity().runOnUiThread(new Runnable() { - @Override - public void run() { - Snackbar.make(((ViewGroup) getActivity().getWindow().getDecorView().findViewById(android.R.id.content)) - .getChildAt(0), "Added Controller (" + controller.getId() + ")", Snackbar.LENGTH_LONG).show(); - } - }); + helper.addController(c, new AddControllerCallback() { + @Override + public void onControllerAdded(final Controller controller) { + getActivity().runOnUiThread(new Runnable() { + @Override + public void run() { + Snackbar.make(((ViewGroup) getActivity().getWindow().getDecorView().findViewById(android.R.id.content)) + .getChildAt(0), "Added Controller (" + controller.getId() + ")", Snackbar.LENGTH_LONG).show(); + } + }); - dDaemon.getControllers().add(controller); - dismiss(); - } + dDaemon.getControllers().add(controller); + dismiss(); + } - @Override - public void onAddFailed(final String msg, String detail) { - getActivity().runOnUiThread(new Runnable() { - @Override - public void run() { - Snackbar.make(((ViewGroup) getActivity().getWindow().getDecorView().findViewById(android.R.id.content)) - .getChildAt(0), "Error: " + msg, Snackbar.LENGTH_LONG).show(); - } - }); - AddStripeDialog.instance.onResume(); - dismiss(); - } + @Override + public void onAddFailed(final String msg, String detail) { + getActivity().runOnUiThread(new Runnable() { + @Override + public void run() { + Snackbar.make(((ViewGroup) getActivity().getWindow().getDecorView().findViewById(android.R.id.content)) + .getChildAt(0), "Error: " + msg, Snackbar.LENGTH_LONG).show(); + } + }); + AddStripeDialog.instance.onResume(); + dismiss(); + } - @Override - public void onConnectionFailed(final String message) { - getActivity().runOnUiThread(new Runnable() { - @Override - public void run() { - Snackbar.make(((ViewGroup) getActivity().getWindow().getDecorView().findViewById(android.R.id.content)) - .getChildAt(0), "Coudn't connect to" + - " daemon at " + dDaemon + ": " + message, Snackbar.LENGTH_LONG).show(); - } - }); - AddStripeDialog.instance.onResume(); - dismiss(); - } - }); - } catch (JSONException | IOException e) { - e.printStackTrace(); - } + @Override + public void onConnectionFailed(final String message) { + getActivity().runOnUiThread(new Runnable() { + @Override + public void run() { + Snackbar.make(((ViewGroup) getActivity().getWindow().getDecorView().findViewById(android.R.id.content)) + .getChildAt(0), "Coudn't connect to" + + " daemon at " + dDaemon + ": " + message, Snackbar.LENGTH_LONG).show(); + } + }); + AddStripeDialog.instance.onResume(); + dismiss(); + } + }); } } }); } - - private static boolean isNumeric(String str) { - NumberFormat formatter = NumberFormat.getInstance(); - ParsePosition pos = new ParsePosition(0); - formatter.parse(str, pos); - return str.length() == pos.getIndex(); - } } diff --git a/app/src/main/java/com/idlegandalf/ledd/fragments/AddDaemonDialog.java b/app/src/main/java/com/idlegandalf/ledd/fragments/AddDaemonDialog.java index a5c2e9a..7f8802d 100644 --- a/app/src/main/java/com/idlegandalf/ledd/fragments/AddDaemonDialog.java +++ b/app/src/main/java/com/idlegandalf/ledd/fragments/AddDaemonDialog.java @@ -45,9 +45,6 @@ import com.idlegandalf.ledd.R; import com.idlegandalf.ledd.callbacks.DiscoverCallback; import com.idlegandalf.ledd.components.LedDDaemon; -import org.json.JSONException; - -import java.io.IOException; import java.net.Inet4Address; import java.util.ArrayList; import java.util.List; @@ -286,44 +283,35 @@ public class AddDaemonDialog extends DialogFragment implements DialogInterface.O } private void addDaemon(final LedDDaemon ledDDaemon) { - try { - ColorApplication.getInstance().getHelperForDaemon(ledDDaemon).discover(new DiscoverCallback() { - @Override - public void onConnectionFailed(final String message) { - getActivity().runOnUiThread(new Runnable() { - @Override - public void run() { - Snackbar.make(((ViewGroup) getActivity().getWindow().getDecorView().findViewById(android.R.id.content)).getChildAt(0), - "Coudn't connect to" + - " daemon at " + ledDDaemon + ": " + message, Snackbar.LENGTH_LONG).show(); - } - }); - AddStripeDialog stripeAdd = (AddStripeDialog) getFragmentManager().findFragmentByTag("stripeAdd"); - AddStripeDialog.instance.onResume(); - dismiss(); - } - - @Override - public void onDiscoverSuccessfully(final String version) { - getActivity().runOnUiThread(new Runnable() { - @Override - public void run() { - Snackbar.make(((ViewGroup) getActivity().getWindow().getDecorView().findViewById(android.R.id.content)).getChildAt(0), - "Added LedD Daemon version: " + version, Snackbar.LENGTH_LONG).show(); - } - }); - - try { - ((ColorActivity) getActivity()).refreshStripes(); - } catch (IOException e) { - e.printStackTrace(); + ColorApplication.getInstance().getHelperForDaemon(ledDDaemon).discover(new DiscoverCallback() { + @Override + public void onConnectionFailed(final String message) { + getActivity().runOnUiThread(new Runnable() { + @Override + public void run() { + Snackbar.make(((ViewGroup) getActivity().getWindow().getDecorView().findViewById(android.R.id.content)).getChildAt(0), + "Coudn't connect to" + + " daemon at " + ledDDaemon + ": " + message, Snackbar.LENGTH_LONG).show(); } - AddStripeDialog.instance.onResume(); - dismiss(); - } - }); - } catch (JSONException | IOException e) { - e.printStackTrace(); - } + }); + AddStripeDialog.instance.onResume(); + dismiss(); + } + + @Override + public void onDiscoverSuccessfully(final String version) { + getActivity().runOnUiThread(new Runnable() { + @Override + public void run() { + Snackbar.make(((ViewGroup) getActivity().getWindow().getDecorView().findViewById(android.R.id.content)).getChildAt(0), + "Added LedD Daemon version: " + version, Snackbar.LENGTH_LONG).show(); + } + }); + + ((ColorActivity) getActivity()).refreshStripes(); + AddStripeDialog.instance.onResume(); + dismiss(); + } + }); } } diff --git a/app/src/main/java/com/idlegandalf/ledd/fragments/AddStripeDialog.java b/app/src/main/java/com/idlegandalf/ledd/fragments/AddStripeDialog.java index 9979d0f..e1654a6 100644 --- a/app/src/main/java/com/idlegandalf/ledd/fragments/AddStripeDialog.java +++ b/app/src/main/java/com/idlegandalf/ledd/fragments/AddStripeDialog.java @@ -50,9 +50,6 @@ import com.idlegandalf.ledd.components.LedDDaemon; import com.idlegandalf.ledd.components.LedStripe; import com.idlegandalf.ledd.helper.LedDHelper; -import org.json.JSONException; - -import java.io.IOException; import java.text.NumberFormat; import java.text.ParsePosition; import java.util.List; @@ -259,50 +256,38 @@ public class AddStripeDialog extends DialogFragment implements DialogInterface.O stripe.setLedDDaemon((LedDDaemon) daemonSpinner.getSelectedItem()); stripe.setController((Controller) controllerSpinner.getSelectedItem()); - LedDHelper helper = null; - try { - helper = ColorApplication.getInstance().getHelperForDaemon((LedDDaemon) daemonSpinner.getSelectedItem()); - } catch (IOException e) { - e.printStackTrace(); - } + LedDHelper helper = ColorApplication.getInstance().getHelperForDaemon((LedDDaemon) daemonSpinner.getSelectedItem()); + if (helper != null) { - try { - helper.addStripe(stripe, new AddStripeCallback() { - @Override - public void onAddSuccessfully(final LedStripe stripe) { - ColorActivity activity = ((ColorActivity) getActivity()); - try { - activity.refreshStripes(); - } catch (IOException e) { - e.printStackTrace(); + helper.addStripe(stripe, new AddStripeCallback() { + @Override + public void onAddSuccessfully(final LedStripe stripe) { + ColorActivity activity = ((ColorActivity) getActivity()); + activity.refreshStripes(); + + getActivity().runOnUiThread(new Runnable() { + @Override + public void run() { + Snackbar.make(((ViewGroup) getActivity().getWindow().getDecorView().findViewById(android.R.id.content)) + .getChildAt(0), "Added stripe (" + stripe.getId() + ")", Snackbar.LENGTH_LONG).show(); } + }); + dismiss(); + } - getActivity().runOnUiThread(new Runnable() { - @Override - public void run() { - Snackbar.make(((ViewGroup) getActivity().getWindow().getDecorView().findViewById(android.R.id.content)) - .getChildAt(0), "Added stripe (" + stripe.getId() + ")", Snackbar.LENGTH_LONG).show(); - } - }); - dismiss(); - } - - @Override - public void onConnectionFailed(final String message) { - getActivity().runOnUiThread(new Runnable() { - @Override - public void run() { - Snackbar.make(((ViewGroup) getActivity().getWindow().getDecorView().findViewById(android.R.id.content)) - .getChildAt(0), "Failed to add stripe: " + message, Snackbar.LENGTH_LONG).show(); - } - }); - dismiss(); - } - }); - } catch (JSONException | IOException e) { - e.printStackTrace(); - } + @Override + public void onConnectionFailed(final String message) { + getActivity().runOnUiThread(new Runnable() { + @Override + public void run() { + Snackbar.make(((ViewGroup) getActivity().getWindow().getDecorView().findViewById(android.R.id.content)) + .getChildAt(0), "Failed to add stripe: " + message, Snackbar.LENGTH_LONG).show(); + } + }); + dismiss(); + } + }); } } }); @@ -398,19 +383,11 @@ public class AddStripeDialog extends DialogFragment implements DialogInterface.O } text.setTag(toggle); - LedDHelper helper = null; - try { - helper = ColorApplication.getInstance().getHelperForDaemon((LedDDaemon) daemonSpinner.getSelectedItem()); - } catch (IOException e) { - e.printStackTrace(); - } + LedDHelper helper = ColorApplication.getInstance().getHelperForDaemon((LedDDaemon) daemonSpinner.getSelectedItem()); + if (helper != null) { - try { - helper.testChannel((Controller) controllerSpinner.getSelectedItem(), Integer.parseInt(text.getText().toString()), val); - } catch (JSONException e) { - e.printStackTrace(); - } + helper.testChannel((Controller) controllerSpinner.getSelectedItem(), Integer.parseInt(text.getText().toString()), val); } } } @@ -418,40 +395,31 @@ public class AddStripeDialog extends DialogFragment implements DialogInterface.O private void refreshController(final LedDDaemon ledDDaemon) { controllerArrayAdapter.clear(); - LedDHelper helper = null; - try { - helper = ColorApplication.getInstance().getHelperForDaemon(ledDDaemon); - } catch (IOException e) { - e.printStackTrace(); - } + LedDHelper helper = ColorApplication.getInstance().getHelperForDaemon(ledDDaemon); if (helper != null) { - try { - helper.getStripes(new StripesCallback() { - @Override - public void onSuccess(List stripes) { - getActivity().runOnUiThread(new Runnable() { - @Override - public void run() { - controllerArrayAdapter.addAll(ledDDaemon.getControllers()); - toggleAll(stripeMapping, true); - } - }); - } + helper.getStripes(new StripesCallback() { + @Override + public void onSuccess(List stripes) { + getActivity().runOnUiThread(new Runnable() { + @Override + public void run() { + controllerArrayAdapter.addAll(ledDDaemon.getControllers()); + toggleAll(stripeMapping, true); + } + }); + } - @Override - public void onGetFailed(String message) { + @Override + public void onGetFailed(String message) { - } + } - @Override - public void onConnectionFailed(String message) { + @Override + public void onConnectionFailed(String message) { - } - }); - } catch (JSONException | IOException e) { - e.printStackTrace(); - } + } + }); } } } diff --git a/app/src/main/java/com/idlegandalf/ledd/helper/LedDHelper.java b/app/src/main/java/com/idlegandalf/ledd/helper/LedDHelper.java index 80e63e6..7a57bea 100644 --- a/app/src/main/java/com/idlegandalf/ledd/helper/LedDHelper.java +++ b/app/src/main/java/com/idlegandalf/ledd/helper/LedDHelper.java @@ -43,7 +43,6 @@ import org.json.JSONArray; import org.json.JSONException; import org.json.JSONObject; -import java.io.IOException; import java.util.ArrayList; import java.util.List; import java.util.concurrent.LinkedBlockingQueue; @@ -78,7 +77,7 @@ public class LedDHelper { } }; - public LedDHelper(LedDDaemon ledDDaemon, Context appl) throws IOException { + public LedDHelper(LedDDaemon ledDDaemon, Context appl) { this.context = appl; this.dRequests = new LinkedBlockingQueue<>(); this.ledDDaemon = ledDDaemon; @@ -91,16 +90,18 @@ public class LedDHelper { * Add controller to ledd daemon * * @param c controller object - * @throws JSONException no valid json - * @throws IOException socket error */ - public void addController(final Controller c, final AddControllerCallback callback) throws JSONException, IOException { + public void addController(final Controller c, final AddControllerCallback callback) { JSONObject jnson = new JSONObject(); - jnson.put("action", ACTION_ADDCONTROLLER); - jnson.put("channels", c.getChannels()); - jnson.put("i2c_dev", c.getI2c_device()); - jnson.put("address", c.getAddress()); + try { + jnson.put("action", ACTION_ADDCONTROLLER); + jnson.put("channels", c.getChannels()); + jnson.put("i2c_dev", c.getI2c_device()); + jnson.put("address", c.getAddress()); + } catch (JSONException e) { + e.printStackTrace(); + } addRequestToQueue(jnson, new AnswerTask() { @Override @@ -126,14 +127,15 @@ public class LedDHelper { /** * Get stripes known to daemon - * - * @throws JSONException no valid json - * @throws IOException socket error */ - public void getStripes(final StripesCallback callback) throws JSONException, IOException { + public void getStripes(final StripesCallback callback) { JSONObject jnson = new JSONObject(); - jnson.put("action", ACTION_GETALLSTRIPES); + try { + jnson.put("action", ACTION_GETALLSTRIPES); + } catch (JSONException e) { + e.printStackTrace(); + } addRequestToQueue(jnson, new AnswerTask() { @Override @@ -220,14 +222,16 @@ public class LedDHelper { * Get color using the stripeid * * @param ledStripe Stripe - * @throws JSONException no valid json - * @throws IOException socket error */ - public void getColor(final LedStripe ledStripe, final RecieveColorCallback callback) throws JSONException, IOException { + public void getColor(final LedStripe ledStripe, final RecieveColorCallback callback) { JSONObject jnson = new JSONObject(); - jnson.put("action", ACTION_GETCOLOR); - jnson.put("sid", ledStripe.getId()); + try { + jnson.put("action", ACTION_GETCOLOR); + jnson.put("sid", ledStripe.getId()); + } catch (JSONException e) { + e.printStackTrace(); + } addRequestToQueue(jnson, new AnswerTask() { @Override @@ -258,15 +262,19 @@ public class LedDHelper { * @param c controller * @param channel channel number * @param value value (1= on, 0 = off) - * @throws JSONException */ - public void testChannel(Controller c, int channel, int value) throws JSONException { + public void testChannel(Controller c, int channel, int value) { JSONObject jnson = new JSONObject(); - jnson.put("action", ACTION_TESTCHANNEL); - jnson.put("cid", c.getId()); - jnson.put("channel", channel); - jnson.put("value", value); + try { + jnson.put("action", ACTION_TESTCHANNEL); + + jnson.put("cid", c.getId()); + jnson.put("channel", channel); + jnson.put("value", value); + } catch (JSONException e) { + e.printStackTrace(); + } addRequestToQueue(jnson, new AnswerTask() { @Override @@ -283,14 +291,15 @@ public class LedDHelper { /** * Get information about an ledd daemon - * - * @throws JSONException no valid json - * @throws IOException socket error */ - public void discover(final DiscoverCallback callback) throws JSONException, IOException { + public void discover(final DiscoverCallback callback) { JSONObject jnson = new JSONObject(); - jnson.put("action", ACTION_DISCOVER); + try { + jnson.put("action", ACTION_DISCOVER); + } catch (JSONException e) { + e.printStackTrace(); + } addRequestToQueue(jnson, new AnswerTask() { @Override @@ -313,26 +322,29 @@ public class LedDHelper { /** * Get information about an ledd daemon - * - * @throws JSONException no valid json - * @throws IOException socket error */ - public void addStripe(final LedStripe ledStripe, final AddStripeCallback callback) throws JSONException, IOException { + public void addStripe(final LedStripe ledStripe, final AddStripeCallback callback) { JSONObject jnson = new JSONObject(); - jnson.put("action", ACTION_ADDSTRIPES); - JSONObject stripe = new JSONObject(); + try { + jnson.put("action", ACTION_ADDSTRIPES); - stripe.put("name", ledStripe.getName()); - stripe.put("rgb", ledStripe.isRGB()); + JSONObject stripe = new JSONObject(); - JSONObject mapping = new JSONObject(); - mapping.put("r", ledStripe.getChannelRed()); - mapping.put("g", ledStripe.getChannelGreen()); - mapping.put("b", ledStripe.getChannelBlue()); - stripe.put("map", mapping); - stripe.put("cid", ledStripe.getController().getId()); - jnson.put("stripe", stripe); + stripe.put("name", ledStripe.getName()); + stripe.put("rgb", ledStripe.isRGB()); + + JSONObject mapping = new JSONObject(); + mapping.put("r", ledStripe.getChannelRed()); + mapping.put("g", ledStripe.getChannelGreen()); + mapping.put("b", ledStripe.getChannelBlue()); + stripe.put("map", mapping); + stripe.put("cid", ledStripe.getController().getId()); + jnson.put("stripe", stripe); + + } catch (JSONException e) { + e.printStackTrace(); + } addRequestToQueue(jnson, new AnswerTask() { @Override @@ -355,7 +367,7 @@ public class LedDHelper { } private void addRequestToQueue(JSONObject json, AnswerTask task) { - dRequests.add(new LedDRequest(json, task)); + if (json != null && json.length() > 0) dRequests.add(new LedDRequest(json, task)); } public void teardown() { @@ -389,8 +401,6 @@ public class LedDHelper { } catch (InterruptedException ex) { Thread.currentThread().interrupt(); break; - } catch (JSONException e) { - e.printStackTrace(); } } } diff --git a/app/src/main/java/com/idlegandalf/ledd/services/ColorService.java b/app/src/main/java/com/idlegandalf/ledd/services/ColorService.java index 06d141b..fd23af6 100644 --- a/app/src/main/java/com/idlegandalf/ledd/services/ColorService.java +++ b/app/src/main/java/com/idlegandalf/ledd/services/ColorService.java @@ -65,11 +65,6 @@ public class ColorService extends Service { return mBinder; } - @Override - public boolean onUnbind(Intent intent) { - return super.onUnbind(intent); - } - @Override public void onDestroy() { worker.stop(); @@ -85,26 +80,19 @@ public class ColorService extends Service { DataCallback dataCallback = new DataCallback() { @Override public void onDataAvailable(DataEmitter emitter, ByteBufferList bb) { - JSONObject resp = null; try { - resp = new JSONObject(new String(bb.getAllByteArray())); + JSONObject resp = new JSONObject(new String(bb.getAllByteArray())); + + if (sendableHashMap.containsKey(resp.getString("ref"))) { + sendableHashMap.get(resp.getString("ref")).onResponse(resp); + sendableHashMap.remove(resp.getString("ref")); + if (timeoutHashMap.containsKey(resp.getString("ref")) && timeoutHashMap.get(resp.getString("ref")) != null) + timeoutHashMap.get(resp.getString("ref")).cancel(false); + timeoutHashMap.remove(resp.getString("ref")); + } } catch (JSONException e) { e.printStackTrace(); } - - if (resp != null) { - try { - if (sendableHashMap.containsKey(resp.getString("ref"))) { - sendableHashMap.get(resp.getString("ref")).onResponse(resp); - sendableHashMap.remove(resp.getString("ref")); - if (timeoutHashMap.containsKey(resp.getString("ref")) && timeoutHashMap.get(resp.getString("ref")) != null) - timeoutHashMap.get(resp.getString("ref")).cancel(false); - timeoutHashMap.remove(resp.getString("ref")); - } - } catch (JSONException e) { - e.printStackTrace(); - } - } } }; @@ -122,36 +110,36 @@ public class ColorService extends Service { final T item = workQueue.take(); if (item instanceof Sendable) { - if (socketHashMap.containsKey(((Sendable) item).getRecipient()) && socketHashMap.get(((Sendable) item).getRecipient()) - .getServer().isRunning()) { + final Sendable sendable = (Sendable) item; + if (socketHashMap.containsKey(sendable.getRecipient()) && socketHashMap.get(sendable.getRecipient()).getServer().isRunning + ()) { - Util.writeAll(socketHashMap.get(((Sendable) item).getRecipient()), (((Sendable) item).getMessage().toString() + "\n") - .getBytes - ("UTF-8"), null); - sendableHashMap.put(((Sendable) item).getRef(), (Sendable) item); + Util.writeAll(socketHashMap.get(sendable.getRecipient()), (sendable.getMessage().toString() + "\n").getBytes("UTF-8"), + null); + sendableHashMap.put(sendable.getRef(), sendable); if (!poolExecutor.isTerminating() && !poolExecutor.isTerminated()) - timeoutHashMap.put(((Sendable) item).getRef(), poolExecutor.schedule(new Runnable() { + timeoutHashMap.put(sendable.getRef(), poolExecutor.schedule(new Runnable() { @Override public void run() { - ((Sendable) item).onNoResponse(); - timeoutHashMap.remove(((Sendable) item).getRef()); - sendableHashMap.remove(((Sendable) item).getRef()); + sendable.onNoResponse(); + timeoutHashMap.remove(sendable.getRef()); + sendableHashMap.remove(sendable.getRef()); } }, 1000, TimeUnit.MILLISECONDS)); } else { - AsyncServer.getDefault().connectSocket(new InetSocketAddress(((Sendable) item).getRecipient().getAddress(), ((Sendable) - item).getRecipient().getPort()), new ConnectCallback() { + AsyncServer.getDefault().connectSocket(new InetSocketAddress(sendable.getRecipient().getAddress(), sendable + .getRecipient().getPort()), new ConnectCallback() { @Override public void onConnectCompleted(Exception ex, final AsyncSocket socket) { if (ex == null) { socket.setDataCallback(dataCallback); - socketHashMap.put(((Sendable) item).getRecipient(), socket); + socketHashMap.put(sendable.getRecipient(), socket); - //if (!workQueue.contains(item)) -> needs equals implementaion + //if (!workQueue.contains(item)) -> needs equals implementation workQueue.add(item); } else { - ((Sendable) item).onConnectionFailed(ex.getMessage()); + sendable.onConnectionFailed(ex.getMessage()); } } }); @@ -172,10 +160,16 @@ public class ColorService extends Service { } public class ColorBinder extends Binder { - public String queueSend(LedDDaemon rec, JSONObject msg, AnswerTask answerTask) throws JSONException { - Sendable sendable = new Sendable(msg, answerTask, rec); - queue.add(sendable); - return sendable.getRef(); + public void queueSend(LedDDaemon rec, JSONObject msg, AnswerTask answerTask) { + Sendable sendable = null; + try { + sendable = new Sendable(msg, answerTask, rec); + } catch (JSONException e) { + e.printStackTrace(); + } + if (sendable != null) { + queue.add(sendable); + } } } } diff --git a/app/src/main/res/drawable-hdpi/ic_action_settings.png b/app/src/main/res/drawable-hdpi/ic_action_settings.png deleted file mode 100644 index 0eb78f7c7341b7a4e8f2fa63bb42068ab72b1ae7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 953 zcmeAS@N?(olHy`uVBq!ia0y~yU@!n-4mJh`hH$2z?F*i978H@y@}M#x$Pk0_l;R9=s}}y)Bz@;fDIlu z9k|Rg7wSq%XnGv*cyVgk!An!8@u)0dUdSzR(?MN#$;6-wo~F4=rpypgS&(wy_rB-y z%Rg)0ox9gC|I3pTcKfT}|Jhf5fA%b=8s< z@rP6GpM8}0b@q8pxzP^>-qV|By+8Sh@4?G@S%yo?o4ijOElE0feC?BU?$4QHzAfMv zZnIkvw)$bw&Y0(Mtq-2)>8)Roe!kh6LKlwY3Iid9D z1OuNbC*JeuHQ7yjDlB#3AYc7-i?mdZ56Vp(wbL)g9s11qMSTmmtcKq-k#yGtcb=5? zWTxh|c3<|I^CWydx@zwh9?2rr*2lh#VZsdyOJ5kju>7LUyfa^ldydP2lZV1ZZ}}GN zI~ls#;)YQ2J%{Z-P4kSGS2L{9lQ!&sy6#pdxGi73p95=6=A4bzIKDh zOlGFti!AM!IP`hB4KFZg=g3IqaL+t+>;gC2gzoDnPR9TE>9n(!sg~vLr8)LTj!Zmw zOv=p9vTpKr*MIjncwN10H9t%JS=TDJ=WJO9+cx^zNoQ_nov?gWZ20rwU`~m7TKk=K zW%XjS%*CC2*E@J`_e_iNU==NnnrhIx(zrQxW|?&5L`(e`wS2Q(7e3vb>K2`88tlJR zd?xFK%XYhG?KYjh>+Ga8N$QVmHE++nkm;jTcI){qxuSJbFRFPx6;b_s?2&nYqCasb9(E2IwmSu49Le`>9l9y{dtO|T*ZFm-b(`3mN{%3n6{@*fMdgH2n^;##6 zgoP6=cm7`YB4=*HKA{^8%*uO|%kBvOu@gIxruBAX{e<|#S1#0C>TX!SEUxIs&QsM> z()K^fc;)|ojmg(d3-c#-{>pzPd%mTL^SP7Ip5*xSCHMHYy_mo~S?0IRgRfOa$2X;) zzI);O%M!8l#l_JK|7Z2?>d5`P^Mh^Vy8410^R|hCQo6{b*?+_m7*0>pJJ8nuMxKFz Ofx*+&&t;ucLK6UpJGVRl diff --git a/app/src/main/res/drawable-hdpi/ic_add_black_48dp.png b/app/src/main/res/drawable-hdpi/ic_add_black_48dp.png deleted file mode 100644 index a84106b01fd4402e5d15b08c496a75b76e811999..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 114 zcmeAS@N?(olHy`uVBq!ia0y~yVDJE8MrH;EhJ0m376t|ewg8_HR|YUxn!fWq0|NtN zNswPKgTu2MX$%YuQl2i3Ar*|t5_=Zpt=K5>zuAHL<(h@h?>llc=yMw_bS*hn2-556 L>gTe~DWM4fEI}PB diff --git a/app/src/main/res/drawable-hdpi/ic_add_box_black_48dp.png b/app/src/main/res/drawable-hdpi/ic_add_box_black_48dp.png deleted file mode 100644 index 99e99b1c504d8d95c1bd541793159756b62ace3a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 228 zcmeAS@N?(olHy`uVBq!ia0y~yVDJE84i*LmhW}5h&oD4BtoC$q45?szd(&}MQ-X;5 zN8?M^0(Q7;{9g8ROUIhIB9Gp5mlY`Q>$W-f^Ze7}u5&tO&ODkW`Qx$U$_-P6-J>2| zGz`|te#CBOiWt&MXUeI f!Phfp-sJxB>wCbDZ(VW>3=9mOu6{1-oD!M<_nKlL diff --git a/app/src/main/res/drawable-hdpi/ic_arrow_forward_black_48dp.png b/app/src/main/res/drawable-hdpi/ic_arrow_forward_black_48dp.png deleted file mode 100644 index a124259898f2cbaa970223e6b3e995bcf35f4bba..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 186 zcmeAS@N?(olHy`uVBq!ia0y~yVDJE84i*LmhW}5h&oD4BG4R$0F=kB%HLK7w9>>ah;K{ z`FmJ}f9}S(@Oy7WgP#2S{;7HICi|2d8xomsv#9b}E&mOar`65!A?97hK z`3AW}o|4`Dgd=XERes0wdplA(6KWUsN?cpy@$77I+l}LztVVC7^*#Du2PjT){OSC(kn8aFMB2ZND|IO7hg6{N5YQ zi|6lFmuCmR8Hj z{m4a6)u~&0qv9%0{`Y?P;sftf)p{}8r<0#{oj7>WbMdL~uPx=bwOE9!7Zt>)%vIKT z5XfElZqsT1%(<5jtWLWB@8*V%^yMD%-(=r&l{6Lqn{eD->!4$FNu;U9^ZZ?UkE|q~ z%extvoZate@!cm$N4%lryw0~7&(t1wn|k)Uh8WwNQcekK^<(=!SJ!CGf%9_jPgNS_ z&s@fNIbmW#?X#xv{8QS`bp-avSetl+cpcKcedf~fW08sTrF7*gloTI!vPWIHk=|;^ gwk7d!+h2aurFr{UKDTaVU|?YIboFyt=akR{06hy!;Q#;t diff --git a/app/src/main/res/drawable-hdpi/ic_devices_black_48dp.png b/app/src/main/res/drawable-hdpi/ic_devices_black_48dp.png deleted file mode 100644 index 3ea6e2c3713055f9ac25f68e572de1f2a453b28f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 213 zcmeAS@N?(olHy`uVBq!ia0y~yVDJE84i*LmhW}5h&oD4B%<*(_45?szdt)Q#VFL-5 zhpYebOqAT)<@jLfom63En}$t}7evLUe7Lt&sAk2Kj*gCh>n<$|-hNE{`@-dMl?QBA ze3IeclDUS}DxCRlcjGg@r_3xI6RtY9?>cs5*DNi5E0dnBHY=hRX!A=w3u9vZbe@5U zg=2!efzS#l^+`o^-tIw>j4Q S=Ee*R3=E#GelF{r5}E*hW>bCu diff --git a/app/src/main/res/drawable-hdpi/ic_launcher.png b/app/src/main/res/drawable-hdpi/ic_launcher.png deleted file mode 100644 index 36b4a5dd788084dc86f4af4bbff557cac1324242..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7366 zcmeAS@N?(olHy`uVBq!ia0y~yVDJE84mJh`hS0a0-5D5UdOcknLn>~)z0DbOy|iY_8L!Qo&Rk2LIdf|2 z&I1jLjI^Kp`&aMq`G@`YGS^R2p5LqMKmOYAg>&8hk0+o1j&|tn`F9Tr`*Rus*Pjck zSDUxN>FCV8zqr)1lDT(RZJrgocWPDNt%cv#-&^~2{XOr!>mDwZyTsYVx0-b`f9xZ^ zmw)d3pQ^z+{{&m;{O2uKVxHv0-#KNq^^4T!V@15&t5<%NGBXQ~HkC06IG_DzWAy2x zaj!~s`PsMD>~WX9%K2sfDrUdA0o>trm(>L3SRa@8ARXva2QPo4|!-?G0siEL-L`@V)$Du}Jj63_XVVuUmdZ=^x3ARXCU7s{6e3 z(NpoQO5zSTf7`RURkmE*zNPc%tn!JUBP*quKVRhu2?)Ky#1!RW(Y?~jlzTNt#@*Tl zzv>xpxm)B1ycf8@&ho{O@o#g3pU}DTUk-Dwb{9^}y6F8b?kfA~29JZD?`f4lX{ zyHfAY|2Db9$F!?1;`si*3;hbd3p4$i)UZ!+f&3SxIm&a?_Oh&PQ&_HN&4eu1gtLZ8!owY@j*nELnIC9||^U1HO6 zw)SOi{5C6LhfvSH{cq1#T$`c!ZC!Fie*DAeJ(o{Suf1^W{I3w*8`VzgfBL3f|0>V< zf{D>o_(CYtCBX}&&IWm}oeMs%3aO4&)jgOQ`F}an@(()KT?#v^JsiE=949Z_!T&|z z(%qleXXJj?H{Px}Te3#AN3L|=i_7O%od4Fi_m}Ll{_4N4IsZ>_%=zCPw`W11zGd}I zfs*I{zC4(w$g=&)!5x*B9M|=|KD<6Z$ys)}idy~4t1JJcEb+K_DnD?=U(UAPY7hQ~ zchh1M{{`JTv_`}3r0o5>fBD`U8&o;0uamg2`u*97e}7s2xi>#MPmFipBEj?*UoHh- z=T+RE|C-}@mx#HP>W(_Up7?r!g@2_Jy>GiWF0!vZsrho1;rrJwmR!<)6wS4jfs404 z!Q%VGjIMQtC0%O&MUTpt%P%XQeWkwV>V|vFSDdSO9nue1^WXXWLO&$Re%72t(bt=z z^Gq&(nWH{O-u1-~Gl949oD2V}Jec-tf&u3#`;T7XC7L#_7u8f{1RFUnwk~;ArgS$n z=3!0Px7I7~3%|e2Nx70=vR*O2?}e?zT;BJl9Lm-F`;2$~mpJ{d=HL3~P0NJON$;O0 zdjFM$uZ4PxL5�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�%<@RZhPPZ#AnHvx0J6_V^<-9ccud&9be}%JO-?+RkeD-S#haY#>J!VQ!cHDI~ z*Q0IT|JVH*dM}%***9E>%6Y`KV3HS~-hL(?1|EggD?dLl?`2?MVDNPHb6Mw<&;$TQ C_X-05 diff --git a/app/src/main/res/drawable-mdpi/ic_add_black_48dp.png b/app/src/main/res/drawable-mdpi/ic_add_black_48dp.png deleted file mode 100644 index 3191d5283e981b9eecdcaa54feda419515ef656f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 108 zcmeAS@N?(olHy`uVBq!ia0y~yU@!n-4i*LmhQHi~JPZsB#-1*YAr*{oFD?{hFc4rm z_~rf=_azNy_8i#Y&Zuos>N#sW2Ll5G!{$5o4j)n&7#K9XFR_}|oHyLT;^Y95@O1Ta JS?83{1OTM_9!UTI diff --git a/app/src/main/res/drawable-mdpi/ic_add_box_black_48dp.png b/app/src/main/res/drawable-mdpi/ic_add_box_black_48dp.png deleted file mode 100644 index b591b0f357914d173077f0f1fab1d6e0f8ca8cec..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 168 zcmeAS@N?(olHy`uVBq!ia0y~yU@!n-4i*LmhQHi~JPZsB`JOJ0Ar*{ouN!hPD+;te z{BQE;ZLDpCz}ERDnNtPQSMB-#wQfVi4vnXA&k_^t^Ddrv{@A)~XPuJVnZ&8NhgoOj z7|&;AVzT=ys^D;7J7))Ti7zY14Sxrj4U6RWpJmn9Xs@6zG^gX#o*x#iEkWn@GV(vj W{p{S?slmX&z~JfX=d#Wzp$PyAEj;l6 diff --git a/app/src/main/res/drawable-mdpi/ic_arrow_forward_black_48dp.png b/app/src/main/res/drawable-mdpi/ic_arrow_forward_black_48dp.png deleted file mode 100644 index 27767f1326411dd24dc69e87fe30a85154d6b3c1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 150 zcmeAS@N?(olHy`uVBq!ia0y~yU@!n-4i*LmhQHi~JPZsBv7RoDAr*{o&)RY|7>KYu z+&j%)Tv#WpUxr^`Vz@NNudV|%x6gAqY$KB@lGO!3KF;xPpWU029IJJURa z-F`!z`D&gy@h7%_68~wg{d1bGvHYBw{O`^)?_m6x#QF1D;Fi}63=9mOu6{1-oD!M< D+0is> diff --git a/app/src/main/res/drawable-mdpi/ic_cancel_black_48dp.png b/app/src/main/res/drawable-mdpi/ic_cancel_black_48dp.png deleted file mode 100644 index 6253c0d47e050f8e2b95dfbc42e6d8a401e145ee..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 517 zcmeAS@N?(olHy`uVBq!ia0y~yU@!n-4i*LmhQHi~JPZtsXFOdTLn;{GPCf4>9Vl|F zex|4RSw9i+ZNJ32>^inMOT{0y=U=ckx|`?5yH#RLH>Wh57yQK3b=SmicWG0>u57V* zz2c(xi#Y!6yL;xt??X@T$joEaPkB>tq`^=$cv(n~WWfnD$&)z+r~Gv$RNHOxGg%#D za8xQNc#{*0ZC&!Y5D}dt+WV5Ymo4d?%x50q(pFNlKknHa>y`8W^koi%w2$k5z7sq7UKB5w&^62a%+nB&ScWvwRqQ_$ z-unfd_+sDwx_;7})eUynm7ny99pY=V)OOLo>11)}*|RLQ$Cp-`^9iucSbk`!`7e%S zof)TRURi4H#v%G_Wx>l{&ZaeDvfkV8t@!Wk`1IQAtHrVxZ!A53GFDXi`HWY0PG2qV zf4R^*f5z%0`NZ2x`S0YNRC7AE*ZKYG9ZOpessG&2{_5+iw@NGJEi~t diff --git a/app/src/main/res/drawable-mdpi/ic_launcher.png b/app/src/main/res/drawable-mdpi/ic_launcher.png deleted file mode 100644 index 9ce85cf764ebe7efa3380c89c8290e0da047b707..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3876 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 diff --git a/app/src/main/res/drawable-xhdpi/ic_action_settings.png b/app/src/main/res/drawable-xhdpi/ic_action_settings.png deleted file mode 100644 index 999d0f0d8c1571d3f90be129c8e4c95e895ee7b9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1231 zcmeAS@N?(olHy`uVBq!ia0y~yU~m9o4mJh`hE{(JaZG%Q-e|yQz{EjrrIztuoQZ_IEGZ*dK0A^AnhpP$IYSC#nF^#(af=E(ab~v zg%>`_-3yq!eOQ+-Due1a^;AELx7;Si1Er589uH?%+Gj~HrD1p+kLKVclGx2 z>g|6@?w|29y1707eeLgWe`CE={pZ*WNu_rHEs zJ$Y4`CaWF4w7-f;y7>W5!}C7ggtHCHUwvwfVNO^SGgW8lpC=3rL04rOt4hQ^XtCzM z^<;Ed9&cDsr<9v?_Ap=bmkEp_yBA$By`r)2FjwlGMgEWHq_i6zm{#(+m8rq{Z>QUn z4QeL)lv_SNXumD|?5TnIw7T^V-knxIU!?DGa^3^?MS=%Ge~LrZ_`(^+%T{5 zjPKI>uQgNoGyjUGGbk*yG^(|b%C%FB+Rn)y-u-ZIld7RbuZZA6*J_?iuZ$+MHava$ zl=)YLK|<=~T;cj&Hs)=P$(n8ZnF_XL-nn>d{gynh`|(n5wpJAvU)H|ERM5rCe9g?S z==>qhPn~4~PQBk$F8p$BKPbyQPi~6+mH@j`?0kx=XJ6i&%Fd9eu4&i*LS&c4PlZ1I z^12xTe>U{g_Ax!^UCj08^4_>cH3usX;oGe#E9HupN;I73Trh9K8_z_)2{LDA$ONzW z_=MR`bJqU_9smCXEH|n5G+M^BGg!(#(^%)(85*SEek{7W?$Pc-x9Qj4M1OXTM@Rtx>qSWa5)j;f9#2 zGELSD4;c8Dx-4Dd8Gip+NHLFS*w%dJ13gPWbqCF~aoe;>Q8)6@kxpR^=btj~%0z>w ztF(Ww(>(SGks_!&U-U|I8cGc8U+lnhj;=_mTURgU+-@s(A zJ>OWqww~;s`uWgehRB1ubC1n(^onX#-6AL(ChQlrPfqro?1LxwXRcBF*EiXqBksU7 z#_R^|!@ZOA8XoNW*ShH8K~dTEP2OQG70)yFm>c}I_nTDB+3Lo4Qt_DO&VWS4IY+)6 z+2?R&zi|9&MV@P3FK4afDOml%UMp4q$l{Zm<5F>#j5nt;>K z*1m6k#r}Zha?9a;+)rc8UD#MZ+VL?wknxqddgAKK`|jR3Glcuu74&D7@*H58=n#7G mi_@% diff --git a/app/src/main/res/drawable-xhdpi/ic_add_box_black_48dp.png b/app/src/main/res/drawable-xhdpi/ic_add_box_black_48dp.png deleted file mode 100644 index fef1c75360debccaf029b062008c575b8d8a0f1e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 288 zcmeAS@N?(olHy`uVBq!ia0y~yU`POA4i*Lm29JsRH#0CWJoj{Q45?szd+T84VFL;G zkLBK0K8ABm4X+*CEOJ>H*Wb5A_@lzOPM{z2vo@m>)JN}T)_8KuE)eBXts@s@sR^;)rRs_a& zZk^1?!XcpGaG?L6phE)#BNLd{z`(eF4w%Ei@L_rcviQG?x?pvF|38#+vd&nU$HBTI zFxH*#%b$O;=l(GK_X`eRCUE@!6Q;E-E_OdY-PyTeb>BSp_00P$((|Ir?}J>sk1;lU W`*%hu{kaSb3=E#GelF{r5}E+X2ym?c diff --git a/app/src/main/res/drawable-xhdpi/ic_arrow_forward_black_48dp.png b/app/src/main/res/drawable-xhdpi/ic_arrow_forward_black_48dp.png deleted file mode 100644 index 8b5a68183db0af5ae96767121f57a6a5f4290587..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 222 zcmeAS@N?(olHy`uVBq!ia0y~yU`POA4i*Lm29JsRH#0CWEcJA845?szd&`mUV1P*L z!|jYYlWJq$@b2ElqmrMZ;9C6X_dB+8^G)6^VP;@>;QgxbVBcc*=W27@?AIqff37y? z`Hv$lhh^r?+#o5=DWu{tLBX+!1;%J;ty;SJOGCeENtM%bHI5G)Q?I|^&oSPA^x5qE ze^>u}pOL@s=d=6&iuV0{_Wq3d{hH6=8~o?mhrar=GU&PgRIB<`(?9>M<7Z$fU>E(W Wwo-gkfhhw61B0ilpUXO@geCw}lV7y} diff --git a/app/src/main/res/drawable-xhdpi/ic_cancel_black_48dp.png b/app/src/main/res/drawable-xhdpi/ic_cancel_black_48dp.png deleted file mode 100644 index 36116eda0b9e56e979d18bfb83b0f4b8e7e68fa0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 963 zcmeAS@N?(olHy`uVBq!ia0y~yU`POA4i*Lm29JsRH#0CWcX_%vhEy=VofYdH%`Vd} zZ>&-I-EHx1!N)FYzZtUa5BPX%v<6iPdL+g#m@+9(^Y(L%bsMMgdM*4?CI0eutk1&j zPF5&@vD4tRXfWD zGuAhWopM4KcGWZ+-v7ui^uTUokD_-~?co;Jo*%R1gbwWzF;F;at+HgVYG-<#yVD)z z_uF+jE4P0*z;yTmGn+`^S#1@j>_?NdgeHa-IJ*5jP;-DQH#|z$i)RY|?aX7(#Fzg2 zen2Hx{Fmheq4tg>dqcI#f1$4z`&+E$Kj0dANG|f&qGgxuC*LVsxZZz9v)sN#%deLE z65?yioeJ@ndVtw4M7t$gytbNSd?YN_b9GJ?B>M4VT6B z9(&xq+k8`8Sm$eNwZ$h1L!T2fUvcxwR5s60i+IJYU$~^X!sEoxRr)!PJmfd}8(b1E zD|{jWX1G}tb=^>xc*(8)-0p#ljFX^!=i&W5&;IV~*|+Vwxlcu-^6O>4CO`2NmV4xJ zH)Ox>ZIgv<%BjJ%t%-2x;d0n;+M@y?~7q_fl zal&BJb#o7iNlqt?ga2->e`@!TGizOjUItfft&`{f;!SNVx4Zto-MQkzb=8=lnygnw zj8*THX0fo>9(}m{ig=!}nB}*xoa^ijUw-|aA~E@Qht|Q@?)w^7rz@~#mMMLnxz(LZ zJY+)08#TR5H>dypF~;W;U;JV}^RO}N1*53VCykK5_dobd+P?7R_8kq3th*Mz$Tw^i z?5^R8`LFEC6Uk@sFn{0C8LoCL6(2+n&YRib_gpOahs&hW`(ML%Hmtvs^x$#qb|(gr z%wJ#57`rEg+%TMa|Ct)&b$`e!S-FC#A`_P!NPTzlf$HoxMvq#A-QH|E$t@SO_=ri`5it0}|H=NO2~TE8 R1_J{FgQu&X%Q~loCIGPE!mR)R diff --git a/app/src/main/res/drawable-xhdpi/ic_devices_black_48dp.png b/app/src/main/res/drawable-xhdpi/ic_devices_black_48dp.png deleted file mode 100644 index 893ce4aef6c49a2c59324b8953579aa554f5cde4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 269 zcmeAS@N?(olHy`uVBq!ia0y~yU`POA4i*Lm29JsRH#0CWT=8^q45?szduwAZQzDQ1 z$LseLmitf1@jl3-AfcFS;L=eN5MWswq+%(4?8)B$EcPdtZp@zv0yn40ipw3D{5IV8 zP3Ms=M&W#y^aJx=@Z1pE%eebpgLnCX#nuY@);O+ZWMbhEP)ImD)B5A_yB3D?7&km@ zj@YTaSgt@#$od-dJIw<@{2h1V_!Jxt_;a36cW7XM=s;$ins2JK@gGE@Kv^jI6{EV+ zMrYfE0@bj0b9c%yG%KI(dTeQsoCX5_clZmenw7N3VYVIv0|SGntDnm{r-UW|2}xj5 diff --git a/app/src/main/res/drawable-xhdpi/ic_launcher.png b/app/src/main/res/drawable-xhdpi/ic_launcher.png deleted file mode 100644 index fca8186f8c14d8024d8be2050e97679e168c0863..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11861 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 R%fP_E;OXk;vd$@?2>=F56m$Rp diff --git a/app/src/main/res/drawable-xxhdpi/ic_action_settings.png b/app/src/main/res/drawable-xxhdpi/ic_action_settings.png deleted file mode 100644 index 530227e2d02e54f6434ad23c857249f2998f2369..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1863 zcmeAS@N?(olHy`uVBq!ia0y~yU`POA4mJh`hDS5XEf^RWBuiW)N`mv#O3D+9QW+dm z@{>{(JaZG%Q-e|yQz{EjrrIztu)XwjaSW-r^(I!gK-yg-Zn?d&m}Y>(>W_^=oGc#3 zZblp(o{hXh30aK-!O|i}41%XkU=n5VxU%HHGA@o49k#`6FMV9OrbzC7;L*t9^lRQP zy}K*Qcd!0ydH3e~**7P?y>svF-uG{-^Y8BqZAmbY;9+Y%h)gM4n5{Cp@b>LnwVEwF z`tzM;$Hc~-J@qdxKFsAu=?{y@jkh^&Mc%ys*3nhX;qoH?kXG^4T#Rd*Jd&AexF-K$ z6Mk^;-*w&HlSg*LG*%{a5nxJSQh({EN*o zyfOVQZzbvg$0W^ zZ{A+{#QmGhqJ`%d$?v+qaKrg2i#TgSqnI>mY&O2>bE@x+@|UW9VAytC(s0VV+7}M5 z7~UCwQ{AjzBXl9d#81TUe8>;Mi7$*r{)*j7mbgFvL(lEmvuAt%__^?@Psf7)D@s@b z&g_4zQM2cGamIa?4&Hr-J~loO7I?s(VfaTz&~o*HY4;ZAtn8>g?cpv~cfN>iZIhfW zx1kEF#-rH7f)mzB=6xptM9>>b4_=~rGjs)_f{!+%s4cmW#*6dNe5jLjHASRM9$BjWGOkZ z)AGWM%_f(mF6?@IlIz*~L+u~-x;s9(;j^f_d`9#_)@u_RC;v;G8pC7dA#q&wEXP#m z{s&e)Z}T61&OUr1`+@h5eRDr7pXsnu`mWdYBQsT>ELkr0IO2OtJh(++?=@=YL*G4^A%D&oQx2 zS9_uL#OhL)rGA11zv7Yv7LQxgr_L9g6>{Lr1(g|nsdEZswl5UP2DP znIkXnOEq8);HZ{6zG=N@^%1V$^$WUhdAT#}EtvOgOJ>&bSs5AE-E;g7RWI84CMt2+ zgdK|+jE#60O;ST|Nqb6t4NE^1v&CP_F_1IgXLr)7%^W}Sk1Kjq2sr$(ZT5aD^T#K- zt1s7MLRWKX?PZlP_%VUXrngy^N9yPcSzJUH?`FHxBiSwS+DZr)|Blh=RfcZX`fR#|4gf2 za`uxuyHzTthj>H@U7q5zNb^!r+4DUU#pNAVvd%szvuN$KZ~5J)1aBamX zt0sMW*^;~MO_qyOZ`hoLo(HP+&8~U=IDTlI(D~cnmYA#ad^2F&eM4w<_=(z0D=mZ{ zd@ld-xBB6JJCXF8=Rfp(pY%c5`>p)6J_Z)CwOqTI?oMg>9eib>Cuy63!AN>Xh9t-Pgu+d;NF zufyjXaer*}eeP6i;rCp);H&iH#YZGfCuDU*In~b4<7N9NaOv2-Cs$JP-N3u%iSMJ~ll-|;pylTZ%d5_@bUw-$wSub}vcI3f^@+j52BCl*4 zzWkinxZbfSKJ3|yRVp1OXAX-W?Ma@a?r^v(?e3xTM>5mHqP&l!&OK5inU$>eC0z8% z($-lgzwYCIE;)NkPvMr%9t#)W3`G_Tq3!P{aws2M&%E^Cy@2D!#~tS`*PrtDcT=7A zN!xe2jMw}AE>AVFo~n4@!G)I2x8gnx(lHz}3>e>S5PhUm5_om5LPJhPk@(jATE+^# zt_F;v#?F_u_C#F$$IR{{_~M(CfvD~JroZW!waj9LKgtIfZV0^CI?LDQE&~GtgQu&X J%Q~loCID^7WE21Z diff --git a/app/src/main/res/drawable-xxhdpi/ic_add_black_48dp.png b/app/src/main/res/drawable-xxhdpi/ic_add_black_48dp.png deleted file mode 100644 index 60cbd9cb632c9f58fc7dd3379dda609390ca5f04..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 130 zcmeAS@N?(olHy`uVBq!ia0y~yV3+{HjLZxS40k&UelsvIum$*pxH5pj()69@85kHC zOM?7@862M7NMm4N(DHO~45?sDUcl4S6qxWo{Q`F{S1*_0|Mq6)!+seWF2`3~SRvq= bAkxFcz;^PctK98mRghVpu6{1-oD!McnZWk%P$@RiU_}A68 z=k98y6R)%BU$0c#cCvPwX#LK2pKLGRPMf}5=F`SS&PNsdcb-!do(u{x&q+)EpA@_2 VUGz_+l!1YP!PC{xWt~$(69Bkbr+)wd diff --git a/app/src/main/res/drawable-xxhdpi/ic_arrow_forward_black_48dp.png b/app/src/main/res/drawable-xxhdpi/ic_arrow_forward_black_48dp.png deleted file mode 100644 index 5c5eda0c3f1641f107509a1c7fb9c3c749446a5e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 294 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 diff --git a/app/src/main/res/drawable-xxxhdpi/ic_add_black_48dp.png b/app/src/main/res/drawable-xxxhdpi/ic_add_black_48dp.png deleted file mode 100644 index 1e1e4d60cbc6134d79297366467d91d1ce14d863..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 133 zcmeAS@N?(olHy`uVBq!ia0y~yU^oE6jLZxS3>iZITo@P_*aCb)Tp7S%Y5LCd3=9m6 zB|(0{3=Yq3q%kls=z6+1hEy=Vy|j^+L4o10!N2-lXJQ0w}CGWT?G45?szd(+YDPJ+y_ zhvm;B=H7F3kJYm6StKqb!fzn-(TaJqp!fTLpxD0FnR=Ie#g#J4;*E0W-LGc+X)h$y ztKvBcfwr2R4PB-4d6w_2|24Dsq|DTsJ~K_*>SS`=GRcScK22E6b1U!NC+)Kx+fU}I zNv?QY<1Ji$PKWu6s=dtr^RMPCecoq3NB*FW?YEUrA3k<8@yx$#S#dh=Qn32ke7kKg zUmJdzv8*&q_37_F*U#%kr`jLgUG$Ztc7J!n>S%T0v%agE_b$z}-sbU9EB)OKo1?o+p7qULUU7NP(v8>FZkj&j zy<+dycXoSAo`h~GeJ!(WdEVUJsn=hwy<1cIfxr5cUscYuTNm%Yt>(K_oc^9;&VLhT zlhehsZUplg1x&uv^QSjs?&~)x7t&U4l6skby_RpY=-cN?pLK%LZJX}@wCX-nJa4ZD fQXG2*dGBX@e(Hgi|J(|1kiR@#{an^LB{Ts5fN diff --git a/app/src/main/res/drawable-xxxhdpi/ic_arrow_forward_black_48dp.png b/app/src/main/res/drawable-xxxhdpi/ic_arrow_forward_black_48dp.png deleted file mode 100644 index c0342c7981389bf049b5fadf73fa1d34d82eb3f6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 373 zcmeAS@N?(olHy`uVBq!ia0y~yU^oE6EX)iH3=2LLnlLahs0a9jxH1q2?h5_f3NouC z$S;_o;eTUOv-Eot(+_6m^XAoDWME+U;OXKRQo;E4_C`-PLlO6nH7gcm6rN;zZ{MVB z(d5lBEuYg}Kxe<9%)yl^kFwu{_!T~!!>VWRG)YbJ+wn6X@Ft`=H;?(PQX=Q~lWfcp zhn$;)^gf4fWSCGebwkVXn(YS}x;{+V(DHh&+8&P|6InQgR6HgqI5t5UivL&4VBD|L zq6UL3swNTvcg1(^%HQ&;?#5Mys@C^sX74q3XkcJWm-ui^TEU^Ap1Qnb~7+E9RGUaJA*L@Z1yjm?D22*{@gH7 O@OirWxvX0w}CH}iCH45?szbFh(tfq|i6 z!QYkQE15t{h8cS||LlCc@9~Gte406;UAgQ09G4wX%Gs%L^5DkW6DKV`uH7o~DX7T7 zYr>plzPQ^*j-QBHzD;C#X29KRM|3qkXRqje8vUv&)?rDI2Wybh&Gha70|D;YwLib* zJA9ry^Zc1NpZ~C*ch}iJ_vXcp3F-33D<=zG-*Hf;JTj@*H|xrclwQ?$M#p*W79H{I zyX-%Yt?}kr?w*gF_X7`a%k0gcnbh}0xRO{SchALUE~Y1v%X(bj?5~(=GjsXm?mNemil&yoRM>2DIDSQv zVf4fEHm=VqX1$&R6`P?Yf=L*;K8?IS54|;|f6i%;fmeE`? zKT}6>+Dqk7n{$?OiJYGV(=(M+zZkTuUXa}7!KnPFLG=o6obtsdGY<&86OHoFsQxMC z-57t-k*TszR7X{>xTWQzR{sW(pA!^?jz~jSbCz{RShQWfN{?;7+doLoajB`WIkn#~yx!O4 zOK|DA|11SFdO1GJvqa5Rzp-e##}A(We{zzU=Ko<>d*_(UTqUM?e9HgL)IOYkZ|^vl zx#e8x|38ds9MkUCH=XC4nf~W9`wWGOx`wb*GiEcloH~B*C$rCkiTCT9vRgdVL+}5w z6J|N_-rliQowK)l;uCg@BW^7}8Rson^KbD~`QrP=`wz3o{rsyQv9L8j;@g?`294o$ z|2g9nMNZ9VZf4*U{_&jMqRp~GxLzYcFR$Q4Ce!~vb^rg=FRS@~x}NF(pQi68#5Ueg zi|~)Adn`TYW`AOo@Q>%^TlvH99cxj$a6W&|v8j?i8BBlwxJkO-TAAo1{NlO!sy9b^ z7k*ghZ{_n~^8Ne5I}H0eeHYBXUvd8{hnDfd&1?w+te>;$j=Oe!`49EdPG~ zl|9mG=u^n_|Ie!Xtab;LW<9w1)>mQP{TWAE-y2-zT=H4E+hW4CG(9^wg{x>*^l!HAWtCQNM6L|BkW&R7WV&=FUz(kkcI! zvLJ?JB{#6}UiiWB>AU0O`2~B{ne{E?v}!Zk*YUGj-Eq2-)N~~&@yCDuHXW!D$^Uok z>5HI8pP6O6-to?yeCX#_bqQ62Q^$eG(+Isg9eh1Jc|3m>~4{PRorkC1s;@a6OGe_mMKEPAUTB}!-iKbGwUPuE1$ z{pIZ1vB@9AXPpyy;r#orcQ!VE-eIgZCBD8%>D?EOr`P8%;Qq6-)w1G>;r{+xjnP=)O-8J>(QxkN+O@uRQW!baKD~u{h$AfXHKXP|2*q};{Nw6aX)*77G87| zE#By}+PQ8&=bumc8`}kD9{Hm#P|?~MUYFbyP{~!iS?9Bm{Qf`37@eNU?-So>umZ^N8L-F)nx3bL9zeauf!R+%EUZpnkDV&l%V8DClM zzpa`na^a}SG>6kAlZ0kjOx_TDQEhoePsl}gN$(Exmx`@VD(1ewXkXMfL3!(&CrY9| zS9HC$OswMa2|Rvejj^Zs%!kiw`Z#}vf17N{_Cr{-v41Wn--O7zQ>FVdQ&MBb@ E06+$vZvX%Q diff --git a/app/src/main/res/drawable-xxxhdpi/ic_devices_black_48dp.png b/app/src/main/res/drawable-xxxhdpi/ic_devices_black_48dp.png deleted file mode 100644 index f8df3c32d7595499bb18c33a9cb22ab7b35f0b96..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 551 zcmeAS@N?(olHy`uVBq!ia0y~yU^oE694rhB3_q?e>0w}CeCO%n7*fIb_U?JFkV2Vb z56hPZ2b3?={(s?Vh5x!Mi#s0lwrnYvJ+-s7K-TZ#&#fIRLRZf*U-ta-JJEgoGJTsR z7XLT#oTP$^?mba4-+4ZGU&^1tZ`W_1&$YA8VSf`T}T(nY>AJTO|kqnN=x(#Y%gG-igAQvz>APGY!m zHr6fi{buF|?yG$w&Hj9_JnhHyAiRC&iR5|aA0GXj@L47$8$DW7Jnu6eHqK1Xow;xu O$W~8RKbLh*2~7aYkGXIF diff --git a/app/src/main/res/layout/activity_asistent.xml b/app/src/main/res/layout/activity_asistent.xml deleted file mode 100644 index b544b88..0000000 --- a/app/src/main/res/layout/activity_asistent.xml +++ /dev/null @@ -1,23 +0,0 @@ - - - diff --git a/app/src/main/res/layout/fragment_addcontroller.xml b/app/src/main/res/layout/fragment_addcontroller.xml index edad69e..f7474a0 100644 --- a/app/src/main/res/layout/fragment_addcontroller.xml +++ b/app/src/main/res/layout/fragment_addcontroller.xml @@ -46,7 +46,7 @@ android:layout_marginLeft="7dp" android:layout_toRightOf="@id/img_host" android:gravity="center" - android:text="Add Controller" + android:text="@string/text_add_controller" android:textAppearance="?android:textAppearanceMedium" /> @@ -62,7 +62,7 @@ android:id="@+id/input_i2c" android:layout_width="fill_parent" android:layout_height="wrap_content" - android:hint="i2c device number" + android:hint="@string/hint_i2c_device" android:inputType="number" android:minWidth="350dp"/> @@ -79,7 +79,7 @@ android:id="@+id/input_address" android:layout_width="fill_parent" android:layout_height="wrap_content" - android:hint="controller address in hex format" + android:hint="@string/hint_controller_address" android:minWidth="350dp"/> @@ -95,7 +95,7 @@ android:id="@+id/input_channel" android:layout_width="fill_parent" android:layout_height="wrap_content" - android:hint="channels" + android:hint="@string/hint_channels" android:inputType="number" android:minWidth="350dp"/> diff --git a/app/src/main/res/layout/fragment_adddaemon.xml b/app/src/main/res/layout/fragment_adddaemon.xml index 72d1bab..1fe7b59 100644 --- a/app/src/main/res/layout/fragment_adddaemon.xml +++ b/app/src/main/res/layout/fragment_adddaemon.xml @@ -80,7 +80,7 @@ android:layout_marginBottom="5dp" android:layout_marginTop="5dp" android:gravity="center_horizontal" - android:text="or" + android:text="@string/text_or" android:textAppearance="?android:textAppearanceMedium"/> diff --git a/app/src/main/res/layout/fragment_addstripe.xml b/app/src/main/res/layout/fragment_addstripe.xml index 87a9639..221df3b 100644 --- a/app/src/main/res/layout/fragment_addstripe.xml +++ b/app/src/main/res/layout/fragment_addstripe.xml @@ -46,7 +46,7 @@ android:layout_marginLeft="7dp" android:layout_toRightOf="@id/img_host" android:gravity="center" - android:text="Choose Daemon" + android:text="@string/text_choose_daemon" android:textAppearance="?android:textAppearanceSmall" /> @@ -99,7 +99,7 @@ android:layout_marginLeft="7dp" android:layout_toRightOf="@id/img_controller" android:gravity="center" - android:text="Choose Controller" + android:text="@string/text_choose_controller" android:textAppearance="?android:textAppearanceSmall" /> @@ -151,7 +151,7 @@ android:layout_marginLeft="7dp" android:layout_toRightOf="@id/img_stripe" android:gravity="center" - android:text="Stripe Properties" + android:text="@string/text_stripe_properties" android:textAppearance="?android:textAppearanceSmall" /> @@ -169,7 +169,7 @@ android:id="@+id/input_stripe_name" android:layout_width="fill_parent" android:layout_height="wrap_content" - android:hint="Stripe name" + android:hint="@string/hint_stripe_name" android:inputType="text" android:minEms="12"/> @@ -180,7 +180,7 @@ android:layout_marginLeft="9dp" android:layout_marginTop="15dp" android:gravity="center" - android:text="Channel Mapping" + android:text="@string/text_channel_mapping" android:textAppearance="?android:textAppearanceSmall" /> @@ -206,7 +206,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:ems="2" - android:hint="R" + android:hint="@string/hint_channel_r" android:inputType="number"/> @@ -231,7 +231,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:ems="2" - android:hint="G" + android:hint="@string/hint_channel_g" android:inputType="number"/> @@ -256,7 +256,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:ems="2" - android:hint="B" + android:hint="@string/hint_channel_b" android:inputType="number"/> diff --git a/app/src/main/res/layout/host_row.xml b/app/src/main/res/layout/host_row.xml index 3d3db90..1240e6c 100644 --- a/app/src/main/res/layout/host_row.xml +++ b/app/src/main/res/layout/host_row.xml @@ -41,7 +41,7 @@ android:background="?android:attr/selectableItemBackground" android:clickable="true" android:gravity="center_vertical" - android:text="textHost" + android:text="" android:textAppearance="?android:textAppearanceMedium" android:textColor="@color/primaryColorDark"/> diff --git a/app/src/main/res/layout/progress.xml b/app/src/main/res/layout/progress.xml deleted file mode 100644 index 1c70830..0000000 --- a/app/src/main/res/layout/progress.xml +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/menu/navigation_drawer.xml b/app/src/main/res/menu/navigation_drawer.xml index ce872d8..3103fae 100644 --- a/app/src/main/res/menu/navigation_drawer.xml +++ b/app/src/main/res/menu/navigation_drawer.xml @@ -23,13 +23,13 @@ android:id="@+id/nv_add_stripe" android:icon="@drawable/ic_add_circle_black_48dp" android:orderInCategory="51" - android:title="Add Stripe"/> + android:title="@string/text_add_stripe"/> + android:title="@string/test_settings"/> \ No newline at end of file diff --git a/app/src/main/res/mipmap-hdpi/ic_launcher.png b/app/src/main/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..5ebc200b18bd8ddbb09784528e3e7f0f48c43a35 GIT binary patch literal 3633 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 bzS}$MJ3QmCn;Xu+z`)??>gTe~DWM4f938st literal 0 HcmV?d00001 diff --git a/app/src/main/res/mipmap-mdpi/ic_launcher.png b/app/src/main/res/mipmap-mdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..550589b28d7eb162ccfb9be1ce7352899a00047a GIT binary patch literal 1982 zcmeAS@N?(olHy`uVBq!ia0y~yU@!n-4mJh`hH$2z?F5z0~ac^t7u=N^7{KbGIo>^$<^Lv=M1%E#Sy>IpU$`V|bbC&0@$T&BIBQ>gci!G@>nrv%RB+FW61bu+eC*}7 zWofoMR#T#30+Ha(d^a}{LA0I+qz@j47rOp>_syxO*MBd44$=H z+HmuTiy0v3x47a)JmlvP!Ub5LW;p~bn3~}aDG(LoGZ_*a_ ziWLj0s_Nv@D%1L@C3hj@k-}-_WqC7hh5TK2r9{26=;i^Yj*F!xq5WaC(aXi&nli8- zHw_iE{rBF;_t%=>_+x=JG9{9_qB>_aD%UT5F=fh~UdhrwjNbYS+}E_!Wixy@Wb$&M z48v064`;luT(=DRefd6f!^OoR_vc+$H0`j+tXPR_OZRtW-jie($@Hmuo3zMa!JZU{ zm#M6mUS7zGj)>yfns>-Kl;!lD(@+1@F1(|EOg7BOg?DY$Tp#Mpl zgI#L1)|d4mQTZy9i!v4`Z25P6;)V8&E2O$N{E4_?Klkl2$Hmd#yrnr#Y+rE8`;9&G z(fV^+*;e~65xxh`a{>+dAau6ue!4O@v(aD zJ^z=)p1pa0-QLU>OdO#?Ypx6KiCuEIHKImq^Xr$F+>8ImPKob3^#8&4qIc}vA_eak z$gi6^*;C{4UeA}`j#rk+YDcf0{O6rW(rlZe_U^SZM%y2V+Gvr1!>yR>)vGJ! zcIKCro^};!R1>kD8vOQf&OXtOr#?Gm@*|}FHn5v1|7H+xjH;YAGi$=?o2^n4mo%te z|2((U<{-m8J+b`43)S!Sj_0Y~Sj714sD|dti8}p<^uAu(I4k>7+n(|upS3z$HK%@> zX5XMb&sSxOvP{r2fv4_^ewe7uX)W6Bw7hylo#AgYh7T!q_6MHZ7ws3xe|nKYeeFUU z&IiI77azn4wfug*c=g*8GJ)1MoSQS6+GjItn0?f`|BYMZKE~C@D@=NOi*9G0pPPL; zscP-+=+g^&?TPyH3wH{}yt{IhtfHAGQBEGq=l(5T*vDlG}U@@04%7d~8~L&q{yF)Qs42FaC7K z88WA?f4Lc`JO9Q~z7XKUEwXtLgVytZmJODZJ)+NS z-fHa0?{Y`EKCwwP&E~Po6Os7$b0_X7w0Zo^YQK~O*Il*-+Yf(cT7XL;83Ys*jEod0y)J$;6Mhj(dNIsIPoD*N^uk7fOj#g80Q zVOXQWebz>J)dVZ^gr91k8KRezUF_P=ezj_^4(|=_vx)+>A-nA_Z~p%0oZJUd2{HYz z|2B5H_SZL9UFi#5!@60i`p8DEmMhjL3M_9JF^DTh|4HsPtl4W0LhNqOPMtF|7zmi)%?P4Dq)&kya58$8{XFRa;<_daZz=HAQ8 z7e|)e_%}I!!%IVj-*Ywc_&YuwUv!~C*G_`_?~BHR8$Nyf_Crdf^I*8%j+u`c7#J8l MUHx3vIVCg!0KnzNL;wH) literal 0 HcmV?d00001 diff --git a/app/src/main/res/mipmap-xhdpi/ic_launcher.png b/app/src/main/res/mipmap-xhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..e2ed79dae51980b8fbe34648bbb55f9d307097bc GIT binary patch literal 5294 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 Q3=9kmp00i_>zopr0G87ADF6Tf literal 0 HcmV?d00001 diff --git a/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/app/src/main/res/mipmap-xxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..1168f35e4dfb5ecf16420e0b54800b4d6bf1a26f GIT binary patch literal 9898 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 i!_3_*8t*cliU7(87ZLn`9l&SkHWIePQh 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/values/dimens.xml b/app/src/main/res/values/dimens.xml index 87d77f3..9d5b62c 100644 --- a/app/src/main/res/values/dimens.xml +++ b/app/src/main/res/values/dimens.xml @@ -19,9 +19,5 @@ - 16dp - 16dp - 30dp - 7dp diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index d169048..a138fff 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -20,8 +20,21 @@ LedD - OK - Pick a color - DialogPreference with Color Picker. + Add Controller + i2c device number + controller address in hex format + channels + or + ip address[:port] + Choose Daemon + Choose Controller + Stripe Properties + Stripe name + Channel Mapping + R + G + B + Add Stripe + Settings