StorageActivity.java 8.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223
  1. package com.epson.iprint.storage;
  2. import android.app.AlertDialog;
  3. import android.content.BroadcastReceiver;
  4. import android.content.Context;
  5. import android.content.DialogInterface;
  6. import android.content.Intent;
  7. import android.content.IntentFilter;
  8. import android.net.ConnectivityManager;
  9. import android.net.NetworkInfo;
  10. import android.os.Bundle;
  11. import android.text.Editable;
  12. import android.text.InputFilter;
  13. import android.text.TextWatcher;
  14. import android.view.View;
  15. import android.widget.Button;
  16. import android.widget.EditText;
  17. import java.util.Random;
  18. import epson.print.ActivityIACommon;
  19. import epson.print.R;
  20. class StorageActivity extends ActivityIACommon {
  21. public interface CancelRequestCallback {
  22. void onCancelRequest(Intent intent);
  23. }
  24. StorageActivity() {
  25. }
  26. protected void onCreate(Bundle bundle) {
  27. super.onCreate(bundle);
  28. StorageSecureStore.initSharedSecureStore(getApplicationContext());
  29. }
  30. public class OverlayProgress {
  31. BroadcastReceiver mCancelReceiver;
  32. int mRequestCode = new Random().nextInt(Integer.MAX_VALUE);
  33. public OverlayProgress() {
  34. setCancelReceiver((BroadcastReceiver) null);
  35. }
  36. public void show() {
  37. show((String) null, (CancelRequestCallback) null);
  38. }
  39. private void show(String str) {
  40. show(str, (CancelRequestCallback) null);
  41. }
  42. private void show(String str, CancelRequestCallback cancelRequestCallback) {
  43. show(str, cancelRequestCallback, true);
  44. }
  45. private void show(String str, CancelRequestCallback cancelRequestCallback, boolean z) {
  46. Intent intent = new Intent(StorageActivity.this, StorageWaitingActivity.class);
  47. intent.putExtra(StorageWaitingActivity.EXTRA_REQUEST_CODE, mRequestCode);
  48. if (str != null) {
  49. intent.putExtra(StorageWaitingActivity.EXTRA_MESSAGE, str);
  50. }
  51. if (cancelRequestCallback != null) {
  52. intent.putExtra(StorageWaitingActivity.EXTRA_CANCEL_ENABLED, true);
  53. registerCancelRequestReceiver(cancelRequestCallback);
  54. }
  55. startActivity(intent);
  56. while (z && !StorageWaitingActivity.bShowing) {
  57. try {
  58. Thread.sleep(200);
  59. } catch (InterruptedException e) {
  60. e.printStackTrace();
  61. }
  62. }
  63. }
  64. private void changeMessage(String str) {
  65. Intent intent = new Intent(StorageWaitingActivity.CHANGE_ACTION);
  66. intent.putExtra(StorageWaitingActivity.EXTRA_REQUEST_CODE, mRequestCode);
  67. intent.putExtra(StorageWaitingActivity.EXTRA_MESSAGE, str);
  68. sendBroadcast(intent);
  69. }
  70. private void registerCancelCallback(CancelRequestCallback cancelRequestCallback) {
  71. Intent intent = new Intent(StorageWaitingActivity.REGISTER_ACTION);
  72. intent.putExtra(StorageWaitingActivity.EXTRA_REQUEST_CODE, mRequestCode);
  73. intent.putExtra(StorageWaitingActivity.EXTRA_CANCEL_ENABLED, true);
  74. registerCancelRequestReceiver(cancelRequestCallback);
  75. sendBroadcast(intent);
  76. }
  77. public void dismiss() {
  78. Intent intent = new Intent(StorageWaitingActivity.DISMISS_ACTION);
  79. intent.putExtra(StorageWaitingActivity.EXTRA_REQUEST_CODE, mRequestCode);
  80. sendBroadcast(intent);
  81. setCancelReceiver((BroadcastReceiver) null);
  82. }
  83. private void setCancelReceiver(BroadcastReceiver broadcastReceiver) {
  84. BroadcastReceiver broadcastReceiver2 = mCancelReceiver;
  85. if (broadcastReceiver2 != null) {
  86. unregisterReceiver(broadcastReceiver2);
  87. }
  88. mCancelReceiver = broadcastReceiver;
  89. }
  90. private void registerCancelRequestReceiver(final CancelRequestCallback cancelRequestCallback) {
  91. C09221 r0 = new BroadcastReceiver() {
  92. public void onReceive(Context context, Intent intent) {
  93. String action = intent.getAction();
  94. int intExtra = intent.getIntExtra(StorageWaitingActivity.EXTRA_REQUEST_CODE, 0);
  95. if (action.equals(StorageWaitingActivity.CANCEL_REQUEST_ACTION) && mRequestCode == intExtra) {
  96. cancelRequestCallback.onCancelRequest(intent);
  97. }
  98. }
  99. };
  100. registerReceiver(r0, new IntentFilter(StorageWaitingActivity.CANCEL_REQUEST_ACTION));
  101. setCancelReceiver(r0);
  102. }
  103. }
  104. protected void showErrorDialog(String str) {
  105. showErrorDialog(str, (Intent) null);
  106. }
  107. private void showErrorDialog(int i) {
  108. showErrorDialog(getString(i));
  109. }
  110. private void showConnectionError() {
  111. showErrorDialog(getString(R.string.network_error_mes), new Intent("android.settings.WIRELESS_SETTINGS"));
  112. }
  113. private void showErrorDialog(String str, final Intent intent) {
  114. AlertDialog.Builder builder = new AlertDialog.Builder(this);
  115. builder.setMessage(str);
  116. builder.setCancelable(false);
  117. builder.setPositiveButton(getString(R.string.str_ok), new DialogInterface.OnClickListener() {
  118. public void onClick(DialogInterface dialogInterface, int i) {
  119. dialogInterface.cancel();
  120. Intent intent = intent;
  121. if (intent != null) {
  122. startActivity(intent);
  123. finish();
  124. }
  125. }
  126. });
  127. builder.create().show();
  128. }
  129. private void showErrorDialogAndFinish(String str) {
  130. AlertDialog.Builder builder = new AlertDialog.Builder(this);
  131. builder.setMessage(str);
  132. builder.setCancelable(false);
  133. builder.setPositiveButton(getString(R.string.str_ok), new DialogInterface.OnClickListener() {
  134. public void onClick(DialogInterface dialogInterface, int i) {
  135. dialogInterface.cancel();
  136. finish();
  137. }
  138. });
  139. builder.create().show();
  140. }
  141. abstract class OnVisibilityListener {
  142. public abstract void onVisibilityChanged(int i);
  143. OnVisibilityListener() {
  144. }
  145. }
  146. private void bindClearButton(int i, int i2) {
  147. bindClearButton(i, i2, (OnVisibilityListener) null);
  148. }
  149. private void bindClearButton(int i, int i2, final OnVisibilityListener onVisibilityListener) {
  150. final EditText editText = (EditText) findViewById(i);
  151. final Button button = (Button) findViewById(i2);
  152. editText.addTextChangedListener(new TextWatcher() {
  153. public void beforeTextChanged(CharSequence charSequence, int i, int i2, int i3) {
  154. }
  155. public void onTextChanged(CharSequence charSequence, int i, int i2, int i3) {
  156. }
  157. public void afterTextChanged(Editable editable) {
  158. if (editText.getText().toString().length() > 0) {
  159. button.setVisibility(0);
  160. } else {
  161. button.setVisibility(8);
  162. }
  163. OnVisibilityListener onVisibilityListener = onVisibilityListener;
  164. if (onVisibilityListener != null) {
  165. onVisibilityListener.onVisibilityChanged(button.getVisibility());
  166. }
  167. }
  168. });
  169. button.setOnClickListener(new View.OnClickListener() {
  170. public void onClick(View view) {
  171. editText.getText().clear();
  172. }
  173. });
  174. if (editText.getText().toString().length() > 0) {
  175. button.setVisibility(0);
  176. }
  177. }
  178. public boolean isConnected() {
  179. NetworkInfo activeNetworkInfo = ((ConnectivityManager) getBaseContext().getSystemService("connectivity")).getActiveNetworkInfo();
  180. if (activeNetworkInfo != null) {
  181. return activeNetworkInfo.isConnectedOrConnecting();
  182. }
  183. return false;
  184. }
  185. private void setInputMaxLength(EditText editText, int i) {
  186. editText.setFilters(new InputFilter[]{new InputFilter.LengthFilter(i)});
  187. }
  188. private void setTitle(String str) {
  189. super.setTitle(str);
  190. }
  191. }