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

material UI issues #478

Closed
ekuleshov opened this issue May 27, 2021 · 7 comments
Closed

material UI issues #478

ekuleshov opened this issue May 27, 2021 · 7 comments

Comments

@ekuleshov
Copy link
Contributor

The current material UI has several issues on the narrow screen. With vertical device orientation on a phone with all options enabled (subtitles, playback, fullscreen, etc) the control widget does not fit the with and shows the overflow UI error. But even without overflow the play slider does not have enough width to be usable.

Also non-transparent controls cover significant part of the video frame.

It would be great to have an option to make video player control bar transparent and also move video play progress in its own row for the full widget width (similar to Android video player or Youtube).

@Ahmadre
Copy link
Collaborator

Ahmadre commented May 27, 2021

@ekuleshov We're already targeting a restructure of the InheritedWidget Architecture and the restructure of the UI (will look similiar like actual YT on mobile. Be prepared :)

@Ahmadre
Copy link
Collaborator

Ahmadre commented May 28, 2021

Fixed with v. 1.2.0. Please update your chewie and have a look here:

https://pub.dev/packages/chewie/changelog

@Ahmadre
Copy link
Collaborator

Ahmadre commented May 28, 2021

regarding making the video player progress bar transparent:

Chewie is supporting out of the box an option named: customControls.

With that you can build completely your own controls :).

But it seems a lot of people are not aware of this. I'll target the documentation again.

Closing this for now. Have fun with new default design :)

@Ahmadre Ahmadre closed this as completed May 28, 2021
@ekuleshov
Copy link
Contributor Author

ekuleshov commented May 28, 2021

@Ahmadre thank you for the update. It is a big improvement but it still has issues. E.g. placing video controls/options at the top and at the bottom is not justified. The bottom row is half empty anyways) and the top and bottom icons aren't aligned to each other (not on the same grid) and (seem to be not complying with the recommended material offsets)

I'm aware of the custom controls, but that would require to rewrite/clone existing Material implementation.

I may have to do that anyways, because current UI uses too excessive dimming when video controls are shown and large play button in the middle is obscuring large part of the frame when widget does not have a lot of screen real estate.

@Ahmadre
Copy link
Collaborator

Ahmadre commented May 28, 2021

@Ahmadre thank you for the update. It is a big improvement but it still has issues. E.g. placing video controls/options at the top and at the bottom is not justified. The bottom row is half empty anyways) and the top and bottom icons aren't aligned to each other (not on the same grid) and (seem to be not complying with the recommended material offsets)

I'm aware of the custom controls, but that would require to rewrite/clone existing Material implementation.

I may have to do that anyways, because current UI uses too excessive dimming when video controls are shown and large play button in the middle is obscuring large part of the frame when widget does not have a lot of screen real estate.

PR's are welcome

@ekuleshov
Copy link
Contributor Author

PR's are welcome

Any UI-related PR will likely be subjective (and really driven by the individual needs of the apps). Unfortunately the current Chewie plugin structure does not provide a good way to customize UI other than providing your own, but then depending on the video_player plugin directly may make more sense. Basically the 3 existing UI variants don't share any common parts.

Generally, the video player UI has a well know set of controls + custom options (e.g. start, stop, pause, rewind buttons, progress indicator, time indicator, playback speed, menus etc). Then those controls could be arranged or rearranged according to Material or Cupertino UI guidelines.

So, to allow UI flexibility there need to be some common control builder (with decent defaults for Cupertino and Material) and another builder that would assemble the player UI overlay out of those controls.

This way one wouldn't have to rebuild an entire UI logic for the player UI in order to customize it to the app needs. Just replace the part that assembles UI from the pre-build controls.

@Ahmadre
Copy link
Collaborator

Ahmadre commented May 29, 2021

PR's are welcome

Any UI-related PR will likely be subjective (and really driven by the individual needs of the apps). Unfortunately the current Chewie plugin structure does not provide a good way to customize UI other than providing your own, but then depending on the video_player plugin directly may make more sense. Basically the 3 existing UI variants don't share any common parts.

Generally, the video player UI has a well know set of controls + custom options (e.g. start, stop, pause, rewind buttons, progress indicator, time indicator, playback speed, menus etc). Then those controls could be arranged or rearranged according to Material or Cupertino UI guidelines.

So, to allow UI flexibility there need to be some common control builder (with decent defaults for Cupertino and Material) and another builder that would assemble the player UI overlay out of those controls.

This way one wouldn't have to rebuild an entire UI logic for the player UI in order to customize it to the app needs. Just replace the part that assembles UI from the pre-build controls.

Sure, I totally agree: If you open a PR and work on stuff you want to have in chewie, it's all welcome :) we can work on that, that we can have a great benefit for all 💪 appreciate every co-working

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

No branches or pull requests

2 participants