Right double quote behaving differently in IOS 14 when word wrapping

Hi!

We noticed that the character Right Double Quotation Mark (u+201d) is behaving differently in IOS 14 than in earlier IOS versions when using lineBreakMode = .byWordWrapping.

When wrapping the phrase "”text in a quote”" the "”" and "text" is separated in IOS 14, which might leave the starting quotation mark at the end of a line, which is not the case in IOS 13.

The character Quotation Mark (u+22) behaves as expected and consistent in both IOS 14 and IOS 13.

Is there a way to include characters to word boundaries, or a setting we might have missed?

Actual:

This is a text with a quote: ”
text in a quote”

Expected 1:

This is a text with a quote:
”text in a quote”

Expected 2:

This is a text with a quote: ”text
in a quote”

Answered by OOPer in 635925022

Is there a way to include characters to word boundaries, or a setting we might have missed?

As far as I know, there are no such settings.


By the way, Right Double Quotation Mark (u+201d)  is intended to paired with Left Double Quotation Mark (u+201c).
With replacing the left double quote to U+201C, you can see something like this:

This is a text with a quote:
“text in a quote” 

In my opinion, this seems to be the right behavior, and the wrong behavior in older iOS versions is fixed in iOS 14.


Anyway, if this change is harmful for your app, you should send a feedback to Apple.

Until some solution is found, you may need to pre-process the text before it is broken into words by iOS.
Accepted Answer

Is there a way to include characters to word boundaries, or a setting we might have missed?

As far as I know, there are no such settings.


By the way, Right Double Quotation Mark (u+201d)  is intended to paired with Left Double Quotation Mark (u+201c).
With replacing the left double quote to U+201C, you can see something like this:

This is a text with a quote:
“text in a quote” 

In my opinion, this seems to be the right behavior, and the wrong behavior in older iOS versions is fixed in iOS 14.


Anyway, if this change is harmful for your app, you should send a feedback to Apple.

Until some solution is found, you may need to pre-process the text before it is broken into words by iOS.
Thank you for your input! It makes sense when you think of it as a left and right pair as you say.
Actually, I'm not convinced this statement is true, the rules where to use what kind seems to differ based on language and I cannot find any information about characters needing any special sequence.

Swedish language, for instance, use only right for both sides, so the wrapping logic should not assume there would be a pair.

By the way, Right Double Quotation Mark (u+201d) is intended to paired with Left Double Quotation Mark (u+201c).

For languages that use right double quotation mark at both ends of the quote, make sure that your app language settings are correct. If language settings are correct, iOS 14 wraps the words correctly even with right double quotation marks at both ends.

I fixed the problem in a React Native app by setting CFBundleDevelopmentRegion to correct value (fi in my case).

This is still a thing in iOS 18.2 for some reason. As ”you” can see here.

When the quotation starts in front of a word that will be moved to a new line since there’s no more room, the first quotation mark stays at the previous line while the word being quotation jumps to the next line. I cannot see why this would be the intended behavior since I don’t remember this being a thing before some iOS versions ago.

Aha. I’ve now confirmed this behavior is due to the iOS being set to English and me typing in Swedish. If I set iOS to Swedish it behaves as expected.

I think it would make more sense if the formatting followed the keyboard layout currently in use rather than the language set in iOS.

Right double quote behaving differently in IOS 14 when word wrapping
 
 
Q