Only update last seen when watching is enabled.

captchafix
Florens Douwes 11 years ago
parent 8745fc364c
commit dc9419db3b
  1. 16
      Clover/app/src/main/java/org/floens/chan/core/manager/ThreadManager.java
  2. 11
      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

@ -565,13 +565,15 @@ public class ThreadManager implements Loader.LoaderListener {
} }
private void updateLastSeen() { private void updateLastSeen() {
Pin pin = ChanApplication.getWatchManager().findPinByLoadable(loader.getLoadable()); if (ChanApplication.getWatchManager().getWatchEnabled()) {
if (pin != null) { Pin pin = ChanApplication.getWatchManager().findPinByLoadable(loader.getLoadable());
Post last = pin.getLastSeenPost(); if (pin != null) {
if (last != null) { Post last = pin.getLastSeenPost();
lastSeenPost = last.no; if (last != null) {
} else { lastSeenPost = last.no;
lastSeenPost = -1; } else {
lastSeenPost = -1;
}
} }
} }
} }

@ -134,7 +134,7 @@ public class WatchManager implements ChanApplication.ForegroundChangedListener {
public void removePin(Pin pin) { public void removePin(Pin pin) {
pins.remove(pin); pins.remove(pin);
ChanApplication.getDatabaseManager().removePin(pin); ChanApplication.getDatabaseManager().removePin(pin);
pin.destroyWatcher(); pin.destroy();
onPinsChanged(); onPinsChanged();
} }
@ -165,9 +165,10 @@ public class WatchManager implements ChanApplication.ForegroundChangedListener {
} }
public void onPinViewed(Pin pin) { public void onPinViewed(Pin pin) {
pin.getPinWatcher().onViewed(); if (getWatchEnabled()) {
pin.getPinWatcher().onViewed();
onPinsChanged(); onPinsChanged();
}
} }
public void addPinListener(PinListener l) { public void addPinListener(PinListener l) {
@ -294,7 +295,7 @@ public class WatchManager implements ChanApplication.ForegroundChangedListener {
pendingTimer = null; pendingTimer = null;
for (Pin pin : getWatchingPins()) { for (Pin pin : getWatchingPins()) {
pin.updateWatch(); pin.update();
} }
updateTimerState(); updateTimerState();

@ -66,11 +66,11 @@ public class Pin {
return getPinWatcher().getLastSeenPost(); return getPinWatcher().getLastSeenPost();
} }
public void updateWatch() { public void update() {
getPinWatcher().update(); getPinWatcher().update();
} }
public void destroyWatcher() { public void destroy() {
if (pinWatcher != null) { if (pinWatcher != null) {
pinWatcher.destroy(); pinWatcher.destroy();
pinWatcher = null; pinWatcher = null;

Loading…
Cancel
Save