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

Exercise question preview desperately needs more scrolling room #6945

Closed
khangmach opened this issue May 29, 2020 · 9 comments · Fixed by #8143
Closed

Exercise question preview desperately needs more scrolling room #6945

khangmach opened this issue May 29, 2020 · 9 comments · Fixed by #8143
Assignees
Labels
bug Behavior is wrong or broken DEV: frontend P1 - important Priority: High impact on UX TAG: mobile Issues related to responsiveness or touch-screens TAG: ux update Improved user-facing feature
Milestone

Comments

@khangmach
Copy link
Contributor

Observed behavior

While previewing an exercise in quiz creation or lesson resource management, there is extremely little room for scrolling through an exercise's question list.

GIF1

This is more drastic on smaller-medium screens:

GIF2

Expected behavior

Show the entire question list similar to the quiz preview in Lessons or in the quiz-taking screen

Screen Shot 2020-05-28 at 5 16 01 PM

Screen Shot 2020-05-27 at 1 04 19 PM

User-facing consequences

The small space is frustrating to scroll through. Often you will find yourself doing a scrolling motion on the trackpad or mouse and accidentally over-scroll outside of the question list container -- which causes the entire page to scroll instead of just the question list.

Steps to reproduce

  • Navigate to Coach > Quizzes
  • Make a new quiz
  • Preview an exercise and scroll through the question list

Context

Tell us about your environment, including:

  • Kolibri version: Beta
  • Operating system: MacOS
  • Browser: Chrome
@khangmach khangmach added bug Behavior is wrong or broken TAG: ux update Improved user-facing feature labels May 29, 2020
@indirectlylit indirectlylit added the TAG: mobile Issues related to responsiveness or touch-screens label May 29, 2020
@indirectlylit indirectlylit added this to the upcoming patch milestone May 29, 2020
@indirectlylit indirectlylit added P1 - important Priority: High impact on UX DEV: frontend labels May 29, 2020
@khangmach
Copy link
Contributor Author

khangmach commented Apr 8, 2021

This should be an easy fix. We already have an available layout via quiz details page in coach (plan tab -> quizzes -> quiz details)

s1

@rtibbles rtibbles modified the milestones: upcoming patch, 0.15.0 Apr 8, 2021
@sairina sairina self-assigned this Apr 12, 2021
@sairina
Copy link
Contributor

sairina commented Jun 2, 2021

@khangmach and @jonboiser -

Currently, I've made some changes to the original scroll. Option 1 is on the left, and Option 2 is on the right:

Maintains some scrolling Has no scrolling
2021-06-02 14 29 33 2021-06-02 14 28 17

Which one is closer to the behavior we would expect to see? With Option 2, there is no scrollbar at all for the questions column, but gets rid of the maxHeight that the outer container (the MultiPanelLayout component) has, which would have other effects in other components in the code.

@khangmach
Copy link
Contributor Author

For option 1, do you have to scroll through the page scrollbar first in order to scroll through the question list?

@sairina
Copy link
Contributor

sairina commented Jun 2, 2021

No, you can scroll through the question list without getting to the bottom of the page scroll. That works as long as you are hovering over the question list.

@indirectlylit
Copy link
Contributor

indirectlylit commented Jun 3, 2021

Relevant previous work and discussion:

My personal rule of thumb has been to always avoid nesting scrolling panels, and when possible to only have a single scrolling area on a page. There are exceptions when this isn't possible, but generally these introduce other complexities on smaller screens.

@sairina
Copy link
Contributor

sairina commented Jun 3, 2021

Couple things I'm thinking about now:

  • From the Slack conversation and subsequent gif, I'm gathering that there shouldn't be any scrollbars at all for the page itself - and the scrolling should actually happen in the MultiPaneLayout container?
  • That makes me wonder, should there be space between the end of the container and the bottom of the page? (see gifs from comment above) That seems to be creating some of the extra scrolling that's happening on the page scroll.
  • Also, it seems that the header in the MultiPaneLayout is giant and does not change even if the size of the window is reduced, which is making the rest of the container shrink, and thus making that space for the QuestionList also shrink. I see that in the spec, the header should say the same, but should that be the case when the height of the window changes (as opposed to the width)?

@sairina
Copy link
Contributor

sairina commented Jun 5, 2021

Also, I noticed that MultiPaneLayout has no K-components - I'm wondering if this is part of the reason why it is also not responsive at different break points (width-wise, for sure) 😬 . Should there be a refactor of this component, instead of just trying to fix the scrolling?

@khangmach
Copy link
Contributor Author

khangmach commented Jun 5, 2021

I'm gathering that there shouldn't be any scrollbars at all for the page itself - and the scrolling should actually happen in the MultiPaneLayout container?

I think we can try this approach. This means that the page length would be determined by the max width of the container though, right?

That makes me wonder, should there be space between the end of the container and the bottom of the page?

I never knew why the extra space was there and it doesn't serve a visible purpose. We can scrap it.

Also, it seems that the header in the MultiPaneLayout is giant and does not change even if the size of the window is reduced

Once it's developed, I want to carry over the page header styles from the new content renderer page. That should take care of the huge header issues.

@sairina
Copy link
Contributor

sairina commented Jun 7, 2021

  • Extra space: it's actually in everything, so is there a reason why it is there? @jonboiser @indirectlylit - maybe you have some context?

https://github.com/learningequality/kolibri/blob/develop/kolibri/core/assets/src/views/CoreBase/index.vue#L581

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Behavior is wrong or broken DEV: frontend P1 - important Priority: High impact on UX TAG: mobile Issues related to responsiveness or touch-screens TAG: ux update Improved user-facing feature
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants