aboutsummaryrefslogtreecommitdiffstats
path: root/app/src/main/java
diff options
context:
space:
mode:
authorKazuki Yamaguchi <k@rhe.jp>2015-09-05 19:30:22 +0900
committerKazuki Yamaguchi <k@rhe.jp>2015-09-05 19:31:55 +0900
commit172248a68595e762b0d95fed29c719d714e96529 (patch)
tree74e54cdd332077cb9952700e8651167fe946c5ba /app/src/main/java
parentd87e8c2b04042b2d72fa11d016ae3e0bd4652681 (diff)
downloadSmileEssence-172248a68595e762b0d95fed29c719d714e96529.tar.gz
IntentRouter: Twitter の Web Intent なインテントを受信した際、url が空の場合に無駄なスペースを追加しない
Diffstat (limited to 'app/src/main/java')
-rw-r--r--app/src/main/java/net/lacolaco/smileessence/IntentRouter.java45
1 files changed, 22 insertions, 23 deletions
diff --git a/app/src/main/java/net/lacolaco/smileessence/IntentRouter.java b/app/src/main/java/net/lacolaco/smileessence/IntentRouter.java
index 6a5d6d50..fd48a83e 100644
--- a/app/src/main/java/net/lacolaco/smileessence/IntentRouter.java
+++ b/app/src/main/java/net/lacolaco/smileessence/IntentRouter.java
@@ -81,6 +81,20 @@ public class IntentRouter {
}
}
+ private static void onUriIntent(MainActivity activity, Uri uri) {
+ Logger.debug(uri.toString());
+ if (isPostIntent(uri)) {
+ String str = getText(uri);
+ openPostPage(activity, str);
+ } else if (isStatusIntent(uri)) {
+ long id = getStatusID(uri);
+ showStatusDialog(activity, id);
+ } else if (isUserIntent(uri)) {
+ String screenName = getScreenName(uri);
+ showUserDialog(activity, screenName);
+ }
+ }
+
private static String getText(Bundle extra) {
StringBuilder builder = new StringBuilder();
if (!TextUtils.isEmpty(extra.getCharSequence(Intent.EXTRA_SUBJECT))) {
@@ -91,32 +105,17 @@ public class IntentRouter {
}
private static String getText(Uri uri) {
- String text = "";
- String url = "";
- if (uri.getQueryParameter("text") != null) {
- text = uri.getQueryParameter("text").replaceAll("\\+", " ");
- } else if (uri.getQueryParameter("status") != null) {
- text = uri.getQueryParameter("status").replaceAll("\\+", " ");
+ String result = "";
+ if (!TextUtils.isEmpty(uri.getQueryParameter("text"))) {
+ result += uri.getQueryParameter("text").replaceAll("\\+", " ");
+ } else if (!TextUtils.isEmpty(uri.getQueryParameter("status"))) {
+ result += uri.getQueryParameter("status").replaceAll("\\+", " ");
}
-
- if (uri.getQueryParameter("url") != null) {
- url = uri.getQueryParameter("url");
+ if (!TextUtils.isEmpty(uri.getQueryParameter("url"))) {
+ result += " " + uri.getQueryParameter("url");
}
- return text + " " + url;
- }
- private static void onUriIntent(MainActivity activity, Uri uri) {
- Logger.debug(uri.toString());
- if (isPostIntent(uri)) {
- String str = getText(uri);
- openPostPage(activity, str);
- } else if (isStatusIntent(uri)) {
- long id = getStatusID(uri);
- showStatusDialog(activity, id);
- } else if (isUserIntent(uri)) {
- String screenName = getScreenName(uri);
- showUserDialog(activity, screenName);
- }
+ return result;
}
private static String getScreenName(Uri uri) {