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

MM-38682: Gekidou Homepage (Static) #5756

Merged
merged 21 commits into from
Nov 4, 2021
Merged

Conversation

shaz-r
Copy link
Contributor

@shaz-r shaz-r commented Oct 15, 2021

Summary

Very simple, static components for the Channel List screen. These are the barebones and will be developed further in subsequent PR's.

Highlights:

  • Button Component: <Button emphasis='tertiary' size='lg' text='A Button' onPress=( () => Alert.alert('hi!')) />
  • Typography Helper: <Text style={typography('Body', 200)}> ...
To-Do:
  • Rebase of gekidou
  • Loading Component
  • Error Component
  • Category Body Section Nested FlatLists
  • Channel List Item Highlight
  • Channel List Item Normal
  • Tablet Styles Check

Ticket Link

https://mattermost.atlassian.net/browse/MM-38682

Checklist

  • Added or updated unit tests (required for all new features)
  • Has UI changes

Device Information

This PR was tested on:

  • iPhone 12 / iOS 14.5 Simulator
  • Pixel 4 / API30 Simulator

Screenshots

Screen Shot 2021-10-28 at 9 47 02 pm

Screen Shot 2021-10-28 at 9 47 01 pm

Screen Shot 2021-10-28 at 9 46 02 pm

Screen Shot 2021-10-28 at 9 46 00 pm

Screen Shot 2021-10-28 at 9 45 45 pm

Screen Shot 2021-10-28 at 9 45 43 pm

Screen Shot 2021-10-28 at 9 43 48 pm

Screen Shot 2021-10-28 at 9 43 47 pm

Screen Shot 2021-10-28 at 9 43 33 pm

Screen Shot 2021-10-28 at 9 43 30 pm

Release Note

NONE

@shaz-r shaz-r added this to the v2.0 milestone Oct 15, 2021
@shaz-r shaz-r self-assigned this Oct 15, 2021
@shaz-r shaz-r added Do Not Merge/Awaiting PR Awaiting another pull request before merging (e.g. server changes) and removed release-note labels Oct 15, 2021
@shaz-r
Copy link
Contributor Author

shaz-r commented Oct 15, 2021

Note: This depends on #5718

@enahum
Copy link
Contributor

enahum commented Oct 15, 2021

@SHAZM dependency merged, please resolve conflicts

@matthewbirtch matthewbirtch requested review from Rina-dsg and removed request for matthewbirtch October 15, 2021 13:40
@matthewbirtch
Copy link
Contributor

Adding @Rina-dsg for ux review as she's owning the mobile v2 UX from this point forward. I will take a look once Marina has reviewed though

@shaz-r shaz-r force-pushed the MM-38682-Gekidou-Homepage branch from a463690 to b7ef07e Compare October 17, 2021 22:31
@shaz-r
Copy link
Contributor Author

shaz-r commented Oct 17, 2021

@SHAZM dependency merged, please resolve conflicts

Rebased and pushed.

Copy link
Contributor

@avinashlng1080 avinashlng1080 left a comment

Choose a reason for hiding this comment

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

Just a few comments from my side. Each PR has to be tested against mobile + tablets and ran against Android and iOS.

app/components/channel_list/header/index.tsx Outdated Show resolved Hide resolved
app/utils/typography.ts Outdated Show resolved Hide resolved
app/components/channel_list/threads/index.tsx Outdated Show resolved Hide resolved
app/components/channel_list/search/index.tsx Outdated Show resolved Hide resolved
app/screens/home/channel_list/index.tsx Outdated Show resolved Hide resolved
Copy link
Contributor

@larkox larkox left a comment

Choose a reason for hiding this comment

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

In general looks good, just a few comments here and there. I see there are still some missing pieces, so I will refrain to approve until everything is in place.

app/components/channel_list/categories/header/index.tsx Outdated Show resolved Hide resolved
app/components/channel_list/index.tsx Outdated Show resolved Hide resolved
app/components/channel_list/index.tsx Outdated Show resolved Hide resolved
app/components/channel_list/search/index.tsx Show resolved Hide resolved
Copy link
Contributor

@larkox larkox left a comment

Choose a reason for hiding this comment

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

Some more comments from my side. Mostly nitpicks.

app/components/button/index.tsx Outdated Show resolved Hide resolved
app/components/button/index.tsx Outdated Show resolved Hide resolved

const theme = useTheme();

const buttonStyles = [
Copy link
Contributor

Choose a reason for hiding this comment

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

Should we memo these somehow to avoid rerenders? My first approach would be a state variable that is updated with useEffect.

app/components/channel_list/header/index.tsx Outdated Show resolved Hide resolved
app/components/channel_list/search/index.tsx Outdated Show resolved Hide resolved
app/components/compass_icon/index.tsx Outdated Show resolved Hide resolved
@Rina-dsg
Copy link

@SHAZM is it ready for UX review?

@shaz-r shaz-r changed the title Mm 38682 gekidou homepage MM-38682: Gekidou Homepage (Static) Oct 18, 2021
@shaz-r shaz-r added 2: UX Review Requires review by a UX Designer Do Not Merge Should not be merged until this label is removed and removed Do Not Merge/Awaiting PR Awaiting another pull request before merging (e.g. server changes) release-note labels Oct 18, 2021
@matthewbirtch
Copy link
Contributor

matthewbirtch commented Oct 29, 2021

@matthewbirtch - pushed an update that switches between categories and the error view when you click the main team header. Will add the chevron now, apologies I actually missed it.

@enahum - clicking the threads button will navigate you to the channel screen for ease of development.

Thanks @SHAZM looks good. Thanks for adding the chevron to the team name and the other updates.

Two comments:

  • The empty state be vertically centered within the available space?

  • Also, I'm thinking the 'Find Channels' input maybe shouldn't show while the team is loading or if the team fails to load.
  • And lastly, for the plus button in the top-right of the design, will that be added later or should it be a part of this PR?
    image

@shaz-r shaz-r added the Build Apps for PR Build the mobile app for iOS and Android to test label Nov 2, 2021
@mattermod mattermod removed the Build Apps for PR Build the mobile app for iOS and Android to test label Nov 2, 2021
@mattermod
Copy link
Contributor

Building app in separate branch.

@mattermod
Copy link
Contributor

@shaz-r
Copy link
Contributor Author

shaz-r commented Nov 2, 2021

@matthewbirtch - pushed an update that switches between categories and the error view when you click the main team header. Will add the chevron now, apologies I actually missed it.
@enahum - clicking the threads button will navigate you to the channel screen for ease of development.

Thanks @SHAZM looks good. Thanks for adding the chevron to the team name and the other updates.

Two comments:

  • The empty state be vertically centered within the available space?
  • Also, I'm thinking the 'Find Channels' input maybe shouldn't show while the team is loading or if the team fails to load.
  • And lastly, for the plus button in the top-right of the design, will that be added later or should it be a part of this PR?
    image

Updated -

  • Error content is vertically centered
  • No search bar when Error is shown
  • Top right + icon added

Copy link
Contributor

@matthewbirtch matthewbirtch left a comment

Choose a reason for hiding this comment

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

@SHAZM thanks for resolving these things. Looks good to me! I might need to view some things again when everything is hooked up, but I think this is in great shape to merge

@matthewbirtch
Copy link
Contributor

One question: are we able to change the color of the status bar? It's not legible on a dark background

image

@shaz-r
Copy link
Contributor Author

shaz-r commented Nov 2, 2021

One question: are we able to change the color of the status bar? It's not legible on a dark background

image

Yes we are - I think one I'll do separately but I'll add a @to-do in now so I don't forget. @enahum I'll resolve the conflicts and I think it should be good to merge 👍

@enahum
Copy link
Contributor

enahum commented Nov 2, 2021

The status bar should be already resolved, have you merged the latest gekidou branch?

@shaz-r shaz-r force-pushed the MM-38682-Gekidou-Homepage branch from a6ffbf0 to 7f8a03c Compare November 3, 2021 01:21
@shaz-r
Copy link
Contributor Author

shaz-r commented Nov 3, 2021

The status bar should be already resolved, have you merged the latest gekidou branch?

Just did - had a few conflicts and changes to run through but it all looks good 👍

@shaz-r shaz-r removed Do Not Merge Should not be merged until this label is removed 2: UX Review Requires review by a UX Designer labels Nov 3, 2021
@enahum
Copy link
Contributor

enahum commented Nov 3, 2021

@SHAZM still some conflicts... will start the review now

app/components/compass_icon/index.tsx Outdated Show resolved Hide resolved
app/components/server_icon/server_icon.tsx Outdated Show resolved Hide resolved
<CompassIcon
size={24}
name='server-variant'
color={changeOpacity(theme.buttonColor, 0.56)}
Copy link
Contributor

Choose a reason for hiding this comment

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

did we try this with the Quartz theme, I'm not sure this color fits that theme based on my previous tests switching themes.

FYI: @Rina-dsg

app/screens/home/channel_list/index.tsx Show resolved Hide resolved
@@ -104,15 +105,23 @@ export const buttonBackgroundStyle = (
disabled: {
default: {
backgroundColor: changeOpacity(theme.centerChannelColor, 0.08),
borderColor: changeOpacity(theme.centerChannelColor, 0.32),
Copy link
Contributor

Choose a reason for hiding this comment

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

I couldn't add a comment on line 68, but I believe primary buttons do not have a border even when they are focused, is that right @matthewbirtch ?

Copy link
Contributor Author

@shaz-r shaz-r Nov 3, 2021

Choose a reason for hiding this comment

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

Whoops no - you're right; I think this was a copy/paste fail for the disabled state - I'll fix up. The Primary/Default/Focus does have a border in the Figma file: https://www.figma.com/file/2uYWxjnMJ9IQDOba9b9bfV/%E2%9C%85Components---Buttons?node-id=1%3A184

ios/Podfile.lock Show resolved Hide resolved
@shaz-r
Copy link
Contributor Author

shaz-r commented Nov 4, 2021

I've gone through the review / feedback:

  • All imports that have @app have been updated
  • Various fixes for styles, snapshots, code correctness
  • ChannelListItem feedback I've noted to address in MM-38765
  • I've replied to some comments as well that wasn't direct feedback

@enahum enahum removed the request for review from Rina-dsg November 4, 2021 11:55
@enahum enahum removed the request for review from avinashlng1080 November 4, 2021 13:32
@enahum enahum added the 4: Reviews Complete All reviewers have approved the pull request label Nov 4, 2021
@enahum enahum merged commit 1c1d0e3 into gekidou Nov 4, 2021
@enahum enahum deleted the MM-38682-Gekidou-Homepage branch November 4, 2021 13:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
4: Reviews Complete All reviewers have approved the pull request release-note
Projects
None yet
Development

Successfully merging this pull request may close these issues.

10 participants