Skip to content

[Tracking] Fix Composer Component Focus Issues #15992

Description

@bondydaa

Proposal

There have been a few threads where these discussions happened (Expenisfy internal slack discussion) https://expensify.slack.com/archives/C03U7DCU4/p1673042523102459?thread_ts=1672788778.947399&cid=C03U7DCU4

and here in the external slack https://expensify.slack.com/archives/C01GTK53T8Q/p1671056016060879

I believe the final place we landed was

give focus back to the composer input AND allow the software keyboard to be shown at the same time

Ultimately what we want to do is stop trying to continually patch the existing code as we've sort of gotten into a bad spot with it. The goal of this is to start with a blank canvas and come up with a plan on how we want the composer component and the focus/blur interactions to work as if it didn't exist yet.

Once we have the overall design we desire we can then see how the current code fits with it, if it needs to be rewritten then we'll do that, if we can just tweak the existing code and get it to work then we can do that.

Tasks

  • Post Proposal (full Problem/Solution statement) in #expensify-open-source
  • Wait at least one full business day, and until the post has a majority (2/3) of positive reactions (👍)
  • Paste Proposal in the space above with a link to the Slack thread
  • Email strategy@expensify.com and paste in the Proposal
  • Fill out the High-level overview of the problem, Timeline, and Terminology sections of the Design Doc
  • Email strategy@expensify.com (continue the same email chain as before) with the link to your Design Doc
  • Host a pre-design meeting (example) in #expensify-open-source to discuss any necessary details in public before filling out the High-level of proposed solution section.
  • Fill out the High-level of proposed solution section
  • Email stategy@expensify.com again with links to the doc and pre-design conversation in Slack
  • Add the DesignDocReview label to get the High-level of proposed solution section reviewed
  • Respond to any questions or concerns and bring up blockers in Slack to get a consensus if necessary
  • Confirm that the doc has the minimum necessary number of reviews before proceeding
  • Host another pre-design meeting in #expensify-open-source to ask for engineering feedback on the technical solution.
  • Fill out the Detailed implementation of the solution and related sections.
  • Re-add the DesignDocReview label to this issue
  • Respond to any questions or concerns and bring up blockers in Slack to get consensus if necessary
  • Confirm that the doc has the minimum necessary number of reviews before proceeding
  • Email strategy@expensify.com one last time to let them know the Design Doc is moving into the implementation phase
  • Implement the changes
  • Send out a follow up email to strategy@expensify.com once everything has been implemented and do a Project Wrap-Up retrospective that provides:
    • Summary of what we accomplished with this project
    • What went well?
    • What could we have done better?
    • What did we learn?

Related Issues (Please add any new issues as they are reported) N.B. - closing some until this is picked up.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions