Fix Android mobile usability (#4991)#6481
Fix Android mobile usability (#4991)#6481021nirav-blip wants to merge 16 commits intosugarlabs:masterfrom
Conversation
|
✅ All Jest tests passed! This PR is ready to merge. |
|
Thanks for the Android usability improvements Requesting changes due to some correctness and maintainability concerns: help visibility mixes inline styles and classes, making state inconsistent. The document-level outside-click handler is added unconditionally and
And one last
|
| background-color: #e0e0e0; | ||
| color: black; | ||
| border: none; | ||
| border-radius: 4px; |
There was a problem hiding this comment.
don't you think you removed the lines, and added them again with just trailing spaces?
| height: 64px; | ||
| width: 100%; | ||
| box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.16), 0px 2px 10px 0px rgba(0, 0, 0, 0.12); | ||
| box-shadow: |
There was a problem hiding this comment.
you just re-wrote the same line, don't you think?
| height: 28px; | ||
| filter: invert(100%); | ||
| transition: background-color 0.3s, filter 0.3s; | ||
| transition: |
| /* 1. Fit the screen width */ | ||
| width: 90% !important; | ||
| #helpDiv { | ||
| /* 1. Fit the screen width */ |
| transform: translateX(-50%); | ||
| /* Moves it back by half its width to center it */ | ||
| /* 2. Center Horizontally */ | ||
| left: 50% !important; |
|
mobile responsiveness is good, but keep the diffs less so its easy to review, thanks! |
|
@vyagh Yeah, you're right — sorry about the messy diff. I threw in a bunch of unnecessary formatting (extra spaces, rewriting lines, duplicate comments) that just gets in the way. |
|
✅ All Jest tests passed! This PR is ready to merge. |
|
✅ All Jest tests passed! This PR is ready to merge. |
|
As I check Desktop CSS override is too broad .
Because it can override intended hidden states in desktop layouts. If any feature depends on hiding that widget , this could silently break it. My suggestion -
Eg:
Rest everything LGTM |
|
✅ All Jest tests passed! This PR is ready to merge. |
|
@Chaitu7032 Good catch — that desktop override was way too aggressive. Fixed it: Before: display: block !important (forced visible everywhere) So now it won't break existing hidden states, only affects explicitly opened help widgets. Much safer. |
|
a video attachment would have been great to showcase the improvement. |
What changed: - Help sidebar now collapses with a toggle - Responsive breakpoints (768/480/320px) - Bigger touch targets (44px min) - Click outside help to close - Wheel nav scales with screen size - Canvas fills full width on mobile - Works with both legacy and new help systems Fixes sugarlabs#4991 — Android navigation was rough, blocks were huge, sidebar never went away.
- Collapsible help sidebar with toggle - Responsive breakpoints at 768/480/320px - Touch targets now 44px min - Click outside help to close - Wheel nav scales to screen size - Canvas full width on mobile - Supports both legacy and new help systems - Cleaned up formatting: combined split CSS, removed duplicate comments - Added css/activities.css to .prettierignore Fixes sugarlabs#4991 — Android navigation was rough, sidebar never went away, blocks were huge.
What changed: - Collapsible help sidebar with toggle (mobile only) - Responsive breakpoints at 768/480/320px - 44px touch targets, click outside to close (mobile) - Scaled wheel nav, full-width canvas - Supports both help systems - Classes-only visibility (no inline styles) - Added type=button, fixed overlapping breakpoints - Added activities.css to .prettierignore Fixes sugarlabs#4991 (Android navigation issues, always-visible sidebar) Clean diffs: single visibility mechanism, mobile-only handlers, proper semantics.
b74c74d to
4280e2c
Compare
|
✅ All Jest tests passed! This PR is ready to merge. |
|
✅ All Jest tests passed! This PR is ready to merge. |
Screencast.From.2026-04-10.02-12-11.mp4@walter your thoughts ? |
|
✅ All Jest tests passed! This PR is ready to merge. |
|
I am struggling with this a bit: (1) I don't know what the big ? that appear on the left of the screen is supposed to do. When I click on it, it doesn't seem to do anything; (2) When I click on the help button, it brings up the help widget but I cannot get the widget to dismiss. |
|
✅ All Jest tests passed! This PR is ready to merge. |
…inicky—either the widget wouldn't pop up at all, or it'd get stuck and you couldn't close it. It should toggle properly now
|
✅ All Jest tests passed! This PR is ready to merge. |
|
@walterbender Got both of these handled. To answer your questions: The big "?" button is just the mobile toggle. It only shows up when the screen is narrower than 768px because the normal sidebar is too bulky for phones. One tap opens the help, and another tap hides it. I also fixed the dismissal issues. It'll close now if you hit the button again or if you just tap outside the widget. It should be much less finicky now—give it a try on your phone and let me know if it's still acting up. |
|
just a quick thought and also i went to the official https://musicblocks.sugarlabs.org/ Screencast.From.2026-04-11.20-02-36.mp4i feel its optimized enough |
|
✅ All Jest tests passed! This PR is ready to merge. |
|
✅ All Jest tests passed! This PR is ready to merge. |
|
@walterbender - glad it’s working! The reason for the two buttons is mostly about screen space. Centered modals are miserable on phones, so I added the blue "?" button to trigger a slide-in sidebar instead. It takes up about 80% of the screen, which is way easier to read on a small device. It’s responsive, so it only pops up when the screen is 768px or narrower—the same way the "Play only mode" message works. If you resize your desktop browser, you'll see it disappear. I figured this kept the help accessible without crowding the main toolbar on mobile. Let me know if that logic feels right or if you'd rather I change it. |
|
I understand that it is responsive. But it seems to always be on the screen for mobile, which takes up valuable screen real estate on a small device. |
|
@walterbender - |
|
Let's discuss with Devin. |
|
sounds good |
|
✅ All Jest tests passed! This PR is ready to merge. |
|
❌ Some Jest tests failed. Please check the logs and fix the issues before merging. Coverage: Statements: 41.87% | Branches: 34.76% | Functions: 46.52% | Lines: 42.28% Failed Tests: |
|
✅ All Jest tests passed! This PR is ready to merge. Coverage: Statements: 43.27% | Branches: 35.53% | Functions: 47.74% | Lines: 43.7% |

What changed:
Fixes #4991 — Android navigation was rough, blocks were huge, sidebar never went away.
PR Category