PhotoImageConvertViewModel.java 6.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154
  1. package epson.print;
  2. import android.app.Application;
  3. import android.arch.lifecycle.AndroidViewModel;
  4. import android.arch.lifecycle.LiveData;
  5. import android.content.Context;
  6. import android.os.AsyncTask;
  7. import java.io.File;
  8. import java.io.IOException;
  9. import java.util.ArrayList;
  10. import epson.common.ExternalFileUtils;
  11. import epson.common.ImageUtil;
  12. import epson.print.phlayout.PhotoPreviewImageList;
  13. public class PhotoImageConvertViewModel extends AndroidViewModel {
  14. private final Application mApplication;
  15. private final FilenameListLiveData mImageFilenameLibData = new FilenameListLiveData();
  16. public PhotoImageConvertViewModel(@NonNull Application application) {
  17. super(application);
  18. mApplication = application;
  19. }
  20. /* access modifiers changed from: private */
  21. @NonNull
  22. public static String initTempDirectory(@NonNull Context context) {
  23. return ExternalFileUtils.getInstance(context).initTempCacheDirectory(ExternalFileUtils.TempCacheDirectory.PHOTO_FILE_CONVERT).getPath();
  24. }
  25. public static void clearTempDirectory(@NonNull Context context) {
  26. initTempDirectory(context);
  27. }
  28. public FilenameListLiveData getData() {
  29. return mImageFilenameLibData;
  30. }
  31. public void setOriginalImageList(ArrayList<String> arrayList) {
  32. mImageFilenameLibData.setOriginalList(arrayList, mApplication);
  33. }
  34. public static class Result {
  35. @Nullable
  36. public ArrayList<PhotoPreviewImageList.EpImageWrapper> epImageWrappers;
  37. public Result(@Nullable ArrayList<PhotoPreviewImageList.EpImageWrapper> arrayList) {
  38. epImageWrappers = arrayList;
  39. }
  40. }
  41. public static class FilenameListLiveData extends LiveData<Result> {
  42. public void setOriginalList(final ArrayList<String> arrayList, @NonNull final Application application) {
  43. new AsyncTask<Void, Void, Result>() {
  44. protected Result doInBackground(Void... voidArr) {
  45. ArrayList access$000 = convertHeifImageList(arrayList, application);
  46. if (!checkEpImage(access$000)) {
  47. return new Result((ArrayList<PhotoPreviewImageList.EpImageWrapper>) null);
  48. }
  49. return new Result(access$000);
  50. }
  51. protected void onPostExecute(Result result) {
  52. setValue(result);
  53. }
  54. }.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR, new Void[0]);
  55. }
  56. private boolean checkFilePath(ArrayList<String> arrayList, String str) {
  57. if (str == null) {
  58. return true;
  59. }
  60. try {
  61. String lowerCase = new File(str).getCanonicalPath().toLowerCase();
  62. int i = 0;
  63. while (i < arrayList.size()) {
  64. String str2 = arrayList.get(i);
  65. if (str2 == null) {
  66. return false;
  67. }
  68. try {
  69. if (new File(str2).getCanonicalPath().toLowerCase().startsWith(lowerCase)) {
  70. return false;
  71. }
  72. i++;
  73. } catch (IOException unused) {
  74. return false;
  75. }
  76. }
  77. return true;
  78. } catch (IOException unused2) {
  79. return false;
  80. }
  81. }
  82. /* access modifiers changed from: private */
  83. /* JADX WARNING: Removed duplicated region for block: B:6:0x000e */
  84. /* Code decompiled incorrectly, please refer to instructions dump. */
  85. public boolean checkEpImage(@android.support.annotation.Nullable ArrayList<epson.print.phlayout.PhotoPreviewImageList.EpImageWrapper> r4) {
  86. /*
  87. r3 = this;
  88. r0 = 0
  89. if (r4 != 0) goto L_0x0004
  90. return r0
  91. L_0x0004:
  92. java.util.Iterator r4 = r4.iterator()
  93. L_0x0008:
  94. boolean r1 = r4.hasNext()
  95. if (r1 == 0) goto L_0x0026
  96. java.lang.Object r1 = r4.next()
  97. epson.print.phlayout.PhotoPreviewImageList$EpImageWrapper r1 = (epson.print.phlayout.PhotoPreviewImageList.EpImageWrapper) r1
  98. epson.print.EPImage r2 = r1.epImage
  99. boolean r2 = epson.print.ActivityViewImageSelect.checkEPImage(r2)
  100. if (r2 != 0) goto L_0x001d
  101. return r0
  102. L_0x001d:
  103. epson.print.EPImage r1 = r1.epImage
  104. boolean r1 = epson.print.ActivityViewImageSelect.checkBmpNot24Bit(r1)
  105. if (r1 == 0) goto L_0x0008
  106. return r0
  107. L_0x0026:
  108. r4 = 1
  109. return r4
  110. */
  111. throw new UnsupportedOperationException("Method not decompiled: epson.print.PhotoImageConvertViewModel.FilenameListLiveData.checkEpImage(java.util.ArrayList):boolean");
  112. }
  113. /* access modifiers changed from: private */
  114. @Nullable
  115. public ArrayList<PhotoPreviewImageList.EpImageWrapper> convertHeifImageList(@Nullable ArrayList<String> arrayList, @NonNull Application application) {
  116. ArrayList<PhotoPreviewImageList.EpImageWrapper> arrayList2 = new ArrayList<>();
  117. if (arrayList == null) {
  118. return arrayList2;
  119. }
  120. String access$300 = PhotoImageConvertViewModel.initTempDirectory(application);
  121. for (int i = 0; i < arrayList.size(); i++) {
  122. String str = arrayList.get(i);
  123. if (str != null) {
  124. if (ImageUtil.isHEIFFormat(str)) {
  125. String notDuplicateFilename = ExternalFileUtils.getNotDuplicateFilename(str, access$300, 30);
  126. if (notDuplicateFilename == null || !ImageUtil.convertHEIFtoJPEG(str, notDuplicateFilename)) {
  127. return null;
  128. }
  129. arrayList2.add(new PhotoPreviewImageList.EpImageWrapper(notDuplicateFilename, str, i));
  130. } else {
  131. arrayList2.add(new PhotoPreviewImageList.EpImageWrapper(str, (String) null, i));
  132. }
  133. }
  134. }
  135. return arrayList2;
  136. }
  137. }
  138. }