Skip to content

Conversation

@spipau
Copy link

@spipau spipau commented Jan 6, 2026

Adds a search icon to the crew and cast list to filter for name and role.

  • Add new menu xml entry for people
  • Add search menu icon to Toolbar
  • Migrate people adapter from ArrayAdapter to BaseAdapter
  • Implement search and filter by using .contains() for name and description
  • Handle empty state
grafik grafik grafik

- Add new menu xml entry for people
- Add search menu to Toolbar
- Migrate people adapter from ArrayAdapter to BaseAdapter
- Implement search and filter
- Handle empty state
@UweTrottmann
Copy link
Owner

Thanks! However, these changes have such fundamental issues that I wonder if this was created using an LLM coding agent?

If you wrote this yourself, I suggest having a look at for example https://developer.android.com/topic/architecture#common-principles

@spipau
Copy link
Author

spipau commented Jan 10, 2026

Hi, I would like to express my graditute as I use your application since more than a decade! 🙏

When implementing this PR I had a nostalgic blast from the past as the architecture used in this part of the applications is ancient. It uses a List, not even a RecyclerView – something I havn't seen since ~2012? 😄
I tried a bit the Gemini Agent, but rewrote most of it. I did not want to reimplement the whole View/Activity and had some fun programming like in the old days. You'd like to rather see a full rewrite?

@UweTrottmann
Copy link
Owner

Hi, I would like to express my gratitude as I use your application since more than a decade!

Thank you!

It uses a List, not even a RecyclerView

My main concern is about architecture, not APIs. As you seem interested in working on this, I'll go into details. It's a learning exercise for me. But it's OK if you drop this, I can get to this myself at some point.

The main issue is that the adapter class is used to modify the data when it's purpose is just to bind data to the UI. There is an existing view model class that's responsible for obtaining and keeping the current state of the credits data. UI events, like the search, should trigger logic in the view model. Which then should update the credits data.

But there are many other small things to improve like

  • sending of UI events through ViewModel (related to above) instead of FragmentManager to Fragment
  • using localized string resources instead of concatenation of existing string resources
  • correctly updating copyright statements
  • using modern options menu APIs and search view components
  • dropping unrelated formatting and code changes in PeopleAdapter (constructor, view holder)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants