-
Notifications
You must be signed in to change notification settings - Fork 2.9k
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
Fixed : One of the popup modal options is highlighted by default #8581
Conversation
@metehanozyurt Please add video recordings. |
Of course , I do it immediately . I would have a few questions. |
add video records all platform and for web and desktop make slow motion records too. Thank you @Santhosh-Sellavel for guiding me with your comments 🙏. |
@metehanozyurt |
I upload new videos and wrote all steps @Santhosh-Sellavel thank you 🙏 . fullscreen versions : when user online request money comes : I would like to report this situation on the Slack channel, if you have permission. Thank you. |
@metehanozyurt you can report it on slack, if you are not on slack. To request an invite to the channel, just email contributors@expensify.com with the subject Slack Channel Invite and include a link to your Upwork profile. |
Thank you @Santhosh-Sellavel . I also tested this button, you can see it in the videos. Kind regards. |
@metehanozyurt |
@metehanozyurt Screen.Recording.2022-04-13.at.1.42.40.AM.mov |
@Santhosh-Sellavel i am so sorry . I guess my eyes couldn't distinguish because these buttons are colored. I'm looking into the cause right now. |
this file cause problem for call icons. App/src/components/Popover/index.js Lines 36 to 37 in 1814323
to like this animationIn={props.isSmallScreenWidth ? undefined : 'fadeIn'}
animationOut={props.isSmallScreenWidth ? undefined : 'fadeOut'} I would like to research if any other components uses it before I change it, if you see fit. |
Yes, please check! |
I done my research. my results is as follows. Popover/index.js used by many components. Popover/index.js uses by this components
PopoverWithMeasuredContent.js uses by this components
BasePopoverMenu.js uses by this components
ConclusionI think it will increase the complexity of the sample code I suggested above. Instead, I think we should give the fadeIn and fadeOut parameters on the VideoChatButtonAndMenu.js file. In the code fragments below, you can see that these parameters are not set on small screens. App/src/components/Popover/index.js Lines 36 to 37 in 1814323
And App/src/components/Popover/index.js Lines 20 to 21 in 1814323
I had to expand the solution method that I mentioned in my proposal. Because this was an issue I encountered while shooting screen videos. |
I am fine with both the above solution or this solution
@metehanozyurt What's the complexity here? |
That's why I think of it as complexity. It is already ignored on small screens. We also set it for big screens. That's why I was wondering if it should be given directly on the page. I was worried that the developer who would look at the code next to me would think that it would make more sense to change it on the page. According to the decision of you managers, I can act in that way @Santhosh-Sellavel 🙏 . I am very happy with what I have learned from you 🙏 . |
I made a change on the page for the reason I mentioned above. If you don't see fit, I'd be happy to change it. Thank you @Santhosh-Sellavel . Video records all platforms after this changed: call-button-web-desktop.mp4ios native and mWeb: ios-and-ios-mweb.mp4android native and mWeb: call-button-android-mweb.mp4 |
What's your thought on this #8581 (comment) |
Well, I'm not sure the context. Why do we need to add a default animation? Can we just pass the If it makes sense to add these default animations, we should inject them as default props rather than inline in the component. |
@metehanozyurt Can we do this? |
Of course i will do it like this way @Santhosh-Sellavel . I just want to make sure I understand correctly. I don't want to make angry anyone. I will remove these lines: App/src/components/ThreeDotsMenu/index.js Lines 97 to 98 in ff3625f
App/src/components/VideoChatButtonAndMenu.js Lines 135 to 136 in 0d1ec3d
App/src/components/AvatarWithImagePicker.js Lines 223 to 224 in 2b7d6d0
App/src/components/ButtonWithMenu.js Lines 85 to 86 in 6803d00
App/src/pages/home/report/ReportActionCompose.js Lines 452 to 453 in 16b130b
App/src/components/Popover/index.js Lines 20 to 21 in 1814323
App/src/components/Popover/index.js Lines 36 to 37 in 1814323
This one stay like this revert my change: App/src/components/PopoverMenu/index.js Line 23 in 1814323
Already fadeIn and fadeOut default props in here so i will not do anything this for this file: App/src/components/PopoverMenu/popoverMenuPropTypes.js Lines 55 to 56 in 1814323
I will change this file like this: App/src/components/Popover/popoverPropTypes.js Lines 17 to 22 in 3a58a6e
const defaultProps = {
...(_.omit(defaultModalProps, ['type', 'popoverAnchorPosition'])),
animationIn: 'fadeIn',
animationOut: 'fadeOut',
// Anchor position is optional only because it is not relevant on mobile
anchorPosition: {},
disableAnimation: true,
}; |
@metehanozyurt Looks good, please verify that it doesn’t break any existing behavior, Thanks! |
@metehanozyurt Test's well. update the video in the PR. |
PR Reviewer Checklist
|
Updated all platform videos on PR @Santhosh-Sellavel . Thanks. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM Tests well!
✋ This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release. |
🚀 Cherry-picked to staging by @sketchydroide in version: 1.1.57-8 🚀
@Expensify/applauseleads please QA this PR and check it off on the deploy checklist if it passes. |
🚀 Deployed to production by @chiragsalian in version: 1.1.57-17 🚀
|
Details
One of the popup modal options is highlighted by default, issue fixed
Fixed Issues
$ #8133
Tests
1-) Open Expensify App.
2-) Go to any user chat click on ➕ ,
3-) Go to any user chat click call button (up right on screen) ,
4-) When two users online request money to another one and click pay button and click arrow button like in this picture below,
5-) Go to Settings -> Profile -> Click on camera icon
6-) Go to Settings -> Workspace -> General Settings -> Click on camera icon to change picture
7-) Go to Settings -> Workspace -> Click tree dots button (up right on screen)
8-) Should not any item highlighted when open popover menu
pay button:
PR Review Checklist
Contributor (PR Author) Checklist
### Fixed Issues
section aboveTests
sectionQA steps
sectiontoggleReport
and notonIconClick
)src/languages/*
filesSTYLE.md
) were followedAvatar
, I verified the components usingAvatar
are working as expected)/** comment above it */
displayName
propertythis
properly so there are no scoping issues (i.e. foronClick={this.submit}
the methodthis.submit
should be bound tothis
in the constructor)this
are necessary to be bound (i.e. avoidthis.submit = this.submit.bind(this);
ifthis.submit
is never passed to a component event handler likeonClick
)StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG
)Avatar
is modified, I verified thatAvatar
is working as expected in all cases)PR Reviewer Checklist
### Fixed Issues
section aboveTests
sectionQA steps
sectiontoggleReport
and notonIconClick
).src/languages/*
filesSTYLE.md
) were followed/** comment above it */
displayName
propertythis
properly so there are no scoping issues (i.e. foronClick={this.submit}
the methodthis.submit
should be bound tothis
in the constructor)this
are necessary to be bound (i.e. avoidthis.submit = this.submit.bind(this);
ifthis.submit
is never passed to a component event handler likeonClick
)StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG
)Avatar
is modified, I verified thatAvatar
is working as expected in all cases)QA Steps
1-) Open Expensify App.
2-) Go to any user chat click on ➕ ,
3-) Go to any user chat click call button (up right on screen) ,
4-) When two users online request money to another one and click pay button and click arrow button like in this picture below,
5-) Go to Settings -> Profile -> Click on camera icon
6-) Go to Settings -> Workspace -> General Settings -> Click on camera icon to change picture
7-) Go to Settings -> Workspace -> Click tree dots button (up right on screen)
8-) Should not any item highlighted when open popover menu
pay button:
Screenshots
Web
web-2022-04-30.mp4
Mobile Web
ios-web-2022-04-30.mp4
android-Web-2022-04-30.mp4
Desktop
desktop-2022-04-30.mp4
iOS
ios-Native-2022-04-30.mp4
Android
android-native-2022-04-30.mp4