-
Notifications
You must be signed in to change notification settings - Fork 3k
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
[HOLD for payment 2024-06-13] [$250] [Uneven Splits] [Polish] - User profile opens every time the cursor is dragged outside input and released #41803
Comments
Triggered auto assignment to @deetergp ( |
👋 Friendly reminder that deploy blockers are time-sensitive ⏱ issues! Check out the open Staging deploy checklist to see the list of PRs included in this release, then work quickly on the following:
Remember rule #2: Never un-assign yourself from a real DeployBlocker unless you are 100% sure someone else is assigned and will take care of it. |
👋 Friendly reminder that deploy blockers are time-sensitive ⏱ issues! Check out the open `StagingDeployCash` deploy checklist to see the list of PRs included in this release, then work quickly to do one of the following:
|
@deetergp FYI I haven't added the External label as I wasn't 100% sure about this issue. Please take a look and add the label if you agree it's a bug and can be handled by external contributors |
We think that this bug might be related to #vip-split |
cc @youssef-lr but I think we can remove the blocker on this one. Seems extremely minor. |
Triggered auto assignment to @muttmuure ( |
Hm I think it's a bit annoying for sure, but not blocker worthy. |
Seems to be triggered from the |
ProposalPlease re-state the problem that we are trying to solve in this issue.User profile opens every time the cursor is dragged outside input and released What is the root cause of that problem?We don't have a way to to manage the state of mouse interactions across components. This is the first time we have an Input inside an interactive component What changes do you think we should make in order to solve the problem?I tested We can solve this by using React Context to manage the state of mouse interactions across components. 1. Create a ContextFirst, we will need to create a new context that will hold the mouse state and provide handlers to set this state. import React, { createContext, useContext, useState } from 'react';
// Create a context with default values and handlers
const MouseContext = createContext({
isMouseDownOnInput: false,
setMouseDown: () => {},
setMouseUp: () => {}
});
// Context provider component
export const MouseProvider = ({ children }) => {
const [isMouseDownOnInput, setIsMouseDownOnInput] = useState(false);
const setMouseDown = () => setIsMouseDownOnInput(true);
const setMouseUp = () => setIsMouseDownOnInput(false);
return (
<MouseContext.Provider value={{ isMouseDownOnInput, setMouseDown, setMouseUp }}>
{children}
</MouseContext.Provider>
);
};
// Custom hook to use the mouse context
export const useMouseContext = () => useContext(MouseContext); 2. Wrap the Component Tree with the ProviderWrap the import { MouseProvider } from './MouseContext';
function App() {
return (
<MouseProvider>
//... rest of the code
</MouseProvider>
);
} 3. Use Context in
|
Job added to Upwork: https://www.upwork.com/jobs/~01ac128a48bb83d037 |
Triggered auto assignment to Contributor-plus team member for initial proposal review - @c3024 ( |
Current assignee @youssef-lr is eligible for the choreEngineerContributorManagement assigner, not assigning anyone new. |
📣 @c3024 🎉 An offer has been automatically sent to your Upwork account for the Reviewer role 🎉 Thanks for contributing to the Expensify app! |
📣 @dragnoir You have been assigned to this job! |
@youssef-lr, @dragnoir, @muttmuure, @c3024 Huh... This is 4 days overdue. Who can take care of this? |
@dragnoir update on PR? |
will be ready today |
|
The solution for this issue has been 🚀 deployed to production 🚀 in version 1.4.79-11 and is now subject to a 7-day regression period 📆. Here is the list of pull requests that resolve this issue: If no regressions arise, payment will be issued on 2024-06-13. 🎊 For reference, here are some details about the assignees on this issue:
|
BugZero Checklist: The PR fixing this issue has been merged! The following checklist (instructions) will need to be completed before the issue can be closed:
|
This is a new feature and this bug is specific for Web browsers/Desktop. No specific PR can be held responsible for this bug.
This is a specific case of mouse dragging on one element perceived as click in another element. This is an uncommon bug and a discussion on the channel does not appear to be useful.
Regression Test Proposal
|
@muttmuure this is up for payment. Thanks! |
@youssef-lr, @dragnoir, @muttmuure, @c3024 Eep! 4 days overdue now. Issues have feelings too... |
Paid |
If you haven’t already, check out our contributing guidelines for onboarding and email contributors@expensify.com to request to join our Slack channel!
Version Number: 1.4.71-0
Reproducible in staging?: Y
Reproducible in production?: N
If this was caught during regression testing, add the test name, ID and link from TestRail: N/A
Issue reported by: Applause - Internal Team
Action Performed:
Expected Result:
User profile will not open
Actual Result:
User profile opens every time the cursor is dragged outside the input and released
Workaround:
Unknown
Platforms:
Which of our officially supported platforms is this issue occurring on?
Screenshots/Videos
Add any screenshot/video evidence
Bug6474144_1715107859081.bandicam_2024-05-08_02-46-31-551.mp4
View all open jobs on GitHub
Upwork Automation - Do Not Edit
Issue Owner
Current Issue Owner: @muttmuureThe text was updated successfully, but these errors were encountered: