musescore / musescore/MuseScore

Text frames do not accept "special characters" until subsequent edit

Open
#25,696 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

P2 UX/interaction
Dominant language
C++
Stars
15.1k
Forks
3.3k
Avg merge
2d 2h
Merged PRs (30d)
91

Description

Issue type

UX/Interaction bug (incorrect behaviour)

Description with steps to reproduce
  1. Add a text frame to a score
  2. Double click it to edit
  3. Press Shift+F2 to open Special characters
  4. Click copyright symbol (or any non-musical symbol)

Result: symbol is not entered. I see some messages printed to console: "EngravingFont::draw | invalid sym: 2975", suggesting it is trying to add the symbols from the music font instead of the text font. And sure enough, music symbols work.

From that point:

  1. Enter some normal text
  2. Press Esc
  3. Double click the text to edit it again
  4. Press Shift+F2 again
  5. Click copyright symbol again

Now it works. So the issue seems to be that until you've actually entered some text, the code doesn't "know" it is editing text. It has also been reported that while in that messed-up state, Alt+Num+0169 on Windows doesn't work either and gives you an error about no note or rest selected.

Supporting files, videos and screenshots

Screen recording 2024-12-01 10.25.20 AM.webm

What is the latest version of MuseScore Studio where this issue is present?

OS: Debian GNU/Linux 12 (bookworm), Arch.: x86_64, MuseScore Studio version (64-bit): 4.4.4-243360404, revision: github-musescore-musescore-d99f6ab

Regression

No.

Operating system

Debian 12

Additional context

Surprisingly to me, this was also broken in MU3 but apparently went unnoticed.

Checklist
  • This report follows the guidelines for reporting bugs and issues
  • I have verified that this issue has not been logged before, by searching the issue tracker for similar issues
  • I have attached all requested files and information to this report
  • I have attempted to identify the root problem as concisely as possible, and have used minimal reproducible examples where possible

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the text-frame workflow with Shift+F2 and compare the first symbol insertion with insertion after normal text has been entered. Trace the text-editing and special-character entry path, including the reported EngravingFont::draw message; done means symbols work immediately in a newly created text frame without console errors or incorrect selection errors.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
desktop
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Clearly specified
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.