microsoft / microsoft/calculator
MathML buildup broken when editing an equation and adding parenthesis
Nobody has claimed this yet.
- Dominant language
- C#
- Stars
- 31.1k
- Forks
- 5.8k
- PR merge metrics
- No merged PRs in 30d
Description
Summary
Rich editing for exponents becomes broken following a close parenthesis when parentheses are added later while input an equation
Repro Steps
- Launch calculator in graphing mode.
- In a function data entry field, start to input an equation such as: x^2+y^2−1. To input an exponent: press [Shift] + [6] > press exponent number of choice > then press spacebar
- Add an open parenthesis in front of the x: (x2+y2−1
- Add a closed parenthesis in behind the 1: (x2+y2−1)
- Add an exponent to closed parenthesis
- Observe the exponent
Observed results
The rich text edited version of the exponent is not added to the closed parenthesis. As the function is written out more, the rich text version any additional exponents is broken as well.
E.g. (x2+y2−1)^3 -x^2 y^3 = 0
Expected results
E.g.

Note
Exponents might be a red herring. I think it has to do with the adding parenthesis after the fact
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Reproduce the steps in the graphing-mode function data entry field, focusing on adding parentheses after an equation already contains exponents. Inspect the rich-text or MathML editing path reached by that field; done means the exponent remains attached to the closed parenthesis and later exponents continue to render correctly, as shown by the expected result.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- csharp
- Domain
- desktop, frontend
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 42/100