Project: chromium Issues People Development process History Sign in
New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.
Issue 605840 CSS hyphens property
Starred by 181 users Project Member Reported by kojii@chromium.org, Apr 22 2016 Back to list
Status: Fixed
Owner:
Closed: Oct 5
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux, Android, Windows, Chrome, Mac
Pri: 3
Type: Launch-OWP
Launch-Accessibility: NA
Launch-Legal: NotReviewed
Launch-M-Approved: ----
Launch-M-Target: 55-Dev, 55-Beta, 55-Stable
Launch-Privacy: NotReviewed
Launch-Security: NotReviewed
Launch-Status: Approval-Requested
Launch-Test: Yes
Launch-UI: NA


Sign in to add a comment
(See http://www.chromium.org/blink#launch-process for an overview)

Change description:
This CSS property controls automatic hyphenations. The automatic hyphenation is strongly demanded as seen in crbug.com/47083, and is already supported by all other major browsers.

Changes to API surface:
Add CSS hyphens property.

Links:
Public standards discussion:
https://drafts.csswg.org/css-text-3/#propdef-hyphens

Support in other browsers:
Internet Explorer: Shipped (with prefix)
Firefox: Shipped
Safari: Shipped (with prefix)

*Make sure to fill in any labels with a -?, including all OSes this change
affects. Feel free to leave other labels at the defaults.

 
Labels: -Launch-Accessibility-NotReviewed Launch-Accessibility-NA
Comment 2 by kojii@chromium.org, Apr 26 2016
Cc: e...@chromium.org estade@chromium.org mikelawther@chromium.org bsittler@chromium.org szager@chromium.org le...@chromium.org dglazkov@chromium.org kojii@chromium.org jochen@chromium.org
Issue 47083 has been merged into this issue.
Comment 3 by kojii@chromium.org, Apr 26 2016
Blockedon: 63283 63284 60895
Project Member Comment 4 by bugdroid1@chromium.org, Apr 27 2016
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/15c6e50b51e8da0393a001a03c50b38f51eb1c01

commit 15c6e50b51e8da0393a001a03c50b38f51eb1c01
Author: kojii <kojii@chromium.org>
Date: Wed Apr 27 03:55:05 2016

Add CSS hyphens property behind the test flag

This patch adds the CSS hyphens property behind the test flag.

This property was once added then removed in crbug.com/47083. The
member field in StyleRareInheritedData was not removed and and thus
changes to StyleRareInheritedData and ComputedStyle::diffNeeds* are
already in place.

BUG= 605840 

Review URL: https://codereview.chromium.org/1915343003

Cr-Commit-Position: refs/heads/master@{#389986}

[modify] https://crrev.com/15c6e50b51e8da0393a001a03c50b38f51eb1c01/third_party/WebKit/LayoutTests/fast/css/getComputedStyle/computed-style-listing-expected.txt
[modify] https://crrev.com/15c6e50b51e8da0393a001a03c50b38f51eb1c01/third_party/WebKit/LayoutTests/fast/css/getComputedStyle/computed-style-without-renderer-listing-expected.txt
[add] https://crrev.com/15c6e50b51e8da0393a001a03c50b38f51eb1c01/third_party/WebKit/LayoutTests/fast/text/hyphens/hyphens-parsing-001.html
[modify] https://crrev.com/15c6e50b51e8da0393a001a03c50b38f51eb1c01/third_party/WebKit/LayoutTests/svg/css/getComputedStyle-listing-expected.txt
[modify] https://crrev.com/15c6e50b51e8da0393a001a03c50b38f51eb1c01/third_party/WebKit/LayoutTests/webexposed/css-properties-as-js-properties-expected.txt
[modify] https://crrev.com/15c6e50b51e8da0393a001a03c50b38f51eb1c01/third_party/WebKit/Source/core/css/CSSComputedStyleDeclaration.cpp
[modify] https://crrev.com/15c6e50b51e8da0393a001a03c50b38f51eb1c01/third_party/WebKit/Source/core/css/CSSPrimitiveValueMappings.h
[modify] https://crrev.com/15c6e50b51e8da0393a001a03c50b38f51eb1c01/third_party/WebKit/Source/core/css/CSSProperties.in
[modify] https://crrev.com/15c6e50b51e8da0393a001a03c50b38f51eb1c01/third_party/WebKit/Source/core/css/CSSValueKeywords.in
[modify] https://crrev.com/15c6e50b51e8da0393a001a03c50b38f51eb1c01/third_party/WebKit/Source/core/css/ComputedStyleCSSValueMapping.cpp
[modify] https://crrev.com/15c6e50b51e8da0393a001a03c50b38f51eb1c01/third_party/WebKit/Source/core/css/parser/CSSParserFastPaths.cpp
[modify] https://crrev.com/15c6e50b51e8da0393a001a03c50b38f51eb1c01/third_party/WebKit/Source/core/frame/UseCounter.cpp
[modify] https://crrev.com/15c6e50b51e8da0393a001a03c50b38f51eb1c01/third_party/WebKit/Source/core/style/ComputedStyle.h
[modify] https://crrev.com/15c6e50b51e8da0393a001a03c50b38f51eb1c01/third_party/WebKit/Source/platform/RuntimeEnabledFeatures.in

Project Member Comment 5 by bugdroid1@chromium.org, Apr 27 2016
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/fd2a950bece1bebb0a576904af0855570ffcab8c

commit fd2a950bece1bebb0a576904af0855570ffcab8c
Author: kojii <kojii@chromium.org>
Date: Wed Apr 27 16:03:39 2016

Add CSS hyphens to histograms.xml

BUG= 605840 

Review-Url: https://codereview.chromium.org/1926493002
Cr-Commit-Position: refs/heads/master@{#390090}

[modify] https://crrev.com/fd2a950bece1bebb0a576904af0855570ffcab8c/tools/metrics/histograms/histograms.xml

Project Member Comment 6 by bugdroid1@chromium.org, Apr 28 2016
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/fb48debb85ab0c12492cf63d780602e15f284222

commit fb48debb85ab0c12492cf63d780602e15f284222
Author: kojii <kojii@chromium.org>
Date: Thu Apr 28 05:26:50 2016

Add Hyphenation class

This patch adds the Hyphenation class that abstracts hyphenation
dictionaries.

Actual implementation for each platform will be in following patches.

BUG= 605840 

Review-Url: https://codereview.chromium.org/1917423002
Cr-Commit-Position: refs/heads/master@{#390307}

[modify] https://crrev.com/fb48debb85ab0c12492cf63d780602e15f284222/third_party/WebKit/Source/platform/blink_platform.gyp
[modify] https://crrev.com/fb48debb85ab0c12492cf63d780602e15f284222/third_party/WebKit/Source/platform/blink_platform.gypi
[add] https://crrev.com/fb48debb85ab0c12492cf63d780602e15f284222/third_party/WebKit/Source/platform/text/Hyphenation.cpp
[add] https://crrev.com/fb48debb85ab0c12492cf63d780602e15f284222/third_party/WebKit/Source/platform/text/Hyphenation.h
[add] https://crrev.com/fb48debb85ab0c12492cf63d780602e15f284222/third_party/WebKit/Source/platform/text/HyphenationTest.cpp
[add] https://crrev.com/fb48debb85ab0c12492cf63d780602e15f284222/third_party/WebKit/Source/platform/text/android/HyphenationAndroid.cpp
[add] https://crrev.com/fb48debb85ab0c12492cf63d780602e15f284222/third_party/WebKit/Source/platform/text/linux/HyphenationLinux.cpp
[add] https://crrev.com/fb48debb85ab0c12492cf63d780602e15f284222/third_party/WebKit/Source/platform/text/mac/HyphenationMac.cpp
[add] https://crrev.com/fb48debb85ab0c12492cf63d780602e15f284222/third_party/WebKit/Source/platform/text/win/HyphenationWin.cpp

Comment 7 by js...@chromium.org, Apr 28 2016
Cc: -le...@chromium.org js...@chromium.org
Comment 8 by kojii@chromium.org, May 10 2016
Blockedon: 610791
Project Member Comment 9 by bugdroid1@chromium.org, May 13 2016
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/4fe1179928340ac685c0680a1e85a8fd79f72c40

commit 4fe1179928340ac685c0680a1e85a8fd79f72c40
Author: kojii <kojii@chromium.org>
Date: Fri May 13 16:53:47 2016

OSX: Allow to read "/System/Library/LinguisticData" in sandbox

The following hyphenation APIs requires to read files in
"/System/Library/LinguisticData".

- CFStringIsHyphenationAvailableForLocale
- CFStringGetHyphenationLocationBeforeIndex

BUG= 605840 

Review-Url: https://codereview.chromium.org/1973153003
Cr-Commit-Position: refs/heads/master@{#393554}

[modify] https://crrev.com/4fe1179928340ac685c0680a1e85a8fd79f72c40/content/renderer/renderer.sb

Project Member Comment 10 by bugdroid1@chromium.org, May 16 2016
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/52bb31c6d49c5376103577363720410994e55113

commit 52bb31c6d49c5376103577363720410994e55113
Author: kojii <kojii@chromium.org>
Date: Mon May 16 23:14:08 2016

Enable hyphens: auto and none in BreakingContext

This patch enables "hyphens: auto"[1] (automatic hyphenation using the
dictionaries) and "hyphens: no" (disables soft-hyphens for heading and
a11y) in BreakingContext, along with a mock hyphenation dictionary for
testing.

The code to support hyphenation in InlineTextBox, LayoutText,
LayoutTreeAsText, etc. were still there and reused in this code.

LayoutText::computePreferredLogicalWidths() needs to support the
"hyphens" property to compute the min-content width[2]. This will be in
following patches.

Platform support for dictionaries will also be in following patches.

Detailed control of hyphenation defined in CSS Text Level 4[3] is not
included in this phase.

[1] https://drafts.csswg.org/css-text-3/#hyphens-property
[2] https://drafts.csswg.org/css-sizing-3/#min-content
[3] https://drafts.csswg.org/css-text-4/#hyphenation

BUG= 605840 

Review-Url: https://codereview.chromium.org/1978683002
Cr-Commit-Position: refs/heads/master@{#393972}

[add] https://crrev.com/52bb31c6d49c5376103577363720410994e55113/third_party/WebKit/LayoutTests/fast/text/hyphens/hyphens-auto-mock-expected.html
[add] https://crrev.com/52bb31c6d49c5376103577363720410994e55113/third_party/WebKit/LayoutTests/fast/text/hyphens/hyphens-auto-mock.html
[add] https://crrev.com/52bb31c6d49c5376103577363720410994e55113/third_party/WebKit/LayoutTests/fast/text/hyphens/hyphens-locale-expected.html
[add] https://crrev.com/52bb31c6d49c5376103577363720410994e55113/third_party/WebKit/LayoutTests/fast/text/hyphens/hyphens-locale.html
[add] https://crrev.com/52bb31c6d49c5376103577363720410994e55113/third_party/WebKit/LayoutTests/fast/text/hyphens/hyphens-none-expected.html
[add] https://crrev.com/52bb31c6d49c5376103577363720410994e55113/third_party/WebKit/LayoutTests/fast/text/hyphens/hyphens-none.html
[modify] https://crrev.com/52bb31c6d49c5376103577363720410994e55113/third_party/WebKit/Source/core/core.gypi
[modify] https://crrev.com/52bb31c6d49c5376103577363720410994e55113/third_party/WebKit/Source/core/layout/line/BreakingContextInlineHeaders.h
[modify] https://crrev.com/52bb31c6d49c5376103577363720410994e55113/third_party/WebKit/Source/core/testing/Internals.cpp
[modify] https://crrev.com/52bb31c6d49c5376103577363720410994e55113/third_party/WebKit/Source/core/testing/Internals.h
[modify] https://crrev.com/52bb31c6d49c5376103577363720410994e55113/third_party/WebKit/Source/core/testing/Internals.idl
[add] https://crrev.com/52bb31c6d49c5376103577363720410994e55113/third_party/WebKit/Source/core/testing/MockHyphenation.cpp
[add] https://crrev.com/52bb31c6d49c5376103577363720410994e55113/third_party/WebKit/Source/core/testing/MockHyphenation.h
[modify] https://crrev.com/52bb31c6d49c5376103577363720410994e55113/third_party/WebKit/Source/platform/fonts/Font.cpp
[modify] https://crrev.com/52bb31c6d49c5376103577363720410994e55113/third_party/WebKit/Source/platform/fonts/Font.h
[modify] https://crrev.com/52bb31c6d49c5376103577363720410994e55113/third_party/WebKit/Source/platform/text/Hyphenation.cpp
[modify] https://crrev.com/52bb31c6d49c5376103577363720410994e55113/third_party/WebKit/Source/platform/text/Hyphenation.h
[modify] https://crrev.com/52bb31c6d49c5376103577363720410994e55113/third_party/WebKit/Source/platform/text/HyphenationTest.cpp

Project Member Comment 12 by bugdroid1@chromium.org, May 18 2016
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/4b8b22c704fa1474f7b6c032b98381cf650dfb59

commit 4b8b22c704fa1474f7b6c032b98381cf650dfb59
Author: kojii <kojii@chromium.org>
Date: Wed May 18 23:51:27 2016

Change CSSHyphens runtime flag to experimental

This patch changes CSSHyphens runtime flag from test to experimental.

BUG= 605840 

Review-Url: https://codereview.chromium.org/1992583003
Cr-Commit-Position: refs/heads/master@{#394607}

[modify] https://crrev.com/4b8b22c704fa1474f7b6c032b98381cf650dfb59/third_party/WebKit/Source/platform/RuntimeEnabledFeatures.in

Project Member Comment 13 by bugdroid1@chromium.org, May 19 2016
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/0561d33fae84b66b8e1c6e8f9a31dec2dcec697b

commit 0561d33fae84b66b8e1c6e8f9a31dec2dcec697b
Author: kojii <kojii@chromium.org>
Date: Thu May 19 16:30:04 2016

Compute correct min-content width when hyphenation is enabled

This patch computes the correct min-content width[1] when hyphenation
makes it shorter.

The basic logic is as same as the one removed in [2], but:
1. Updated to the current code base.
2. Shape with context, the same way as BreakingContext in [3].
3. Drop support for CSS Text Level 4 properties.

Unlike the line breaker which needs to find one hyphen location,
computing min-content needs to find all hyphen locations. A method to
get all hyphen locations in a word is added for platforms that can get
all hyphen locations at once.

[1] https://www.w3.org/TR/css-sizing-3/#min-content-inline-size
[2] https://crrev.com/20526006
[3] https://crrev.com/1978683002

BUG= 605840 

Review-Url: https://codereview.chromium.org/1994483002
Cr-Commit-Position: refs/heads/master@{#394791}

[add] https://crrev.com/0561d33fae84b66b8e1c6e8f9a31dec2dcec697b/third_party/WebKit/LayoutTests/fast/text/hyphens/hyphen-min-preferred-width-mock-expected.html
[add] https://crrev.com/0561d33fae84b66b8e1c6e8f9a31dec2dcec697b/third_party/WebKit/LayoutTests/fast/text/hyphens/hyphen-min-preferred-width-mock.html
[modify] https://crrev.com/0561d33fae84b66b8e1c6e8f9a31dec2dcec697b/third_party/WebKit/Source/core/layout/LayoutText.cpp
[modify] https://crrev.com/0561d33fae84b66b8e1c6e8f9a31dec2dcec697b/third_party/WebKit/Source/core/layout/line/BreakingContextInlineHeaders.h
[modify] https://crrev.com/0561d33fae84b66b8e1c6e8f9a31dec2dcec697b/third_party/WebKit/Source/platform/text/Hyphenation.cpp
[modify] https://crrev.com/0561d33fae84b66b8e1c6e8f9a31dec2dcec697b/third_party/WebKit/Source/platform/text/Hyphenation.h

Please put some energy in this issue.
Project Member Comment 15 by bugdroid1@chromium.org, Jul 14 2016
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/30add38fedb8b9bd44b931aa3adba40d7c79b929

commit 30add38fedb8b9bd44b931aa3adba40d7c79b929
Author: kojii <kojii@chromium.org>
Date: Thu Jul 14 02:10:32 2016

Add mojo interface to load hyphenation dictionaries on Android

This patch adds a mojo interface to load hyphenation dictionaries on
Android.

Calls to Minikin using the loaded dictionary files will be in following
patches.

BUG= 605840 

Review-Url: https://codereview.chromium.org/2113933003
Cr-Commit-Position: refs/heads/master@{#405405}

[modify] https://crrev.com/30add38fedb8b9bd44b931aa3adba40d7c79b929/build/common.gypi
[modify] https://crrev.com/30add38fedb8b9bd44b931aa3adba40d7c79b929/build/config/features.gni
[modify] https://crrev.com/30add38fedb8b9bd44b931aa3adba40d7c79b929/content/browser/BUILD.gn
[add] https://crrev.com/30add38fedb8b9bd44b931aa3adba40d7c79b929/content/browser/hyphenation/DEPS
[add] https://crrev.com/30add38fedb8b9bd44b931aa3adba40d7c79b929/content/browser/hyphenation/OWNERS
[add] https://crrev.com/30add38fedb8b9bd44b931aa3adba40d7c79b929/content/browser/hyphenation/hyphenation_impl.cc
[add] https://crrev.com/30add38fedb8b9bd44b931aa3adba40d7c79b929/content/browser/hyphenation/hyphenation_impl.h
[modify] https://crrev.com/30add38fedb8b9bd44b931aa3adba40d7c79b929/content/browser/renderer_host/render_process_host_impl.cc
[modify] https://crrev.com/30add38fedb8b9bd44b931aa3adba40d7c79b929/content/content_browser.gypi
[add] https://crrev.com/30add38fedb8b9bd44b931aa3adba40d7c79b929/third_party/WebKit/LayoutTests/fast/text/hyphens/can-hyphenate-locale-expected.txt
[add] https://crrev.com/30add38fedb8b9bd44b931aa3adba40d7c79b929/third_party/WebKit/LayoutTests/fast/text/hyphens/can-hyphenate-locale.html
[add] https://crrev.com/30add38fedb8b9bd44b931aa3adba40d7c79b929/third_party/WebKit/LayoutTests/platform/android/fast/text/hyphens/can-hyphenate-locale-expected.txt
[add] https://crrev.com/30add38fedb8b9bd44b931aa3adba40d7c79b929/third_party/WebKit/LayoutTests/platform/mac/fast/text/hyphens/can-hyphenate-locale-expected.txt
[modify] https://crrev.com/30add38fedb8b9bd44b931aa3adba40d7c79b929/third_party/WebKit/Source/core/testing/Internals.cpp
[modify] https://crrev.com/30add38fedb8b9bd44b931aa3adba40d7c79b929/third_party/WebKit/Source/core/testing/Internals.h
[modify] https://crrev.com/30add38fedb8b9bd44b931aa3adba40d7c79b929/third_party/WebKit/Source/core/testing/Internals.idl
[modify] https://crrev.com/30add38fedb8b9bd44b931aa3adba40d7c79b929/third_party/WebKit/Source/platform/BUILD.gn
[modify] https://crrev.com/30add38fedb8b9bd44b931aa3adba40d7c79b929/third_party/WebKit/Source/platform/DEPS
[modify] https://crrev.com/30add38fedb8b9bd44b931aa3adba40d7c79b929/third_party/WebKit/Source/platform/blink_platform.gypi
[delete] https://crrev.com/bffe4e6697fee85b62324719efd2d9409fcb9159/third_party/WebKit/Source/platform/text/android/HyphenationAndroid.cpp
[add] https://crrev.com/30add38fedb8b9bd44b931aa3adba40d7c79b929/third_party/WebKit/Source/platform/text/hyphenation/HyphenationMinikin.cpp
[modify] https://crrev.com/30add38fedb8b9bd44b931aa3adba40d7c79b929/third_party/WebKit/public/BUILD.gn
[modify] https://crrev.com/30add38fedb8b9bd44b931aa3adba40d7c79b929/third_party/WebKit/public/blink.gyp
[add] https://crrev.com/30add38fedb8b9bd44b931aa3adba40d7c79b929/third_party/WebKit/public/platform/modules/hyphenation/OWNERS
[add] https://crrev.com/30add38fedb8b9bd44b931aa3adba40d7c79b929/third_party/WebKit/public/platform/modules/hyphenation/hyphenation.mojom
[modify] https://crrev.com/30add38fedb8b9bd44b931aa3adba40d7c79b929/tools/metrics/histograms/histograms.xml

Project Member Comment 16 by bugdroid1@chromium.org, Jul 15 2016
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/bef46ab98172d9a935d37c7d04cfa14fc9657137

commit bef46ab98172d9a935d37c7d04cfa14fc9657137
Author: kojii <kojii@chromium.org>
Date: Fri Jul 15 18:43:14 2016

Add Minikin Hyphenation engine for Android

This patch adds the Minikin Hyphenation engine for Android. Dictionary
files loaded by [1] are passed to Minikin in this CL and used to
determine the hyphenation locations.

Two files are adopted from Minikin in Android Open Source Project[2],
in the similar way as we adopted MPL code[3].

With this patch, Android supports hyphenation behind the experimental
flag, following Mac[4].

Linux and Windows don't have built-in dictionaries. Supporting these
platforms will be later.

[1] https://crrev.com/2113933003
[2] https://android.googlesource.com/platform/frameworks/minikin/
[3] https://crrev.com/1882063002
[4] https://crrev.com/1994443002

BUG= 605840 

Review-Url: https://codereview.chromium.org/2149803004
Cr-Commit-Position: refs/heads/master@{#405802}

[modify] https://crrev.com/bef46ab98172d9a935d37c7d04cfa14fc9657137/third_party/WebKit/LayoutTests/TestExpectations
[modify] https://crrev.com/bef46ab98172d9a935d37c7d04cfa14fc9657137/third_party/WebKit/Source/platform/BUILD.gn
[modify] https://crrev.com/bef46ab98172d9a935d37c7d04cfa14fc9657137/third_party/WebKit/Source/platform/text/hyphenation/HyphenationMinikin.cpp
[add] https://crrev.com/bef46ab98172d9a935d37c7d04cfa14fc9657137/third_party/WebKit/Source/platform/text/hyphenation/HyphenatorAOSP.cpp
[add] https://crrev.com/bef46ab98172d9a935d37c7d04cfa14fc9657137/third_party/WebKit/Source/platform/text/hyphenation/HyphenatorAOSP.h

Project Member Comment 17 by bugdroid1@chromium.org, Jul 19 2016
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/60ffd3221a5bbfa8f78c36a1957a7af84e16a0e7

commit 60ffd3221a5bbfa8f78c36a1957a7af84e16a0e7
Author: kojii <kojii@chromium.org>
Date: Tue Jul 19 21:29:29 2016

Fix hyphenation for lang="de" and other fallback on Android

This patch fixes 3 issues for hyphenation to work on Android for
lang="de" and some other languages.

1. Android requires additional fallback mapping for "de" and some other
   languages.
2. ASCII digits must be a valid locale.
3. When fallback occurs from platformGetHyphenation(), HashMap fails
   to store the loaded dictionary when it calls get() recursively.

Also fallback list was changed to be lower case to avoid run-time
conversions.

BUG= 605840 

Review-Url: https://codereview.chromium.org/2163603002
Cr-Commit-Position: refs/heads/master@{#406384}

[modify] https://crrev.com/60ffd3221a5bbfa8f78c36a1957a7af84e16a0e7/content/browser/hyphenation/hyphenation_impl.cc
[modify] https://crrev.com/60ffd3221a5bbfa8f78c36a1957a7af84e16a0e7/third_party/WebKit/LayoutTests/fast/text/hyphens/can-hyphenate-locale-expected.txt
[modify] https://crrev.com/60ffd3221a5bbfa8f78c36a1957a7af84e16a0e7/third_party/WebKit/LayoutTests/fast/text/hyphens/can-hyphenate-locale.html
[modify] https://crrev.com/60ffd3221a5bbfa8f78c36a1957a7af84e16a0e7/third_party/WebKit/LayoutTests/platform/android/fast/text/hyphens/can-hyphenate-locale-expected.txt
[modify] https://crrev.com/60ffd3221a5bbfa8f78c36a1957a7af84e16a0e7/third_party/WebKit/LayoutTests/platform/mac/fast/text/hyphens/can-hyphenate-locale-expected.txt
[modify] https://crrev.com/60ffd3221a5bbfa8f78c36a1957a7af84e16a0e7/third_party/WebKit/Source/platform/text/Hyphenation.cpp
[modify] https://crrev.com/60ffd3221a5bbfa8f78c36a1957a7af84e16a0e7/third_party/WebKit/Source/platform/text/hyphenation/HyphenationMinikin.cpp

Project Member Comment 18 by bugdroid1@chromium.org, Aug 9 2016
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/58b52fa7122127737cf15c8dd952f443d9d8b667

commit 58b52fa7122127737cf15c8dd952f443d9d8b667
Author: kojii <kojii@chromium.org>
Date: Tue Aug 09 04:56:04 2016

Collect metrics for hyphenation dictionary

This patch is to collect metrics for hyphenation dictionary on Android
dev channel by always opening the dictionary in the line breaker.

This patch will be reverted after the branch so that it should not be
turned on for other channels.

BUG= 605840 

Review-Url: https://codereview.chromium.org/2188043004
Cr-Commit-Position: refs/heads/master@{#410574}

[modify] https://crrev.com/58b52fa7122127737cf15c8dd952f443d9d8b667/third_party/WebKit/Source/core/layout/line/BreakingContextInlineHeaders.h

Project Member Comment 19 by bugdroid1@chromium.org, Aug 16 2016
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/76f02d81beb5cf2a64306931740eb7ab5fa2b4e1

commit 76f02d81beb5cf2a64306931740eb7ab5fa2b4e1
Author: kojii <kojii@chromium.org>
Date: Tue Aug 16 11:54:30 2016

Revert of Collect metrics for hyphenation dictionary (patchset #4 id:80001 of https://codereview.chromium.org/2188043004/ )

Reason for revert:
Reverting as this experiment shipped in dev and we started to get the data.

Original issue's description:
> Collect metrics for hyphenation dictionary
>
> This patch is to collect metrics for hyphenation dictionary on Android
> dev channel by always opening the dictionary in the line breaker.
>
> This patch will be reverted after the branch so that it should not be
> turned on for other channels.
>
> BUG= 605840 
>
> Committed: https://crrev.com/58b52fa7122127737cf15c8dd952f443d9d8b667
> Cr-Commit-Position: refs/heads/master@{#410574}

TBR=eae@chromium.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG= 605840 

Review-Url: https://codereview.chromium.org/2244413003
Cr-Commit-Position: refs/heads/master@{#412216}

[modify] https://crrev.com/76f02d81beb5cf2a64306931740eb7ab5fa2b4e1/third_party/WebKit/Source/core/layout/line/BreakingContextInlineHeaders.h

Project Member Comment 20 by bugdroid1@chromium.org, Sep 15 2016
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/da78af241006da0957f090d3678bffe4d7780f15

commit da78af241006da0957f090d3678bffe4d7780f15
Author: kojii <kojii@chromium.org>
Date: Thu Sep 15 10:22:43 2016

Add UMA to measure time to open hyphenation dictionary

This patch adds UMA to measure time to open hyphenation dictionary.

The previous CL[1] added UMA that includes IPC as "Hyphenation.Open",
but this metric measures the time of the file task without the IPC.

[1] 2113933003

BUG= 605840 

Review-Url: https://codereview.chromium.org/2340613002
Cr-Commit-Position: refs/heads/master@{#418826}

[modify] https://crrev.com/da78af241006da0957f090d3678bffe4d7780f15/content/browser/hyphenation/hyphenation_impl.cc
[modify] https://crrev.com/da78af241006da0957f090d3678bffe4d7780f15/tools/metrics/histograms/histograms.xml

Project Member Comment 22 by bugdroid1@chromium.org, Sep 19 2016
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/ed7e106e0e48b3afb160a5bdbb37649e307d2b05

commit ed7e106e0e48b3afb160a5bdbb37649e307d2b05
Author: kojii <kojii@chromium.org>
Date: Mon Sep 19 15:11:06 2016

Enable CSS hyphens property on stable

This patch enables CSS hyphens property on stable.

Following values are valid at this point:
  Android/Mac: manual | none | auto
  Other platforms: manual | none

BUG= 605840 

Review-Url: https://codereview.chromium.org/2342553003
Cr-Commit-Position: refs/heads/master@{#419461}

[modify] https://crrev.com/ed7e106e0e48b3afb160a5bdbb37649e307d2b05/third_party/WebKit/LayoutTests/virtual/stable/webexposed/css-properties-as-js-properties-expected.txt
[modify] https://crrev.com/ed7e106e0e48b3afb160a5bdbb37649e307d2b05/third_party/WebKit/Source/platform/RuntimeEnabledFeatures.in

Labels: -Launch-Status-Pending -OS-All Launch-M-Target-55-Dev Launch-M-Target-55-Beta Launch-M-Target-55-Stable Launch-Status-Approval-Requested OS-Android OS-Mac
Status: Fixed
Split the automatic hyphenation for Win/Linux/ChromeOS to issue 652964.

Please provide the following information, so that chrome test engineering team can proceed with testing.

1. Is the feature code complete & enabled in the trunk and ready for testing?
2. Does this require manual testing?
3. Any specific setup / flags required?
4. Do we have enough UMA coverage to measure the stability? Its highly recommend always adding Stability.Counts and CrashExitCodes.* to your json to measure stability of your experiment.

Labels: OS-Chrome OS-Linux OS-Windows
1. Is the feature code complete & enabled in the trunk and ready for testing?

Yes.

2. Does this require manual testing?

No, there's no user interactions. When the page has "hyphens" property, hyphenations should be enabled/disabled, and all existing features should work as they were.

3. Any specific setup / flags required?

For automatic hyphenations:
a. Mac or Android M MR1+ only.
b. The page has "hyphens: auto" in its CSS.
c. The language of the page is supported.
   - The language of the page is from the "lang" attribute (e.g., <html lang=en>) or from the system language.
   - Supported language varies by OS versions.
Confirm the page is hyphenated, and existing features work as they were.

For disabling soft hyphens:
a. The page has "hyphens: none" in its CSS.
b. The page has "&shy;" in its HTML.
Confirm the page does not hyphenate at "&shy;".

4. Do we have enough UMA coverage to measure the stability? Its highly recommend always adding Stability.Counts and CrashExitCodes.* to your json to measure stability of your experiment.

Sorry, I don't understand this, any pointers to learn what they are?
Cc: candr...@chromium.org
Approving from Desktop Team since there is no requirement for manual testing. Requesting Christine to flip the bit after checking in Android.
Blocking: 668684
Cc: rsgav...@chromium.org
Thanks, rsgavara@ is looking at this for Android testing.
Labels: -Launch-Test-NotReviewed Launch-Test-Yes
Approving from Chrome on Android team as well since there is no manual testing required as per #25. We checked browsing website given in issue 668684 just to make sure that there are no crashes. Flipping Test bit to Yes since Desktop also approved
Any pregress on windows?
Is there a new issue for that?
#30: thank you for your comments:
> Any pregress on windows?
> Is there a new issue for that?

Issue 652964 is the one, appreciate if you could star it.

Unfortunately, we're not making good progress on how to download dictionaries yet.

I hoped Windows to make the API for the hyphenation engine they use for WPF public in the Anniversary Update, but that didn't happen. I keep asking to MS but haven't got good response yet.
Sign in to add a comment