In the latest version of Unicode, many more emoji are allowed to join. Instead of checking each individual range, we should just check to see if the character is: U+2640 FEMALE SIGN U+2642 MALE SIGN U+26F9 PERSON WITH BALL U+2695 STAFF OF AESCULAPIUS U+2696 SCALES U+2708 AIRPLANE U+2764 HEAVY BLACK HEART The Unicode block is UBLOCK_MISCELLANEOUS_SYMBOLS_AND_PICTOGRAPHS The Unicode block is UBLOCK_EMOTICONS The Unicode block is UBLOCK_TRANSPORT_AND_MAP_SYMBOLS The Unicode block is UBLOCK_SUPPLEMENTAL_SYMBOLS_AND_PICTOGRAPHS Alternatively, instead of checking individual code points at all, we may wish to simply check if the block is UBLOCK_MISCELLANEOUS_SYMBOLS or UBLOCK_DINGBATS
<rdar://problem/30484020>
Created attachment 301369 [details] Patch
Created attachment 301370 [details] Patch
Created attachment 301423 [details] Patch
Comment on attachment 301423 [details] Patch Attachment 301423 [details] did not pass ios-sim-ews (ios-simulator-wk2): Output: http://webkit-queues.webkit.org/results/3082376 New failing tests: editing/deleting/delete-emoji.html
Created attachment 301432 [details] Archive of layout-test-results from ews126 for ios-simulator-wk2 The attached test failures were seen while running run-webkit-tests on the ios-sim-ews. Bot: ews126 Port: ios-simulator-wk2 Platform: Mac OS X 10.11.6
Created attachment 301467 [details] Patch
Comment on attachment 301467 [details] Patch Clearing flags on attachment: 301467 Committed r213499: <http://trac.webkit.org/changeset/213499>
All reviewed patches have been landed. Closing bug.
Hey Myles, the ICU_HEADERS_UNDERSTAND_SUPPLEMENTAL_SYMBOLS_AND_PICTOGRAPHS case is missing a return statement when if (useSupplementalSymbolsAndPictographs) is false! Bad! [3479/5652] Building CXX object Source...ir/platform/graphics/FontCascade.cpp.o In file included from ../../Source/WebCore/platform/graphics/FontCascade.cpp:27:0: ../../Source/WebCore/platform/text/CharacterProperties.h: In function ‘bool WebCore::isEmojiGroupCandidate(UChar32)’: ../../Source/WebCore/platform/text/CharacterProperties.h:62:1: warning: control reaches end of non-void function [-Wreturn-type] } ^ [3483/5652] Building CXX object Source...m/graphics/ComplexTextController.cpp.o In file included from ../../Source/WebCore/platform/graphics/ComplexTextController.cpp:28:0: ../../Source/WebCore/platform/text/CharacterProperties.h: In function ‘bool WebCore::isEmojiGroupCandidate(UChar32)’: ../../Source/WebCore/platform/text/CharacterProperties.h:62:1: warning: control reaches end of non-void function [-Wreturn-type] } ^ [3746/5652] Building CXX object Source...WebCore.dir/rendering/RenderText.cpp.o In file included from ../../Source/WebCore/rendering/RenderText.cpp:31:0: ../../Source/WebCore/platform/text/CharacterProperties.h: In function ‘bool WebCore::isEmojiGroupCandidate(UChar32)’: ../../Source/WebCore/platform/text/CharacterProperties.h:62:1: warning: control reaches end of non-void function [-Wreturn-type] } ^ Problem is... they seem bogus.
(In reply to comment #10) > Problem is... they seem bogus. Whoops, I meant to delete that bit of the comment. I at first got confused and didn't notice the problem.
litherum: mcatanzaro: the #else should be changed to an #endif
Created attachment 303819 [details] Patch
Comment on attachment 303819 [details] Patch Clearing flags on attachment: 303819 Committed r213616: <http://trac.webkit.org/changeset/213616>