OSDN Git Service

Taskbar 2.0
authorBraden Farmer <farmerbb@gmail.com>
Sun, 2 Oct 2016 03:59:51 +0000 (21:59 -0600)
committerBraden Farmer <farmerbb@gmail.com>
Sun, 2 Oct 2016 03:59:51 +0000 (21:59 -0600)
• Only set FLAG_ACTIVITY_LAUNCH_ADJACENT when needed

app/build.gradle
app/src/main/java/com/farmerbb/taskbar/activity/ContextMenuActivity.java

index 703026f..9c66b37 100644 (file)
@@ -14,7 +14,7 @@ android {
         minSdkVersion 21
         targetSdkVersion 24
 
-        versionCode 74
+        versionCode 75
         versionName "2.0"
 
         resConfigs "en", "ja"
index 228b33f..aebf4e8 100644 (file)
@@ -21,6 +21,7 @@ import android.app.ActivityOptions;
 import android.content.ComponentName;
 import android.content.Intent;
 import android.content.SharedPreferences;
+import android.content.pm.ActivityInfo;
 import android.content.pm.PackageManager;
 import android.content.pm.ResolveInfo;
 import android.graphics.Rect;
@@ -443,7 +444,13 @@ public class ContextMenuActivity extends PreferenceActivity implements Preferenc
 
         if(openInNewWindow) {
             intent.addFlags(Intent.FLAG_ACTIVITY_MULTIPLE_TASK);
-            intent.addFlags(Intent.FLAG_ACTIVITY_LAUNCH_ADJACENT);
+
+            switch(intent.resolveActivityInfo(getPackageManager(), 0).launchMode) {
+                case ActivityInfo.LAUNCH_SINGLE_TASK:
+                case ActivityInfo.LAUNCH_SINGLE_INSTANCE:
+                    intent.addFlags(Intent.FLAG_ACTIVITY_LAUNCH_ADJACENT);
+                    break;
+            }
         }
 
         SharedPreferences pref = U.getSharedPreferences(this);