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

Change compose-panel to scrollable #10891

Closed

Conversation

mayaeh
Copy link
Contributor

@mayaeh mayaeh commented May 29, 2019

In my laptop environment, “TOOT” button may not fit on the screen via single column layout.
This may also occur in other small screen environments.

So I want to be able to scroll the "compose-panel".
What do you think about this?
スクリーンショット 2019-05-30 0 50 03

@Gargron
Copy link
Member

Gargron commented May 30, 2019

We don't have many options... It's either this, or making the entire page scroll. One page wide scrollbar might be prettier though. Twitter makes the side panel scroll with JS when you scroll the whole page, for example

@noellabo
Copy link
Contributor

The advantage of this approach is that the compose panel and navigation links always stay within the screen. If you scroll the entire screen, you will have to go back to the top to post status or switch screens.

I like this approach.

The right navigation panel may also overflow. You should apply overflow-y: auto; to both side panels.

Also, the height of the post section is limited at present, but if you can scroll, it is better to delete max-height: 200px; of .autosuggest-textarea__textarea.

@Gargron
Copy link
Member

Gargron commented May 30, 2019

The problem is that scrollbars are an ugly UI element and the compose panel is not a visually boxed element so the scrollbar is hanging over empty space. I don't know how to deal with this.

@mayaeh
Copy link
Contributor Author

mayaeh commented May 30, 2019

I agree. I realized that creating multiple scroll bars on a single column layout page is not good.
I think that it is difficult to deal with this problem.

@Gargron
Copy link
Member

Gargron commented May 30, 2019

It might be possible to bind to the wheel event and when scrolling down, ensure via JS that the bottom part of the compose-panel scrolls into view, and when scrolling up, return it to the top. That is roughly what Twitter does with the right panel that has the same issue. Although that is a bit improper as it is re-implementing scroll manually.

Alternatively, it could be possible to set compose-panel height to a pixel value, so that when it grows, it allows you to scroll the entire page (although it probably requires setting explicit height on the surrounding container elements as well)

@mayaeh
Copy link
Contributor Author

mayaeh commented May 30, 2019

I will close this PR.
Because this PR breaks the idea of ​​single column layout.
I don't think that it is good that a lot of scroll bars line up.
Thank you for thinking about this PR.

@mayaeh mayaeh closed this May 30, 2019
@trwnh
Copy link
Member

trwnh commented May 30, 2019

For what it's worth, this is also an issue with the multi-column layout, IIRC. It seems like the best thing to do would be to set the max-height of the sidebar to 100vh or something slightly less to account for margins, then make the compose box overflow-y scrollable (because it is visually a box and therefore a scrollbar doesn't look too bad)

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.

None yet

4 participants