Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(361)

Unified Diff: chrome/android/java/src/org/chromium/chrome/browser/photo_picker/PickerBitmap.java

Issue 2758313002: Implement the new Photo picker, part two. (Closed)
Patch Set: Address Ted's comments (and sync to latest) Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/android/java/src/org/chromium/chrome/browser/photo_picker/PickerBitmap.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/photo_picker/PickerBitmap.java b/chrome/android/java/src/org/chromium/chrome/browser/photo_picker/PickerBitmap.java
new file mode 100644
index 0000000000000000000000000000000000000000..6b75031f41257d14ce7b392e91fccbf46d5df958
--- /dev/null
+++ b/chrome/android/java/src/org/chromium/chrome/browser/photo_picker/PickerBitmap.java
@@ -0,0 +1,76 @@
+// Copyright 2017 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+package org.chromium.chrome.browser.photo_picker;
+
+import android.support.annotation.IntDef;
+
+import org.chromium.base.ApiCompatibilityUtils;
+import org.chromium.base.annotations.SuppressFBWarnings;
+
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+
+/**
+ * A class to keep track of the meta data associated with a an image in the photo picker.
+ */
+@SuppressFBWarnings("EQ_COMPARETO_USE_OBJECT_EQUALS")
+public class PickerBitmap implements Comparable<PickerBitmap> {
+ // The possible types of tiles involved in the viewer.
+ @IntDef({PICTURE, CAMERA, GALLERY})
+ @Retention(RetentionPolicy.SOURCE)
+ public @interface TileTypes {}
+ public static final int PICTURE = 0;
+ public static final int CAMERA = 1;
+ public static final int GALLERY = 2;
+
+ // The file path to the bitmap to show.
+ private String mFilePath;
+
+ // When the bitmap was last modified on disk.
+ private long mLastModified;
+
+ // The type of tile involved.
+ @TileTypes
+ private int mType;
+
+ /**
+ * The PickerBitmap constructor.
+ * @param filePath The file path to the bitmap to show.
+ * @param lastModified When the bitmap was last modified on disk.
+ * @param type The type of tile involved.
+ */
+ public PickerBitmap(String filePath, long lastModified, @TileTypes int type) {
+ mFilePath = filePath;
+ mLastModified = lastModified;
+ mType = type;
+ }
+
+ /**
+ * Accessor for the filepath.
+ * @return The file path for this PickerBitmap object.
+ */
+ public String getFilePath() {
+ return mFilePath;
+ }
+
+ /**
+ * Accessor for the tile type.
+ * @return The type of tile involved for this bitmap object.
+ */
+ @TileTypes
+ public int type() {
+ return mType;
+ }
+
+ /**
+ * A comparison function for PickerBitmaps (results in a last-modified first sort).
+ * @param other The PickerBitmap to compare it to.
+ * @return 0, 1, or -1, depending on which is bigger.
+ */
+ @Override
+ public int compareTo(PickerBitmap other) {
+ return ApiCompatibilityUtils.compareLong(other.mLastModified, mLastModified);
+ }
+}

Powered by Google App Engine
This is Rietveld 408576698