Skip to content
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

Fixes #3896: Improve flow of lessons tab #4441

Merged
merged 18 commits into from
Aug 13, 2022

Conversation

vrajdesai78
Copy link
Contributor

@vrajdesai78 vrajdesai78 commented Jul 21, 2022

Explanation

Fixes #3896: Improved flow of lessons tab by removing repetitive content description.

Essential Checklist

  • The PR title and explanation each start with "Fix #bugnum: " (If this PR fixes part of an issue, prefix the title with "Fix part of #bugnum: ...".)
  • Any changes to scripts/assets files have their rationale included in the PR explanation.
  • The PR follows the style guide.
  • The PR does not contain any unnecessary code changes from Android Studio (reference).
  • The PR is made from a branch that's not called "develop" and is up-to-date with "develop".
  • The PR is assigned to the appropriate reviewers (reference).

Before

improve.mp4

After

flow.mp4

@vrajdesai78 vrajdesai78 requested a review from rt4914 as a code owner July 21, 2022 06:20
@rt4914
Copy link
Contributor

rt4914 commented Jul 22, 2022

For failing test cases try running tests associated with these files on Espresso + Robolectric and share the results.

Copy link
Contributor

@rt4914 rt4914 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@vrajdesai78 The output for blind users is still not good. I have found following issues:

  1. When the card is selected and the spoken feedback starts the talkback says Double Tap to Activate only for First Story and for everything else it does not say Double Tap to Activate. Although the double-tap does work at other places but that is not sufficient because it should get communicated correctly to user.
  2. For drop-down-icon it says Show Chapter List normally it would be expected to have clicks for a text like that but again here it does not say Double Tap to Activate

Suggested Solution

  • For sighted-users, the card-click should expand/collapse the list.
  • For non-sighted users, the expand/collapse click functionality should be shifted to drop-down-icon so that the Talkback will explicitly say Show Chapter List, ... , ..., Double Tap to Activate

What do you think?

@rt4914 rt4914 assigned vrajdesai78 and unassigned rt4914 Jul 30, 2022
@vrajdesai78
Copy link
Contributor Author

vrajdesai78 commented Jul 31, 2022

Updated video and code based on @rt4914 suggestion

@vrajdesai78 vrajdesai78 assigned rt4914 and unassigned vrajdesai78 Aug 2, 2022
Copy link
Contributor

@rt4914 rt4914 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Un-assigning myself as we have discussed that the implementation needs to be updated na tests need to be added.

@rt4914 rt4914 assigned vrajdesai78 and unassigned rt4914 Aug 2, 2022
@vrajdesai78 vrajdesai78 assigned rt4914 and unassigned vrajdesai78 Aug 5, 2022
Copy link
Contributor

@rt4914 rt4914 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@vrajdesai78 Almost LGTM. Suggested changes

@@ -180,28 +184,42 @@ class TopicLessonsFragmentPresenter @Inject constructor(
)
binding.chapterRecyclerView.adapter = createChapterRecyclerViewAdapter()

binding.chapterListDropDownIcon.setOnClickListener {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Because chapterListDropDownIcon is now a clickable item it needs to be minimum 48x48 dp.

Maybe instead of using chapterListDropDownIcon we can use expandListIcon

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated

@rt4914 rt4914 assigned vrajdesai78 and unassigned rt4914 Aug 8, 2022
@vrajdesai78 vrajdesai78 assigned rt4914 and unassigned vrajdesai78 Aug 8, 2022
Copy link
Contributor

@rt4914 rt4914 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@vrajdesai78 PTAL. The earlier suggest changes were two individual suggestions . If you want to apply both the changes you will need to update the logic correctly.

Also check test cases too.

@rt4914 rt4914 assigned vrajdesai78 and unassigned rt4914 Aug 9, 2022
@vrajdesai78 vrajdesai78 assigned rt4914 and unassigned vrajdesai78 Aug 12, 2022
Copy link
Contributor

@rt4914 rt4914 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, Thanks.

@rt4914 rt4914 merged commit db57738 into oppia:develop Aug 13, 2022
BenHenning added a commit that referenced this pull request Apr 11, 2023
<!-- READ ME FIRST: Please fill in the explanation section below and
check off every point from the Essential Checklist! -->
## Explanation
<!--
- Explain what your PR does. If this PR fixes an existing bug, please
include
- "Fixes #bugnum:" in the explanation so that GitHub can auto-close the
issue
  - when this PR is merged.
  -->
Fix #3844: When merged, this PR will;
- Remove the `R.plurals.chapter_count_with_story_name` from the strings
file.
- Remove all translations of the
`R.plurals.chapter_count_with_story_name`.
- Delete the `computeStoryNameChapterCountContainerContentDescription()`
method from `StorySummaryViewModel` which is no longer used.

The approach to delete the above files was necessitated by a change made
on [PR #4441](#4441). The PR
switched from a chapter-based progress system i.e. _Chapter 1 of 10_ to
a percentage-based progress system. This made the
`chapter_count_with_story_name` strings and the
`computeStoryNameChapterCountContainerContentDescription()` method used
to generate the chapter-based progress text redundant. These have been
removed to eliminate this redundancy.

## Essential Checklist
<!-- Please tick the relevant boxes by putting an "x" in them. -->
- [x] The PR title and explanation each start with "Fix #bugnum: " (If
this PR fixes part of an issue, prefix the title with "Fix part of
#bugnum: ...".)
- [x] Any changes to
[scripts/assets](https://github.com/oppia/oppia-android/tree/develop/scripts/assets)
files have their rationale included in the PR explanation.
- [x] The PR follows the [style
guide](https://github.com/oppia/oppia-android/wiki/Coding-style-guide).
- [x] The PR does not contain any unnecessary code changes from Android
Studio
([reference](https://github.com/oppia/oppia-android/wiki/Guidance-on-submitting-a-PR#undo-unnecessary-changes)).
- [x] The PR is made from a branch that's **not** called "develop" and
is up-to-date with "develop".
- [x] The PR is **assigned** to the appropriate reviewers
([reference](https://github.com/oppia/oppia-android/wiki/Guidance-on-submitting-a-PR#clarification-regarding-assignees-and-reviewers-section)).

---------

Co-authored-by: Ben Henning <ben@oppia.org>
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.

[A11Y Advanced] Lessons tab flow needs to be improved
2 participants