diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 76086e59d..fa543d83c 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -301,7 +301,7 @@
-
+
@@ -311,20 +311,13 @@
+
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
diff --git a/app/src/main/java/org/fdroid/fdroid/views/main/MainActivity.java b/app/src/main/java/org/fdroid/fdroid/views/main/MainActivity.java
index 50636c861..1e3ad2412 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/main/MainActivity.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/main/MainActivity.java
@@ -16,11 +16,9 @@ import android.support.v7.widget.RecyclerView;
import android.text.TextUtils;
import android.view.ViewGroup;
import android.widget.Toast;
-
import com.ashokvarma.bottomnavigation.BadgeItem;
import com.ashokvarma.bottomnavigation.BottomNavigationBar;
import com.ashokvarma.bottomnavigation.BottomNavigationItem;
-
import org.fdroid.fdroid.AppDetails2;
import org.fdroid.fdroid.AppUpdateStatusManager;
import org.fdroid.fdroid.AppUpdateStatusManager.AppUpdateStatus;
@@ -226,18 +224,20 @@ public class MainActivity extends AppCompatActivity implements BottomNavigationB
}
switch (host) {
case "f-droid.org":
- if (path.startsWith("/repository/browse")) {
+ case "www.f-droid.org":
+ case "staging.f-droid.org":
+ if (path.startsWith("/app/") || path.startsWith("/packages/")
+ || path.matches("^/[a-z][a-z][a-zA-Z_-]*/packages/.*")) {
+ // http://f-droid.org/app/packageName
+ packageName = data.getLastPathSegment();
+ } else if (path.startsWith("/repository/browse")) {
// http://f-droid.org/repository/browse?fdfilter=search+query
query = UriCompat.getQueryParameter(data, "fdfilter");
// http://f-droid.org/repository/browse?fdid=packageName
packageName = UriCompat.getQueryParameter(data, "fdid");
- } else if (path.startsWith("/app")) {
- // http://f-droid.org/app/packageName
- packageName = data.getLastPathSegment();
- if ("app".equals(packageName)) {
- packageName = null;
- }
+ } else if ("/app".equals(data.getPath()) || "/packages".equals(data.getPath())) {
+ packageName = null;
}
break;
case "details":