Skip to content

GitLab

  • Menu
    • Projects Groups Snippets
      Help
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • S Sequenia_test_task
  • Project information
    • Project information
    • Activity
    • Labels
    • Planning hierarchy
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 2
    • Merge requests 2
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Packages & Registries
    • Packages & Registries
    • Package Registry
    • Container Registry
    • Infrastructure Registry
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Mikhail Shamburov
  • Sequenia_test_task
  • Merge requests
  • !26

Merged
Created 3 years ago by Mikhail Shamburov@mikhail.shamburovMaintainer

fixed films general screen architecture

  • Overview 1
  • Commits 3
  • Changes 12

Created by: Aprekek

  • Mikhail Shamburov
    Mikhail Shamburov @mikhail.shamburov · 3 years ago
    Author Maintainer

    Merged by: Aprekek at 2022-03-23 12:55:22 UTC

  • You're only seeing other activity in the feed. To add a comment, switch to one of the following options.
Please register or sign in to reply
Compare
  • master (base)

and
  • latest version
    695f9b8c
    3 commits, 3 years ago

12 files
+ 46
- 68

    Preferences

    File browser
    Compare changes
features/…/…/…/…/…‎/…/…/…/…/…/general‎
presen‎tation‎
cont‎racts‎
FilmsGenera‎lContract.kt‎ +1 -1
pres‎enter‎
FilmsGeneral‎Presenter.kt‎ +1 -1
scr‎een‎
FilmsGener‎alScreen.kt‎ +1 -1
ui/ad‎apters‎
HeaderAd‎apter.kt‎ +0 -34
u‎i‎
adap‎ters‎
decor‎ators‎
FilmItemDe‎corator.kt‎ +2 -2
viewh‎olders‎
FilmView‎Holder.kt‎ +1 -1
GenreView‎Holder.kt‎ +1 -1
HeaderVie‎wHolder.kt‎ +1 -1
FilmsAd‎apter.kt‎ +2 -2
GenresAd‎apter.kt‎ +2 -2
HeaderAd‎apter.kt‎ +26 -0
FilmsGenera‎lFragment.kt‎ +8 -22
features/films/general/src/main/java/ru/sequenia/testtask/features/films/general/presentation/contracts/FilmsGeneralContract.kt
+ 1
- 1
  • View file @ 695f9b8c

  • Edit in single-file editor

  • Edit in Web IDE


@@ -15,7 +15,7 @@ interface FilmsGeneralContract : BaseContract {
interface Presenter : BaseContract.Presenter<FilmsGeneralContract.View> {
fun loadFilmsData()
fun onInitialized()
fun onReload()
fun onFilmSelect(film: FilmAnnotation)
fun onGenreFilterSelect(genreFilter: Long)
features/films/general/src/main/java/ru/sequenia/testtask/features/films/general/presentation/presenter/FilmsGeneralPresenter.kt
+ 1
- 1
  • View file @ 695f9b8c

  • Edit in single-file editor

  • Edit in Web IDE


@@ -39,7 +39,7 @@ class FilmsGeneralPresenter(
view.bind(eventsDispatcher)
}
override fun loadFilmsData() {
override fun onInitialized() {
eventsDispatcher.dispatchEvent { showLoading() }
if (wasInitialized && !hasError) {
features/films/general/src/main/java/ru/sequenia/testtask/features/films/general/presentation/screen/FilmsGeneralScreen.kt
+ 1
- 1
  • View file @ 695f9b8c

  • Edit in single-file editor

  • Edit in Web IDE

package ru.sequenia.testtask.features.films.general.presentation.screen
import com.github.terrakok.cicerone.androidx.FragmentScreen
import ru.sequenia.testtask.features.films.general.presentation.ui.FilmsGeneralFragment
import ru.sequenia.testtask.features.films.general.ui.FilmsGeneralFragment
fun getFilmsGeneralScreen() = FragmentScreen { FilmsGeneralFragment.getInstance() }
\ No newline at end of file
features/films/general/src/main/java/ru/sequenia/testtask/features/films/general/presentation/ui/adapters/HeaderAdapter.kt deleted 100644 → 0
+ 0
- 34
  • View file @ 06a503f2

package ru.sequenia.testtask.features.films.general.presentation.ui.adapters
import android.view.ViewGroup
import androidx.recyclerview.widget.DiffUtil
import androidx.recyclerview.widget.ListAdapter
import ru.sequenia.testtask.features.films.general.presentation.ui.adapters.viewholders.HeaderViewHolder
class HeaderAdapter : ListAdapter<String, HeaderViewHolder>(HeaderDiffUtil()) {
companion object {
const val VIEW_TYPE = 0
}
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): HeaderViewHolder =
HeaderViewHolder.from(parent)
override fun onBindViewHolder(holder: HeaderViewHolder, position: Int) {
holder.bind(getItem(position))
}
override fun getItemViewType(position: Int): Int {
return VIEW_TYPE
}
private class HeaderDiffUtil : DiffUtil.ItemCallback<String>() {
override fun areItemsTheSame(oldItem: String, newItem: String) =
oldItem == newItem
override fun areContentsTheSame(oldItem: String, newItem: String) =
oldItem == newItem
}
}
\ No newline at end of file
features/films/general/src/main/java/ru/sequenia/testtask/features/films/general/presentation/ui/adapters/decorators/FilmItemDecorator.kt → features/films/general/src/main/java/ru/sequenia/testtask/features/films/general/ui/adapters/decorators/FilmItemDecorator.kt
+ 2
- 2
  • View file @ 695f9b8c

  • Edit in single-file editor

  • Edit in Web IDE


package ru.sequenia.testtask.features.films.general.presentation.ui.adapters.decorators
package ru.sequenia.testtask.features.films.general.ui.adapters.decorators
import android.graphics.Rect
import android.view.View
import androidx.recyclerview.widget.ConcatAdapter
import androidx.recyclerview.widget.RecyclerView
import ru.sequenia.testtask.features.films.general.presentation.ui.adapters.FilmsAdapter
import ru.sequenia.testtask.features.films.general.ui.adapters.FilmsAdapter
class FilmItemDecorator(
private val spanCount: Int,
0 Assignees
None
Assign to
0 Reviewers
None
Request review from
Milestone
No milestone
None
None
Time tracking
No estimate or time spent
Labels
0
None
0
None
    Assign labels
  • Manage project labels

Lock merge request
Unlocked
1
1 participant
Mikhail Shamburov
Reference: mikhail.shamburov/Sequenia_test_task!26
Source branch: fix/films_general_architecture

Menu

Projects Groups Snippets
Help