Add pin isError and thumbnailUrl to the database

captchafix
Floens 11 years ago
parent 4deb9d4616
commit 5b08a7c352
  1. 6
      Clover/app/src/main/java/org/floens/chan/core/manager/ThreadManager.java
  2. 4
      Clover/app/src/main/java/org/floens/chan/core/manager/WatchManager.java
  3. 4
      Clover/app/src/main/java/org/floens/chan/core/model/Pin.java
  4. 5
      Clover/app/src/main/java/org/floens/chan/core/watch/PinWatcher.java
  5. 11
      Clover/app/src/main/java/org/floens/chan/database/DatabaseHelper.java
  6. 10
      Clover/app/src/main/java/org/floens/chan/ui/adapter/PinnedAdapter.java
  7. 5
      docs/database.txt

@ -191,12 +191,6 @@ public class ThreadManager implements Loader.LoaderListener {
lastPost = result.get(result.size() - 1).no; lastPost = result.get(result.size() - 1).no;
} }
// TODO: fix hack
Pin pin = ChanApplication.getWatchManager().findPinByLoadable(loader.getLoadable());
if (pin != null && pin.opPost == null && result.size() > 0) {
pin.opPost = result.get(0);
}
threadManagerListener.onThreadLoaded(result, append); threadManagerListener.onThreadLoaded(result, append);
} }

@ -138,7 +138,7 @@ public class WatchManager implements ChanApplication.ForegroundChangedListener {
Pin pin = new Pin(); Pin pin = new Pin();
pin.loadable = new Loadable(opPost.board, opPost.no); pin.loadable = new Loadable(opPost.board, opPost.no);
pin.loadable.generateTitle(opPost); pin.loadable.generateTitle(opPost);
pin.opPost = opPost; pin.thumbnailUrl = opPost.thumbnailUrl;
return addPin(pin); return addPin(pin);
} }
@ -146,7 +146,7 @@ public class WatchManager implements ChanApplication.ForegroundChangedListener {
Pin pin = new Pin(); Pin pin = new Pin();
pin.loadable = loadable; pin.loadable = loadable;
pin.loadable.generateTitle(opPost); pin.loadable.generateTitle(opPost);
pin.opPost = opPost; pin.thumbnailUrl = opPost.thumbnailUrl;
return addPin(pin); return addPin(pin);
} }

@ -46,9 +46,11 @@ public class Pin {
@DatabaseField @DatabaseField
public int quoteNewCount = 0; public int quoteNewCount = 0;
@DatabaseField
public boolean isError = false; public boolean isError = false;
public Post opPost; @DatabaseField
public String thumbnailUrl = null;
private PinWatcher pinWatcher; private PinWatcher pinWatcher;

@ -129,11 +129,6 @@ public class PinWatcher implements Loader.LoaderListener {
public void onData(List<Post> result, boolean append) { public void onData(List<Post> result, boolean append) {
pin.isError = false; pin.isError = false;
// TODO: fix hack
if (pin.opPost == null && result.size() > 0) {
pin.opPost = result.get(0);
}
posts.clear(); posts.clear();
posts.addAll(result); posts.addAll(result);

@ -40,7 +40,7 @@ public class DatabaseHelper extends OrmLiteSqliteOpenHelper {
private static final String TAG = "DatabaseHelper"; private static final String TAG = "DatabaseHelper";
private static final String DATABASE_NAME = "ChanDB"; private static final String DATABASE_NAME = "ChanDB";
private static final int DATABASE_VERSION = 12; private static final int DATABASE_VERSION = 13;
public Dao<Pin, Integer> pinDao; public Dao<Pin, Integer> pinDao;
public Dao<Loadable, Integer> loadableDao; public Dao<Loadable, Integer> loadableDao;
@ -118,6 +118,15 @@ public class DatabaseHelper extends OrmLiteSqliteOpenHelper {
e.printStackTrace(); e.printStackTrace();
} }
} }
if (oldVersion < 13) {
try {
boardsDao.executeRawNoArgs("ALTER TABLE pin ADD COLUMN isError SMALLINT;");
boardsDao.executeRawNoArgs("ALTER TABLE pin ADD COLUMN thumbnailUrl VARCHAR;");
} catch (SQLException e) {
e.printStackTrace();
}
}
} }
public void reset() { public void reset() {

@ -114,16 +114,14 @@ public class PinnedAdapter extends BaseAdapter {
final Pin pin = getItem(position); final Pin pin = getItem(position);
if (convertView == null) { if (convertView == null) {
convertView = (LinearLayout) LayoutInflater.from(context).inflate(R.layout.pin_item, null); convertView = LayoutInflater.from(context).inflate(R.layout.pin_item, null);
} }
CustomNetworkImageView imageView = (CustomNetworkImageView) convertView.findViewById(R.id.pin_image); CustomNetworkImageView imageView = (CustomNetworkImageView) convertView.findViewById(R.id.pin_image);
if (pin.opPost != null && pin.opPost.hasImage) { if (pin.thumbnailUrl != null) {
imageView.setVisibility(View.VISIBLE); imageView.setVisibility(View.VISIBLE);
imageView.setFadeIn(100); imageView.setFadeIn(0);
if (imageView.getUrl() == null || !imageView.getUrl().equals(pin.opPost.thumbnailUrl)) { imageView.setImageUrl(pin.thumbnailUrl, ChanApplication.getVolleyImageLoader());
imageView.setImageUrl(pin.opPost.thumbnailUrl, ChanApplication.getVolleyImageLoader());
}
} else { } else {
imageView.setVisibility(View.GONE); imageView.setVisibility(View.GONE);
} }

@ -28,3 +28,8 @@ ALTER TABLE board ADD COLUMN countryFlags INTEGER;
ALTER TABLE board ADD COLUMN trollFlags INTEGER; ALTER TABLE board ADD COLUMN trollFlags INTEGER;
ALTER TABLE board ADD COLUMN mathTags INTEGER; ALTER TABLE board ADD COLUMN mathTags INTEGER;
Changes in version 13:
ALTER TABLE pin ADD COLUMN isError SMALLINT;
ALTER TABLE board ADD COLUMN thumbnailUrl VARCHAR;

Loading…
Cancel
Save