-
-
Notifications
You must be signed in to change notification settings - Fork 2.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ListView Android performance refactor #3235
base: ucr
Are you sure you want to change the base?
ListView Android performance refactor #3235
Conversation
When the searched word does not match any list item, the displayed list is empty.
…into techdebt/patrykF-listview-enhancement
# Conflicts: # appinventor/components/src/com/google/appinventor/components/common/YaVersion.java
Hmm. I thought the tests were passing, but two ListView ones are not. Patryk's changes have broken an assumption the tests are making, but I'm trying to sort out what it is. ETA: Tests now passing. |
The HintSearchText property has been removed. Maybe instead for Android add a fixed hint text but from the Android resources "@android:string/search_go", then we should get the string in the language set in the phone, without the possibility of defining your own, which would be compatible with IOS |
Actually, that was removed because someone else wrote a PR that adds the property for both Android and iOS. I should probably have mentioned that in the PR description. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In addition to the file level and inline comments, the LISTVIEW_COMPONENT_VERSION value in YaVersion needs to be bumped to the change in the properties, and the appropriate code paths in YoungAndroidFormUpgrader.java and versioning.js need to be added.
appinventor/components/src/com/google/appinventor/components/common/LayoutType.java
Outdated
Show resolved
Hide resolved
appinventor/components/src/com/google/appinventor/components/common/LayoutType.java
Outdated
Show resolved
Hide resolved
appinventor/components/src/com/google/appinventor/components/common/ListOrientation.java
Outdated
Show resolved
Hide resolved
appinventor/components/src/com/google/appinventor/components/common/ListOrientation.java
Outdated
Show resolved
Hide resolved
...or/components/src/com/google/appinventor/components/runtime/ListAdapterWithRecyclerView.java
Show resolved
Hide resolved
appinventor/components/tests/com/google/appinventor/components/runtime/ListViewTest.java
Outdated
Show resolved
Hide resolved
appinventor/components/src/com/google/appinventor/components/common/ListOrientation.java
Show resolved
Hide resolved
...or/components/src/com/google/appinventor/components/runtime/ListBounceEdgeEffectFactory.java
Outdated
Show resolved
Hide resolved
I guess I can't make any changes here, right? |
I should be able to give you access. I'll take a look. |
Change-Id: I6d9d69a09b18aaf32d908be32bd2b84609b597cb
General items:
ant tests
passes on my machineI branched from
ucr
My pull request has
ucr
as the baseFurther, if you've changed the blocks language or another user-facing designer/blocks API (added a SimpleProperty, etc.):
^^ I have actually never done this, so we'll need to talk.
Description
This is a performance refactor submitted by @patryk84a in February 2024. He also included some methods for adding and removing items that the class should probably have. I included implementations for these in iOS.
He also included one aesthetic property for which I included a stub for iOS.
Fixes #2857
Original PR (now closed): #3099
Co-author: @patryk84a