Revert "Don't break word inside email/URL if the nobreak span is..."
Revert submission 28397543-dont_break_email_nobreak_span
Reason for revert: b/355362673
Reverted changes: /q/submissionid:28397543-dont_break_email_nobreak_span
Change-Id: I7a0e195dc5974a7cd4708fed86055e08221739c7
diff --git a/libs/minikin/FeatureFlags.h b/libs/minikin/FeatureFlags.h
index 9cf388d..14cb2a3 100644
--- a/libs/minikin/FeatureFlags.h
+++ b/libs/minikin/FeatureFlags.h
@@ -42,7 +42,6 @@
DEFINE_FEATURE_FLAG_ACCESSOROR(lazy_variation_instance)
DEFINE_FEATURE_FLAG_ACCESSOROR(rust_hyphenator);
DEFINE_FEATURE_FLAG_ACCESSOROR(portuguese_hyphenator);
-DEFINE_FEATURE_FLAG_ACCESSOROR(dont_break_email_in_nobreak_tag);
} // namespace features
diff --git a/libs/minikin/WordBreaker.cpp b/libs/minikin/WordBreaker.cpp
index af57611..a1e9526 100644
--- a/libs/minikin/WordBreaker.cpp
+++ b/libs/minikin/WordBreaker.cpp
@@ -16,19 +16,19 @@
#include "WordBreaker.h"
+#include <list>
+#include <map>
+
#include <unicode/ubrk.h>
#include <unicode/uchar.h>
#include <unicode/utf16.h>
-#include <list>
-#include <map>
-
-#include "FeatureFlags.h"
-#include "Locale.h"
-#include "MinikinInternal.h"
#include "minikin/Emoji.h"
#include "minikin/Hyphenator.h"
+#include "Locale.h"
+#include "MinikinInternal.h"
+
namespace minikin {
namespace {
@@ -230,12 +230,6 @@
};
void WordBreaker::detectEmailOrUrl() {
- if (features::dont_break_email_in_nobreak_tag()) {
- if (mIcuBreaker.lbStyle == LineBreakStyle::NoBreak) {
- mInEmailOrUrl = false;
- return;
- }
- }
// scan forward from current ICU position for email address or URL
if (mLast >= mScanOffset) {
ScanState state = START;
diff --git a/tests/unittest/WordBreakerTests.cpp b/tests/unittest/WordBreakerTests.cpp
index 8b5b235..fe7f953 100644
--- a/tests/unittest/WordBreakerTests.cpp
+++ b/tests/unittest/WordBreakerTests.cpp
@@ -14,14 +14,13 @@
* limitations under the License.
*/
-#include <com_android_text_flags.h>
-#include <flag_macros.h>
-#include <gtest/gtest.h>
+#include "WordBreaker.h"
#include <cstdio>
+#include <gtest/gtest.h>
+
#include "UnicodeUtils.h"
-#include "WordBreaker.h"
#ifndef NELEM
#define NELEM(x) ((sizeof(x) / sizeof((x)[0])))
@@ -728,50 +727,4 @@
}
}
-TEST_WITH_FLAGS(WordBreakerTest, noBreak_urlNoHyphenBreak,
- REQUIRES_FLAGS_ENABLED(ACONFIG_FLAG(com::android::text::flags,
- dont_break_email_in_nobreak_tag))) {
- uint16_t buf[] = {'h', 't', 't', 'p', ':', '/', '/', 'a', '-', '/', 'b'};
- auto lbStyle = LineBreakStyle::NoBreak;
- auto lbWordStyle = LineBreakWordStyle::None;
- WordBreaker breaker;
- breaker.setText(buf, NELEM(buf));
- EXPECT_EQ(0, breaker.current());
- EXPECT_EQ(11, breaker.followingWithLocale(Locale("en-US"), lbStyle, lbWordStyle, 0));
- EXPECT_EQ(0, breaker.wordStart());
- EXPECT_EQ(11, breaker.current());
- EXPECT_EQ(11, breaker.next());
-}
-
-TEST_WITH_FLAGS(WordBreakerTest, noBreak_urlEndsWithSlash,
- REQUIRES_FLAGS_ENABLED(ACONFIG_FLAG(com::android::text::flags,
- dont_break_email_in_nobreak_tag))) {
- uint16_t buf[] = {'h', 't', 't', 'p', ':', '/', '/', 'a', '/'};
- auto lbStyle = LineBreakStyle::NoBreak;
- auto lbWordStyle = LineBreakWordStyle::None;
- WordBreaker breaker;
- breaker.setText(buf, NELEM(buf));
- EXPECT_EQ(0, breaker.current());
- EXPECT_EQ(9, breaker.followingWithLocale(Locale("en-US"), lbStyle, lbWordStyle, 0));
- EXPECT_EQ(0, breaker.wordStart());
- EXPECT_EQ(9, breaker.next());
-}
-
-TEST_WITH_FLAGS(WordBreakerTest, noBreak_setLocaleInsideUrl,
- REQUIRES_FLAGS_ENABLED(ACONFIG_FLAG(com::android::text::flags,
- dont_break_email_in_nobreak_tag))) {
- std::vector<uint16_t> buf = utf8ToUtf16("Hello http://abc/d.html World");
- auto lbStyle = LineBreakStyle::NoBreak;
- auto lbWordStyle = LineBreakWordStyle::None;
- WordBreaker breaker;
- breaker.setText(buf.data(), buf.size());
- EXPECT_EQ(0, breaker.current());
- EXPECT_EQ(29, breaker.followingWithLocale(Locale("en-US"), lbStyle, lbWordStyle, 0));
- EXPECT_EQ(0, breaker.wordStart());
- EXPECT_EQ(29, breaker.wordEnd());
-
- EXPECT_EQ(29, breaker.current());
- EXPECT_EQ(29, breaker.next());
-}
-
} // namespace minikin