From bc27690c6dc107738b6dd6e07848276879475e2a Mon Sep 17 00:00:00 2001 From: Tony Rankin Date: Mon, 13 Jul 2015 22:27:39 -0700 Subject: [PATCH 1/4] Updating ActionBar title. Save button is now Undo. --- .../wordpress/android/util/StringUtils.java | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/WordPressUtils/src/main/java/org/wordpress/android/util/StringUtils.java b/WordPressUtils/src/main/java/org/wordpress/android/util/StringUtils.java index 68e3113c3d5d..6f73e6dd6ad2 100644 --- a/WordPressUtils/src/main/java/org/wordpress/android/util/StringUtils.java +++ b/WordPressUtils/src/main/java/org/wordpress/android/util/StringUtils.java @@ -11,6 +11,7 @@ import java.util.ArrayList; import java.util.Arrays; import java.util.List; +import java.util.Locale; public class StringUtils { public static String[] mergeStringArrays(String array1[], String array2[]) { @@ -228,6 +229,28 @@ public static String replaceUnicodeSurrogateBlocksWithHTMLEntities(final String return out.toString(); } + /** + * Used to convert a language code ([lc]_[rc] where lc is language code (en, fr, es, etc...) + * and rc is region code (zh-CN, zh-HK, zh-TW, etc...) to a displayable string with the languages + * name. + * + * The input string must be between 2 and 6 characters, inclusive. An empty string is returned + * if that is not the case. + * + * If the input string is recognized by {@link Locale} the result of this method is the given + * + * @return + * non-null + */ + public static String getLanguageString(String languagueCode, Locale displayLocale) { + if (languagueCode == null || languagueCode.length() < 2 || languagueCode.length() > 6) { + return ""; + } + + Locale languageLocale = new Locale(languagueCode.substring(0, 2)); + return languageLocale.getDisplayLanguage(displayLocale) + languagueCode.substring(2); + } + /** * This method ensures that the output String has only * valid XML unicode characters as specified by the From 1857d7e500e7ae63c1d7bf1979ae8c3457f1cb37 Mon Sep 17 00:00:00 2001 From: Alex Forcier Date: Fri, 29 Jan 2016 17:16:35 -1000 Subject: [PATCH 2/4] Added ShortcodeUtils with methods for converting VideoPress ids to shortcodes and vice versa --- .../android/util/ShortcodeUtilsTest.java | 25 +++++++++++++++ .../android/util/ShortcodeUtils.java | 31 +++++++++++++++++++ 2 files changed, 56 insertions(+) create mode 100644 WordPressUtils/src/androidTest/java/org/wordpress/android/util/ShortcodeUtilsTest.java create mode 100644 WordPressUtils/src/main/java/org/wordpress/android/util/ShortcodeUtils.java diff --git a/WordPressUtils/src/androidTest/java/org/wordpress/android/util/ShortcodeUtilsTest.java b/WordPressUtils/src/androidTest/java/org/wordpress/android/util/ShortcodeUtilsTest.java new file mode 100644 index 000000000000..c506a452ee5d --- /dev/null +++ b/WordPressUtils/src/androidTest/java/org/wordpress/android/util/ShortcodeUtilsTest.java @@ -0,0 +1,25 @@ +package org.wordpress.android.util; + +import android.test.InstrumentationTestCase; + +public class ShortcodeUtilsTest extends InstrumentationTestCase { + public void testGetVideoPressShortcodeFromId() { + assertEquals("[wpvideo abcd1234]", ShortcodeUtils.getVideoPressShortcodeFromId("abcd1234")); + } + + public void testGetVideoPressShortcodeFromNullId() { + assertEquals("", ShortcodeUtils.getVideoPressShortcodeFromId(null)); + } + + public void testGetVideoPressIdFromCorrectShortcode() { + assertEquals("abcd1234", ShortcodeUtils.getVideoPressIdFromShortCode("[wpvideo abcd1234]")); + } + + public void testGetVideoPressIdFromInvalidShortcode() { + assertEquals("", ShortcodeUtils.getVideoPressIdFromShortCode("[other abcd1234]")); + } + + public void testGetVideoPressIdFromNullShortcode() { + assertEquals("", ShortcodeUtils.getVideoPressIdFromShortCode(null)); + } +} diff --git a/WordPressUtils/src/main/java/org/wordpress/android/util/ShortcodeUtils.java b/WordPressUtils/src/main/java/org/wordpress/android/util/ShortcodeUtils.java new file mode 100644 index 000000000000..09480f156364 --- /dev/null +++ b/WordPressUtils/src/main/java/org/wordpress/android/util/ShortcodeUtils.java @@ -0,0 +1,31 @@ +package org.wordpress.android.util; + +import java.util.regex.Matcher; +import java.util.regex.Pattern; + +public class ShortcodeUtils { + public static String getVideoPressShortcodeFromId(String videoPressId) { + if (videoPressId == null || videoPressId.isEmpty()) { + return ""; + } + + return "[wpvideo " + videoPressId + "]"; + } + + public static String getVideoPressIdFromShortCode(String shortcode) { + String videoPressId = ""; + + if (shortcode != null) { + String videoPressShortcodeRegex = "^\\[wpvideo (.*)]$"; + + Pattern pattern = Pattern.compile(videoPressShortcodeRegex); + Matcher matcher = pattern.matcher(shortcode); + + if (matcher.find()) { + videoPressId = matcher.group(1); + } + } + + return videoPressId; + } +} From db6e3fcd16a80e69e705b751f032f3ca61323c7d Mon Sep 17 00:00:00 2001 From: Alex Forcier Date: Fri, 29 Jan 2016 17:24:52 -1000 Subject: [PATCH 3/4] Removed unused StringUtils.getLanguageString method --- .../wordpress/android/util/StringUtils.java | 23 ------------------- 1 file changed, 23 deletions(-) diff --git a/WordPressUtils/src/main/java/org/wordpress/android/util/StringUtils.java b/WordPressUtils/src/main/java/org/wordpress/android/util/StringUtils.java index ab805cedc84c..25ddd2a41226 100644 --- a/WordPressUtils/src/main/java/org/wordpress/android/util/StringUtils.java +++ b/WordPressUtils/src/main/java/org/wordpress/android/util/StringUtils.java @@ -11,7 +11,6 @@ import java.util.ArrayList; import java.util.Arrays; import java.util.List; -import java.util.Locale; public class StringUtils { public static String[] mergeStringArrays(String array1[], String array2[]) { @@ -219,28 +218,6 @@ public static String replaceUnicodeSurrogateBlocksWithHTMLEntities(final String return out.toString(); } - /** - * Used to convert a language code ([lc]_[rc] where lc is language code (en, fr, es, etc...) - * and rc is region code (zh-CN, zh-HK, zh-TW, etc...) to a displayable string with the languages - * name. - * - * The input string must be between 2 and 6 characters, inclusive. An empty string is returned - * if that is not the case. - * - * If the input string is recognized by {@link Locale} the result of this method is the given - * - * @return - * non-null - */ - public static String getLanguageString(String languagueCode, Locale displayLocale) { - if (languagueCode == null || languagueCode.length() < 2 || languagueCode.length() > 6) { - return ""; - } - - Locale languageLocale = new Locale(languagueCode.substring(0, 2)); - return languageLocale.getDisplayLanguage(displayLocale) + languagueCode.substring(2); - } - /** * This method ensures that the output String has only * valid XML unicode characters as specified by the From c611f1eddb7f8321be051ebb3c117f0f9af77274 Mon Sep 17 00:00:00 2001 From: Alex Forcier Date: Fri, 29 Jan 2016 18:05:30 -1000 Subject: [PATCH 4/4] 1.9.0 version bump --- WordPressUtils/build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/WordPressUtils/build.gradle b/WordPressUtils/build.gradle index 1b188062bde8..dc4230cfe1d4 100644 --- a/WordPressUtils/build.gradle +++ b/WordPressUtils/build.gradle @@ -32,7 +32,7 @@ android { buildToolsVersion "23.0.2" defaultConfig { - versionName "1.8.0" + versionName "1.9.0" minSdkVersion 14 targetSdkVersion 23 }