浏览代码

Use constraints, delete chapters when deleting a Manga

inorichi 9 年之前
父节点
当前提交
b2a1ba777d

+ 6 - 0
app/src/main/java/eu/kanade/mangafeed/data/helpers/DbOpenHelper.java

@@ -27,4 +27,10 @@ public class DbOpenHelper extends SQLiteOpenHelper {
     public void onUpgrade(@NonNull SQLiteDatabase db, int oldVersion, int newVersion) {
         // no impl
     }
+
+    @Override
+    public void onConfigure(SQLiteDatabase db){
+        db.setForeignKeyConstraintsEnabled(true);
+    }
+
 }

+ 2 - 1
app/src/main/java/eu/kanade/mangafeed/data/tables/ChaptersTable.java

@@ -37,7 +37,8 @@ public class ChaptersTable {
 				+ COLUMN_NAME + " TEXT NOT NULL, "
 				+ COLUMN_READ + " BOOLEAN NOT NULL, "
 				+ COLUMN_DATE_FETCH + " LONG NOT NULL, "
-				+ "FOREIGN KEY(" + COLUMN_MANGA_ID + ") REFERENCES " + MangasTable.TABLE + "(" + MangasTable.COLUMN_ID + ")"
+				+ "FOREIGN KEY(" + COLUMN_MANGA_ID + ") REFERENCES " + MangasTable.TABLE + "(" + MangasTable.COLUMN_ID + ") "
+				+ "ON DELETE CASCADE"
 				+ ");";
 	}
 }

+ 3 - 0
app/src/main/java/eu/kanade/mangafeed/ui/adapter/MangaLibraryHolder.java

@@ -36,6 +36,9 @@ public class MangaLibraryHolder extends ItemViewHolder<Manga> {
             mUnreadText.setVisibility(View.VISIBLE);
             mUnreadText.setText(Integer.toString(manga.unread));
         }
+        else {
+            mUnreadText.setVisibility(View.GONE);
+        }
         Glide.with(getContext())
                 .load("http://img1.wikia.nocookie.net/__cb20090524204255/starwars/images/thumb/1/1a/R2d2.jpg/400px-R2d2.jpg")
                 .centerCrop()