mirror of
				https://github.com/mihonapp/mihon.git
				synced 2025-10-30 22:07:57 +01:00 
			
		
		
		
	No longer using chapter url for new chapter notification's reader intent
This commit is contained in:
		| @@ -116,8 +116,6 @@ class ReaderActivity : BaseRxActivity<ReaderActivityBinding, ReaderPresenter>() | ||||
|             return Intent(context, ReaderActivity::class.java).apply { | ||||
|                 putExtra("manga", manga.id) | ||||
|                 putExtra("chapter", chapter.id) | ||||
|                 // chapters just added from library updates don't have an id yet | ||||
|                 putExtra("chapterUrl", chapter.url) | ||||
|                 addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP) | ||||
|             } | ||||
|         } | ||||
| @@ -141,14 +139,12 @@ class ReaderActivity : BaseRxActivity<ReaderActivityBinding, ReaderPresenter>() | ||||
|         if (presenter.needsInit()) { | ||||
|             val manga = intent.extras!!.getLong("manga", -1) | ||||
|             val chapter = intent.extras!!.getLong("chapter", -1) | ||||
|             val chapterUrl = intent.extras!!.getString("chapterUrl", "") | ||||
|             if (manga == -1L || chapterUrl == "" && chapter == -1L) { | ||||
|             if (manga == -1L || chapter == -1L) { | ||||
|                 finish() | ||||
|                 return | ||||
|             } | ||||
|             NotificationReceiver.dismissNotification(this, manga.hashCode(), Notifications.ID_NEW_CHAPTERS) | ||||
|             if (chapter > -1) presenter.init(manga, chapter) | ||||
|             else presenter.init(manga, chapterUrl) | ||||
|             presenter.init(manga, chapter) | ||||
|         } | ||||
|  | ||||
|         if (savedInstanceState != null) { | ||||
|   | ||||
| @@ -211,21 +211,6 @@ class ReaderPresenter( | ||||
|             ) | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Initializes this presenter with the given [mangaId] and [chapterUrl]. This method will | ||||
|      * fetch the manga from the database and initialize the initial chapter. | ||||
|      */ | ||||
|     fun init(mangaId: Long, chapterUrl: String) { | ||||
|         if (!needsInit()) return | ||||
|  | ||||
|         val context = Injekt.get<Application>() | ||||
|         val db = DatabaseHelper(context) | ||||
|         val chapterId = db.getChapter(chapterUrl, mangaId).executeAsBlocking()?.id | ||||
|         if (chapterId != null) { | ||||
|             init(mangaId, chapterId) | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Initializes this presenter with the given [manga] and [initialChapterId]. This method will | ||||
|      * set the chapter loader, view subscriptions and trigger an initial load. | ||||
|   | ||||
| @@ -120,7 +120,10 @@ fun syncChaptersWithSource( | ||||
|                     readded.add(c) | ||||
|                 } | ||||
|             } | ||||
|             db.insertChapters(toAdd).executeAsBlocking() | ||||
|             val chapters = db.insertChapters(toAdd).executeAsBlocking() | ||||
|             toAdd.forEach { chapter -> | ||||
|                 chapter.id = chapters.results().getValue(chapter).insertedId() | ||||
|             } | ||||
|         } | ||||
|  | ||||
|         if (toChange.isNotEmpty()) { | ||||
| @@ -131,7 +134,15 @@ fun syncChaptersWithSource( | ||||
|         db.fixChaptersSourceOrder(sourceChapters).executeAsBlocking() | ||||
|  | ||||
|         // Set this manga as updated since chapters were changed | ||||
|         manga.last_update = Date().time | ||||
|         val newestChapter = db.getChapters(manga).executeAsBlocking().maxBy { it.date_upload } | ||||
|         val dateFetch = newestChapter?.date_upload ?: manga.last_update | ||||
|         if (dateFetch == 0L) { | ||||
|             if (toAdd.isNotEmpty()) { | ||||
|                 manga.last_update = Date().time | ||||
|             } | ||||
|         } else { | ||||
|             manga.last_update = dateFetch | ||||
|         } | ||||
|         db.updateLastUpdated(manga).executeAsBlocking() | ||||
|     } | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user