import java.io.File;
-import com.owncloud.android.utils.Log_OC;
-
+import com.owncloud.android.MainApp;
+import com.owncloud.android.lib.common.utils.Log_OC;
+import third_parties.daveKoeller.AlphanumComparator;
+import android.content.Intent;
+import android.net.Uri;
import android.os.Parcel;
import android.os.Parcelable;
import android.webkit.MimeTypeMap;
private String mPermissions;
private String mRemoteId;
+ private boolean mNeedsUpdateThumbnail;
+
/**
* Create new {@link OCFile} with given path.
mPublicLink = source.readString();
mPermissions = source.readString();
mRemoteId = source.readString();
+ mNeedsUpdateThumbnail = source.readInt() == 0;
+
}
@Override
dest.writeString(mPublicLink);
dest.writeString(mPermissions);
dest.writeString(mRemoteId);
+ dest.writeInt(mNeedsUpdateThumbnail ? 1 : 0);
}
/**
mRemotePath += PATH_SEPARATOR;
}
Log_OC.d(TAG, "OCFile name changed to " + mRemotePath);
+
+ // Notify MediaScanner about removed file
+ Intent intent1 = new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE);
+ intent1.setData(Uri.fromFile(new File(this.getStoragePath())));
+ MainApp.getAppContext().sendBroadcast(intent1);
+
+ // Notify MediaScanner about new file
+ Intent intent2 = new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE);
+ String folder = new File(this.getStoragePath()).getParent();
+ intent2.setData(Uri.fromFile(new File(folder+ PATH_SEPARATOR+name)));
+ MainApp.getAppContext().sendBroadcast(intent2);
}
}
mPublicLink = null;
mPermissions = null;
mRemoteId = null;
+ mNeedsUpdateThumbnail = false;
}
/**
return mNeedsUpdating;
}
+ public boolean needsUpdateThumbnail() {
+ return mNeedsUpdateThumbnail;
+ }
+
+ public void setNeedsUpdateThumbnail(boolean needsUpdateThumbnail) {
+ this.mNeedsUpdateThumbnail = needsUpdateThumbnail;
+ }
+
public long getLastSyncDateForProperties() {
return mLastSyncDateForProperties;
}
} else if (another.isFolder()) {
return 1;
}
- return getRemotePath().toLowerCase().compareTo(another.getRemotePath().toLowerCase());
+ return new AlphanumComparator().compare(this, another);
}
@Override