Improve Details Activity

This commit is contained in:
Mr. Dragon
2018-03-05 22:11:53 +05:30
parent 57573e2508
commit abe029523c
25 changed files with 514 additions and 485 deletions

View File

@@ -43,4 +43,5 @@ dependencies {
implementation 'com.github.percolate:caffeine:0.4.7'
implementation 'com.afollestad:aesthetic:0.4.6'
implementation 'com.afollestad.material-dialogs:commons:0.9.6.0'
implementation 'com.github.florent37:shapeofview:1.0.6'
}

View File

@@ -42,6 +42,28 @@ public class DetailsActivity extends GalaxyActivity {
return intent;
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
FrameLayout contentFrameLayout = (FrameLayout) findViewById(R.id.content_frame);
getLayoutInflater().inflate(R.layout.details_activity_layout, contentFrameLayout);
onNewIntent(getIntent());
}
@Override
protected void onPause() {
if (null != downloadOrInstallFragment) {
downloadOrInstallFragment.unregisterReceivers();
}
super.onPause();
}
@Override
protected void onResume() {
redrawButtons();
super.onResume();
}
@Override
protected void onNewIntent(Intent intent) {
super.onNewIntent(intent);
@@ -64,20 +86,6 @@ public class DetailsActivity extends GalaxyActivity {
task.execute();
}
@Override
protected void onPause() {
if (null != downloadOrInstallFragment) {
downloadOrInstallFragment.unregisterReceivers();
}
super.onPause();
}
@Override
protected void onResume() {
redrawButtons();
super.onResume();
}
private void redrawButtons() {
if (null != downloadOrInstallFragment) {
downloadOrInstallFragment.unregisterReceivers();
@@ -86,28 +94,6 @@ public class DetailsActivity extends GalaxyActivity {
}
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
FrameLayout contentFrameLayout = (FrameLayout) findViewById(R.id.content_frame);
getLayoutInflater().inflate(R.layout.details_activity_layout, contentFrameLayout);
onNewIntent(getIntent());
}
@Override
public void onRequestPermissionsResult(int requestCode, String permissions[], int[] grantResults) {
if (GalaxyPermissionManager.isGranted(requestCode, permissions, grantResults)) {
Log.i(getClass().getSimpleName(), "User granted the write permission");
if (null == downloadOrInstallFragment && null != app) {
downloadOrInstallFragment = new DownloadOrInstall(this, app);
redrawButtons();
}
if (null != downloadOrInstallFragment) {
downloadOrInstallFragment.download();
}
}
}
@Override
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) {
super.onCreateContextMenu(menu, v, menuInfo);

View File

@@ -45,28 +45,19 @@ public class AppLists extends Abstract {
linkView.setTextSize(TypedValue.COMPLEX_UNIT_SP, 20);
linkView.setPadding(0, 6, 0, 0);
linkView.setGravity(Gravity.CENTER_VERTICAL);
linkView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
ClusterActivity.start(activity, url, label);
}
});
linkView.setOnClickListener(v -> ClusterActivity.start(activity, url, label));
return linkView;
}
private void addAppsByThisDeveloper() {
ImageView imageView = (ImageView) activity.findViewById(R.id.apps_by_same_developer);
//textView.setText(activity.getString(R.string.apps_by, app.getDeveloperName()));
imageView.setVisibility(View.VISIBLE);
imageView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(activity, SearchActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.setAction(Intent.ACTION_SEARCH);
intent.putExtra(SearchManager.QUERY, SearchActivity.PUB_PREFIX + app.getDeveloperName());
activity.startActivity(intent);
}
imageView.setOnClickListener(v -> {
Intent intent = new Intent(activity, SearchActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.setAction(Intent.ACTION_SEARCH);
intent.putExtra(SearchManager.QUERY, SearchActivity.PUB_PREFIX + app.getDeveloperName());
activity.startActivity(intent);
});
}
}

View File

@@ -1,9 +1,7 @@
package in.dragons.galaxy.fragment.details;
import android.content.SharedPreferences;
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
import android.preference.PreferenceManager;
import android.text.Html;
import android.text.TextUtils;
import android.text.format.Formatter;
@@ -39,7 +37,6 @@ public class GeneralDetails extends Abstract {
if (app.isInPlayStore()) {
drawGeneralDetails(app);
drawDescription(app);
new GoogleDependency((DetailsActivity) activity, app).draw();
}
}
@@ -62,25 +59,25 @@ public class GeneralDetails extends Abstract {
}
private void drawGeneralDetails(App app) {
activity.findViewById(R.id.general_card).setVisibility(View.VISIBLE);
activity.findViewById(R.id.general_details).setVisibility(View.VISIBLE);
activity.findViewById(R.id.app_detail).setVisibility(View.VISIBLE);
activity.findViewById(R.id.divider_top).setVisibility(View.VISIBLE);
activity.findViewById(R.id.divider_bottom).setVisibility(View.VISIBLE);
setText(R.id.installs, R.string.details_installs, Util.addSiPrefix(app.getInstalls()));
if (app.isEarlyAccess()) {
setText(R.id.rating, R.string.early_access);
} else {
setText(R.id.rating, R.string.details_rating, app.getRating().getAverage());
}
setText(R.id.updated, R.string.details_updated, app.getUpdated());
setText(R.id.size, R.string.details_size, Formatter.formatShortFileSize(activity, app.getSize()));
setText(R.id.category, R.string.details_category, new CategoryManager(activity).getCategoryName(app.getCategoryId()));
setText(R.id.developer, R.string.details_developer, app.getDeveloperName());
setText(R.id.price, app.getPrice());
setText(R.id.contains_ads, app.containsAds() ? R.string.details_contains_ads : R.string.details_no_ads);
drawOfferDetails(app);
drawChanges(app);
if (app.getVersionCode() == 0) {
activity.findViewById(R.id.updated).setVisibility(View.GONE);
activity.findViewById(R.id.size).setVisibility(View.GONE);
@@ -90,22 +87,15 @@ public class GeneralDetails extends Abstract {
private void drawChanges(App app) {
String changes = app.getChanges();
if (TextUtils.isEmpty(changes)) {
activity.findViewById(R.id.changes).setVisibility(View.GONE);
activity.findViewById(R.id.changes_title).setVisibility(View.GONE);
activity.findViewById(R.id.changes_header).setVisibility(View.GONE);
activity.findViewById(R.id.more_changes_container).setVisibility(View.GONE);
activity.findViewById(R.id.changes_container).setVisibility(View.GONE);
activity.findViewById(R.id.changes_upper).setVisibility(View.GONE);
return;
}
if (app.getInstalledVersionCode() == 0) {
setText(R.id.changes, Html.fromHtml(changes).toString());
activity.findViewById(R.id.changes).setVisibility(View.VISIBLE);
activity.findViewById(R.id.changes_title).setVisibility(View.VISIBLE);
activity.findViewById(R.id.more_changes_container).setVisibility(View.VISIBLE);
} else {
SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(activity);
activity.findViewById(R.id.changes_upper).setVisibility(View.VISIBLE);
setText(R.id.changes_upper, Html.fromHtml(changes).toString());
activity.findViewById(R.id.changes_header).setVisibility(View.VISIBLE);
activity.findViewById(R.id.changes_container).setVisibility(View.VISIBLE);
}
}

View File

@@ -1,15 +1,12 @@
package in.dragons.galaxy.fragment.details;
import android.preference.PreferenceManager;
import android.text.TextUtils;
import android.widget.TextView;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
import in.dragons.galaxy.DetailsActivity;
import in.dragons.galaxy.R;
import in.dragons.galaxy.SharedPreferencesTranslator;
import in.dragons.galaxy.model.App;
import in.dragons.galaxy.task.playstore.DependencyTranslationTask;
@@ -32,19 +29,12 @@ public class GoogleDependency extends Abstract {
untranslated.add(dependency);
}
}
drawDeps(translated);
if (untranslated.size() > 0) {
getTranslations(untranslated);
}
}
private void drawDeps(Set<String> dependencies) {
String depsList = app.getDependencies().isEmpty()
? activity.getString(R.string.details_no_dependencies)
: TextUtils.join(", ", dependencies);
((TextView) activity.findViewById(R.id.google_dependencies)).setText(activity.getString(R.string.details_depends_on, depsList));
}
private Set<String> getTranslatedDeps(App app) {
Set<String> translated = new HashSet<>();
for (String dependency : app.getDependencies()) {
@@ -65,7 +55,6 @@ public class GoogleDependency extends Abstract {
for (String packageName : translated.keySet()) {
translator.putString(packageName, translated.get(packageName));
}
drawDeps(getTranslatedDeps(app));
}
};
task.setContext(activity);

View File

@@ -1,5 +1,10 @@
<vector android:autoMirrored="true" android:height="36dp"
android:viewportHeight="24.0" android:viewportWidth="24.0"
android:width="36dp" xmlns:android="http://schemas.android.com/apk/res/android">
<path android:fillColor="#FFF" android:pathData="M5,9.5L7.5,14H2.5L5,9.5M3,4H7V8H3V4M5,20A2,2 0,0 0,7 18A2,2 0,0 0,5 16A2,2 0,0 0,3 18A2,2 0,0 0,5 20M9,5V7H21V5H9M9,19H21V17H9V19M9,13H21V11H9V13Z"/>
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:autoMirrored="true"
android:viewportHeight="24.0"
android:viewportWidth="24.0">
<path
android:fillColor="#FFF"
android:pathData="M11,13.5V21.5H3V13.5H11M12,2L17.5,11H6.5L12,2M17.5,13C20,13 22,15 22,17.5C22,20 20,22 17.5,22C15,22 13,20 13,17.5C13,15 15,13 17.5,13Z" />
</vector>

View File

@@ -1,5 +1,10 @@
<vector android:autoMirrored="true" android:height="36dp"
android:viewportHeight="24.0" android:viewportWidth="24.0"
android:width="36dp" xmlns:android="http://schemas.android.com/apk/res/android">
<path android:fillColor="#FFF" android:pathData="M14.6,16.6L19.2,12L14.6,7.4L16,6L22,12L16,18L14.6,16.6M9.4,16.6L4.8,12L9.4,7.4L8,6L2,12L8,18L9.4,16.6Z"/>
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:autoMirrored="true"
android:viewportHeight="24.0"
android:viewportWidth="24.0">
<path
android:fillColor="#FFF"
android:pathData="M14.6,16.6L19.2,12L14.6,7.4L16,6L22,12L16,18L14.6,16.6M9.4,16.6L4.8,12L9.4,7.4L8,6L2,12L8,18L9.4,16.6Z" />
</vector>

View File

@@ -1,5 +1,10 @@
<vector android:autoMirrored="true" android:height="36dp"
android:viewportHeight="24.0" android:viewportWidth="24.0"
android:width="36dp" xmlns:android="http://schemas.android.com/apk/res/android">
<path android:fillColor="#FFF" android:pathData="M11,4H13V16L18.5,10.5L19.92,11.92L12,19.84L4.08,11.92L5.5,10.5L11,16V4Z"/>
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:autoMirrored="true"
android:viewportHeight="24.0"
android:viewportWidth="24.0">
<path
android:fillColor="#FFF"
android:pathData="M11,4H13V16L18.5,10.5L19.92,11.92L12,19.84L4.08,11.92L5.5,10.5L11,16V4Z" />
</vector>

View File

@@ -1,5 +1,10 @@
<vector android:autoMirrored="true" android:height="36dp"
android:viewportHeight="24.0" android:viewportWidth="24.0"
android:width="36dp" xmlns:android="http://schemas.android.com/apk/res/android">
<path android:fillColor="#FFF" android:pathData="M3,20.5V3.5C3,2.91 3.34,2.39 3.84,2.15L13.69,12L3.84,21.85C3.34,21.6 3,21.09 3,20.5M16.81,15.12L6.05,21.34L14.54,12.85L16.81,15.12M20.16,10.81C20.5,11.08 20.75,11.5 20.75,12C20.75,12.5 20.53,12.9 20.18,13.18L17.89,14.5L15.39,12L17.89,9.5L20.16,10.81M6.05,2.66L16.81,8.88L14.54,11.15L6.05,2.66Z"/>
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:autoMirrored="true"
android:viewportHeight="24.0"
android:viewportWidth="24.0">
<path
android:fillColor="#FFF"
android:pathData="M3,20.5V3.5C3,2.91 3.34,2.39 3.84,2.15L13.69,12L3.84,21.85C3.34,21.6 3,21.09 3,20.5M16.81,15.12L6.05,21.34L14.54,12.85L16.81,15.12M20.16,10.81C20.5,11.08 20.75,11.5 20.75,12C20.75,12.5 20.53,12.9 20.18,13.18L17.89,14.5L15.39,12L17.89,9.5L20.16,10.81M6.05,2.66L16.81,8.88L14.54,11.15L6.05,2.66Z" />
</vector>

View File

@@ -1,5 +1,10 @@
<vector android:autoMirrored="true" android:height="36dp"
android:viewportHeight="24.0" android:viewportWidth="24.0"
android:width="36dp" xmlns:android="http://schemas.android.com/apk/res/android">
<path android:fillColor="#FFF" android:pathData="M8,3H18L17,5H13.74C14.22,5.58 14.58,6.26 14.79,7H18L17,9H15C14.75,11.57 12.74,13.63 10.2,13.96V14H9.5L15.5,21H13L7,14V12H9.5V12C11.26,12 12.72,10.7 12.96,9H7L8,7H12.66C12.1,5.82 10.9,5 9.5,5H7L8,3Z"/>
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:autoMirrored="true"
android:viewportHeight="24.0"
android:viewportWidth="24.0">
<path
android:fillColor="#FFF"
android:pathData="M8,3H18L17,5H13.74C14.22,5.58 14.58,6.26 14.79,7H18L17,9H15C14.75,11.57 12.74,13.63 10.2,13.96V14H9.5L15.5,21H13L7,14V12H9.5V12C11.26,12 12.72,10.7 12.96,9H7L8,7H12.66C12.1,5.82 10.9,5 9.5,5H7L8,3Z" />
</vector>

View File

@@ -1,5 +1,10 @@
<vector android:autoMirrored="true" android:height="36dp"
android:viewportHeight="24.0" android:viewportWidth="24.0"
android:width="36dp" xmlns:android="http://schemas.android.com/apk/res/android">
<path android:fillColor="#FFF" android:pathData="M12,15.4V6.1L13.71,10.13L18.09,10.5L14.77,13.39L15.76,17.67M22,9.24L14.81,8.63L12,2L9.19,8.63L2,9.24L7.45,13.97L5.82,21L12,17.27L18.18,21L16.54,13.97L22,9.24Z"/>
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:autoMirrored="true"
android:viewportHeight="24.0"
android:viewportWidth="24.0">
<path
android:fillColor="#FFF"
android:pathData="M12,15.4V6.1L13.71,10.13L18.09,10.5L14.77,13.39L15.76,17.67M22,9.24L14.81,8.63L12,2L9.19,8.63L2,9.24L7.45,13.97L5.82,21L12,17.27L18.18,21L16.54,13.97L22,9.24Z" />
</vector>

View File

@@ -1,5 +1,10 @@
<vector android:autoMirrored="true" android:height="36dp"
android:viewportHeight="24.0" android:viewportWidth="24.0"
android:width="36dp" xmlns:android="http://schemas.android.com/apk/res/android">
<path android:fillColor="#FFF" android:pathData="M3,17V19H9V17H3M3,5V7H13V5H3M13,21V19H21V17H13V15H11V21H13M7,9V11H3V13H7V15H9V9H7M21,13V11H11V13H21M15,9H17V7H21V5H17V3H15V9Z"/>
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:autoMirrored="true"
android:viewportHeight="24.0"
android:viewportWidth="24.0">
<path
android:fillColor="#FFF"
android:pathData="M3,17V19H9V17H3M3,5V7H13V5H3M13,21V19H21V17H13V15H11V21H13M7,9V11H3V13H7V15H9V9H7M21,13V11H11V13H21M15,9H17V7H21V5H17V3H15V9Z" />
</vector>

View File

@@ -1,5 +1,10 @@
<vector android:autoMirrored="true" android:height="36dp"
android:viewportHeight="24.0" android:viewportWidth="24.0"
android:width="36dp" xmlns:android="http://schemas.android.com/apk/res/android">
<path android:fillColor="#FFF" android:pathData="M18,16.08C17.24,16.08 16.56,16.38 16.04,16.85L8.91,12.7C8.96,12.47 9,12.24 9,12C9,11.76 8.96,11.53 8.91,11.3L15.96,7.19C16.5,7.69 17.21,8 18,8A3,3 0,0 0,21 5A3,3 0,0 0,18 2A3,3 0,0 0,15 5C15,5.24 15.04,5.47 15.09,5.7L8.04,9.81C7.5,9.31 6.79,9 6,9A3,3 0,0 0,3 12A3,3 0,0 0,6 15C6.79,15 7.5,14.69 8.04,14.19L15.16,18.34C15.11,18.55 15.08,18.77 15.08,19C15.08,20.61 16.39,21.91 18,21.91C19.61,21.91 20.92,20.61 20.92,19A2.92,2.92 0,0 0,18 16.08Z"/>
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:autoMirrored="true"
android:viewportHeight="24.0"
android:viewportWidth="24.0">
<path
android:fillColor="#FFF"
android:pathData="M18,16.08C17.24,16.08 16.56,16.38 16.04,16.85L8.91,12.7C8.96,12.47 9,12.24 9,12C9,11.76 8.96,11.53 8.91,11.3L15.96,7.19C16.5,7.69 17.21,8 18,8A3,3 0,0 0,21 5A3,3 0,0 0,18 2A3,3 0,0 0,15 5C15,5.24 15.04,5.47 15.09,5.7L8.04,9.81C7.5,9.31 6.79,9 6,9A3,3 0,0 0,3 12A3,3 0,0 0,6 15C6.79,15 7.5,14.69 8.04,14.19L15.16,18.34C15.11,18.55 15.08,18.77 15.08,19C15.08,20.61 16.39,21.91 18,21.91C19.61,21.91 20.92,20.61 20.92,19A2.92,2.92 0,0 0,18 16.08Z" />
</vector>

View File

@@ -1,5 +1,10 @@
<vector android:autoMirrored="true" android:height="36dp"
android:viewportHeight="24.0" android:viewportWidth="24.0"
android:width="36dp" xmlns:android="http://schemas.android.com/apk/res/android">
<path android:fillColor="#FFF" android:pathData="M12,14C10.89,14 10,13.1 10,12C10,10.89 10.89,10 12,10C13.11,10 14,10.89 14,12A2,2 0,0 1,12 14M12,4A8,8 0,0 0,4 12A8,8 0,0 0,12 20A8,8 0,0 0,20 12A8,8 0,0 0,12 4Z"/>
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:autoMirrored="true"
android:viewportHeight="24.0"
android:viewportWidth="24.0">
<path
android:fillColor="#FFF"
android:pathData="M12,14C10.89,14 10,13.1 10,12C10,10.89 10.89,10 12,10C13.11,10 14,10.89 14,12A2,2 0,0 1,12 14M12,4A8,8 0,0 0,4 12A8,8 0,0 0,12 20A8,8 0,0 0,20 12A8,8 0,0 0,12 4Z" />
</vector>

View File

@@ -0,0 +1,54 @@
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/main_action"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:gravity="end"
android:orientation="horizontal"
android:weightSum="3">
<Button
android:id="@+id/uninstall"
android:layout_width="0dp"
android:layout_height="48dp"
android:layout_weight="1"
android:maxLines="1"
android:text="@string/details_uninstall"
android:visibility="gone" />
<Button
android:id="@+id/download"
android:layout_width="0dp"
android:layout_height="48dp"
android:layout_weight="1"
android:maxLines="1"
android:text="@string/details_download"
android:visibility="gone" />
<Button
android:id="@+id/cancel"
android:layout_width="0dp"
android:layout_height="48dp"
android:layout_weight="1"
android:maxLines="1"
android:text="@string/details_cancel"
android:visibility="gone" />
<Button
android:id="@+id/install"
android:layout_width="0dp"
android:layout_height="48dp"
android:layout_weight="1"
android:maxLines="1"
android:text="@string/details_install"
android:visibility="gone" />
<Button
android:id="@+id/run"
android:layout_width="0dp"
android:layout_height="48dp"
android:layout_weight="1"
android:maxLines="1"
android:text="@string/details_run"
android:visibility="gone" />
</LinearLayout>

View File

@@ -1,19 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
<android.support.v7.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/beta_card"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center">
android:visibility="gone"
app:cardUseCompatPadding="true">
<android.support.v7.widget.CardView
android:id="@+id/beta_card"
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="5dp"
android:visibility="gone"
app:cardCornerRadius="2dp"
app:cardElevation="2dp"
app:contentPadding="5dp">
android:orientation="vertical"
android:padding="5dp">
<TextView
android:id="@+id/beta_header"
@@ -30,11 +28,9 @@
android:id="@+id/beta_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="32dp"
android:orientation="vertical"
android:visibility="gone">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
@@ -45,7 +41,7 @@
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<FrameLayout
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
@@ -54,10 +50,7 @@
android:id="@+id/beta_subscribe_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="end"
android:background="@drawable/button_bg"
android:textColor="@color/white"
android:theme="@style/Widget.AppCompat.Button.Borderless.Colored" />
android:layout_gravity="end" />
<TextView
android:id="@+id/beta_email"
@@ -68,7 +61,7 @@
android:gravity="center_vertical|end"
android:textAlignment="textEnd" />
</FrameLayout>
</LinearLayout>
<LinearLayout
android:id="@+id/beta_feedback"
@@ -92,28 +85,23 @@
android:id="@+id/beta_submit_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/button_bg"
android:text="@string/submit"
android:textColor="@color/white"
android:theme="@style/Widget.AppCompat.Button.Borderless.Colored" />
android:text="@string/submit" />
<Button
android:id="@+id/beta_delete_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/button_bg"
android:text="@string/delete"
android:textColor="@color/white"
android:theme="@style/Widget.AppCompat.Button.Borderless.Colored"
android:visibility="gone" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
</LinearLayout>
</android.support.v7.widget.CardView>
</RelativeLayout>
</LinearLayout>
</android.support.v7.widget.CardView>

View File

@@ -0,0 +1,83 @@
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/related_links"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:visibility="visible" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:orientation="horizontal">
<com.github.florent37.shapeofview.shapes.CircleView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="5dp">
<!-- PlayStore link -->
<ImageView
android:id="@+id/to_play_store"
android:layout_width="@dimen/icon_size_med"
android:layout_height="@dimen/icon_size_med"
android:background="?colorAccent"
android:padding="10dp"
android:src="@drawable/app_playstore"
android:visibility="gone" />
</com.github.florent37.shapeofview.shapes.CircleView>
<com.github.florent37.shapeofview.shapes.CircleView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="5dp">
<!-- App by same dev -->
<ImageView
android:id="@+id/apps_by_same_developer"
android:layout_width="@dimen/icon_size_med"
android:layout_height="@dimen/icon_size_med"
android:background="?colorAccent"
android:padding="10dp"
android:src="@drawable/app_dev"
android:visibility="gone" />
</com.github.florent37.shapeofview.shapes.CircleView>
<com.github.florent37.shapeofview.shapes.CircleView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="5dp">
<!-- Share -->
<ImageButton
android:id="@+id/share"
android:layout_width="@dimen/icon_size_med"
android:layout_height="@dimen/icon_size_med"
android:background="?colorAccent"
android:padding="10dp"
android:src="@drawable/app_share" />
</com.github.florent37.shapeofview.shapes.CircleView>
<com.github.florent37.shapeofview.shapes.CircleView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="5dp">
<!-- System detail -->
<ImageButton
android:id="@+id/system_app_info"
android:layout_width="@dimen/icon_size_med"
android:layout_height="@dimen/icon_size_med"
android:background="?colorAccent"
android:padding="10dp"
android:src="@drawable/app_settings" />
</com.github.florent37.shapeofview.shapes.CircleView>
</LinearLayout>
</LinearLayout>

View File

@@ -1,34 +1,37 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
<android.support.v7.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/changes_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:visibility="gone">
android:visibility="gone"
app:cardUseCompatPadding="true">
<TextView
android:id="@+id/changes_header"
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="25dp"
android:layout_marginTop="5dp"
android:text="@string/details_changelog"
android:textAllCaps="true"
android:textIsSelectable="true"
android:textSize="14sp"
android:textStyle="bold"
android:visibility="gone" />
android:orientation="vertical"
android:padding="5dp">
<TextView
android:id="@+id/changes_upper"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="10dp"
android:layout_marginLeft="25dp"
android:layout_marginRight="25dp"
android:layout_marginTop="10dp"
android:autoLink="web|email"
android:lineSpacingExtra="5dp"
android:textIsSelectable="true"
android:visibility="gone" />
</LinearLayout>
<TextView
android:id="@+id/changes_header"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="10dp"
android:gravity="center|start"
android:text="@string/details_changelog"
android:textAllCaps="true"
android:textSize="14sp"
android:textStyle="bold" />
<TextView
android:id="@+id/changes_upper"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:autoLink="web|email"
android:lineSpacingExtra="5dp"
android:textIsSelectable="true" />
</LinearLayout>
</android.support.v7.widget.CardView>

View File

@@ -3,6 +3,8 @@
android:id="@+id/app_detail"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="5dp"
android:layout_marginTop="10dp"
android:orientation="horizontal"
android:visibility="gone"
android:weightSum="5">
@@ -15,17 +17,23 @@
android:gravity="center"
android:orientation="vertical">
<ImageButton
android:layout_width="@dimen/icon_size"
android:layout_height="@dimen/icon_size"
android:layout_margin="5dp"
android:background="@drawable/round_bg"
android:src="@drawable/app_downloads" />
<com.github.florent37.shapeofview.shapes.CircleView
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<ImageView
android:layout_width="@dimen/icon_size_med"
android:layout_height="@dimen/icon_size_med"
android:background="?colorAccent"
android:padding="10dp"
android:src="@drawable/app_downloads" />
</com.github.florent37.shapeofview.shapes.CircleView>
<TextView
android:id="@+id/installs"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:gravity="clip_horizontal" />
</LinearLayout>
@@ -37,17 +45,23 @@
android:gravity="center"
android:orientation="vertical">
<ImageButton
android:layout_width="@dimen/icon_size"
android:layout_height="@dimen/icon_size"
android:layout_margin="5dp"
android:background="@drawable/round_bg"
android:src="@drawable/app_ratings" />
<com.github.florent37.shapeofview.shapes.CircleView
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<ImageView
android:layout_width="@dimen/icon_size_med"
android:layout_height="@dimen/icon_size_med"
android:background="?colorAccent"
android:padding="10dp"
android:src="@drawable/app_ratings" />
</com.github.florent37.shapeofview.shapes.CircleView>
<TextView
android:id="@+id/rating"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
android:layout_height="wrap_content"
android:layout_marginTop="5dp" />
</LinearLayout>
<!-- Size -->
@@ -58,17 +72,23 @@
android:gravity="center"
android:orientation="vertical">
<ImageButton
android:layout_width="@dimen/icon_size"
android:layout_height="@dimen/icon_size"
android:layout_margin="5dp"
android:background="@drawable/round_bg"
android:src="@drawable/app_size" />
<com.github.florent37.shapeofview.shapes.CircleView
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<ImageView
android:layout_width="@dimen/icon_size_med"
android:layout_height="@dimen/icon_size_med"
android:background="?colorAccent"
android:padding="10dp"
android:src="@drawable/app_size" />
</com.github.florent37.shapeofview.shapes.CircleView>
<TextView
android:id="@+id/size"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
android:layout_height="wrap_content"
android:layout_marginTop="5dp" />
</LinearLayout>
<!-- Category -->
@@ -79,17 +99,23 @@
android:gravity="center"
android:orientation="vertical">
<ImageButton
android:layout_width="@dimen/icon_size"
android:layout_height="@dimen/icon_size"
android:layout_margin="5dp"
android:background="@drawable/round_bg"
android:src="@drawable/app_category" />
<com.github.florent37.shapeofview.shapes.CircleView
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<ImageView
android:layout_width="@dimen/icon_size_med"
android:layout_height="@dimen/icon_size_med"
android:background="?colorAccent"
android:padding="10dp"
android:src="@drawable/app_category" />
</com.github.florent37.shapeofview.shapes.CircleView>
<TextView
android:id="@+id/category"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
android:layout_height="wrap_content"
android:layout_marginTop="5dp" />
</LinearLayout>
<!-- Price -->
@@ -100,16 +126,23 @@
android:gravity="center"
android:orientation="vertical">
<ImageButton
android:layout_width="@dimen/icon_size"
android:layout_height="@dimen/icon_size"
android:layout_margin="5dp"
android:background="@drawable/round_bg"
android:src="@drawable/app_price" />
<com.github.florent37.shapeofview.shapes.CircleView
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<ImageView
android:layout_width="@dimen/icon_size_med"
android:layout_height="@dimen/icon_size_med"
android:background="?colorAccent"
android:padding="10dp"
android:src="@drawable/app_price" />
</com.github.florent37.shapeofview.shapes.CircleView>
<TextView
android:id="@+id/price"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
android:layout_height="wrap_content"
android:layout_marginTop="5dp" />
</LinearLayout>
</LinearLayout>

View File

@@ -1,45 +1,48 @@
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
<android.support.v7.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/general_card"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center">
android:visibility="gone"
app:cardUseCompatPadding="true">
<android.support.v7.widget.CardView
android:id="@+id/general_card"
<LinearLayout
android:id="@+id/general_details"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="5dp"
android:visibility="gone"
app:cardCornerRadius="2dp"
app:cardElevation="2dp"
app:contentPadding="5dp">
android:orientation="vertical"
android:padding="5dp"
android:visibility="visible">
<LinearLayout
android:id="@+id/general_details"
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:padding="5dp"
android:visibility="visible">
android:layout_marginStart="10dp"
android:gravity="center|start"
android:text="General"
android:textAllCaps="true"
android:textSize="14sp"
android:textStyle="bold" />
<TextView
android:id="@+id/developer"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<TextView
android:id="@+id/developer"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="10dp" />
<TextView
android:id="@+id/updated"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<TextView
android:id="@+id/google_dependencies"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
</LinearLayout>
</android.support.v7.widget.CardView>
</RelativeLayout>
<TextView
android:id="@+id/updated"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="10dp" />
<TextView
android:id="@+id/google_dependencies"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="10dp" />
</LinearLayout>
</android.support.v7.widget.CardView>

View File

@@ -0,0 +1,41 @@
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<ImageView
android:id="@+id/icon"
android:layout_width="@dimen/icon_size"
android:layout_height="@dimen/icon_size"
android:layout_marginEnd="6dp"
android:contentDescription="@string/content_description_app_icon"
android:src="@drawable/ic_placeholder" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:orientation="vertical">
<TextView
android:id="@+id/displayName"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textSize="18sp"
android:textStyle="bold" />
<TextView
android:id="@+id/packageName"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:maxLines="1"
android:textSize="14sp" />
<TextView
android:id="@+id/versionString"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:maxLines="1"
android:textSize="14sp" />
</LinearLayout>
</LinearLayout>

View File

@@ -1,20 +1,16 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
<android.support.v7.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/changes_container"
android:id="@+id/more_card"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
android:visibility="gone"
app:cardUseCompatPadding="true">
<android.support.v7.widget.CardView
android:id="@+id/more_card"
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="5dp"
android:visibility="gone"
app:cardCornerRadius="2dp"
app:cardElevation="2dp"
app:contentPadding="5dp">
android:orientation="vertical"
android:padding="5dp">
<TextView
android:id="@+id/description_header"
@@ -33,7 +29,6 @@
android:id="@+id/description_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="32dp"
android:orientation="vertical"
android:visibility="gone">
@@ -46,12 +41,13 @@
android:paddingTop="6dip" />
<LinearLayout
android:id="@+id/more_changes_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="10dp"
android:layout_marginTop="10dp"
android:background="@color/changelog_bg"
android:orientation="vertical">
android:orientation="vertical"
android:visibility="gone">
<TextView
android:id="@+id/changes_title"
@@ -60,10 +56,8 @@
android:layout_margin="10dp"
android:text="@string/details_changelog"
android:textAllCaps="true"
android:textColor="@color/changelog_txt"
android:textSize="14sp"
android:textStyle="bold"
android:visibility="gone" />
android:textStyle="bold" />
<TextView
android:id="@+id/changes"
@@ -72,9 +66,7 @@
android:layout_margin="10dp"
android:autoLink="web|email"
android:lineSpacingExtra="5dp"
android:textColor="@color/changelog_txt"
android:textIsSelectable="true"
android:visibility="gone" />
android:textIsSelectable="true" />
</LinearLayout>
<LinearLayout
@@ -83,7 +75,6 @@
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:orientation="vertical" />
</LinearLayout>
</android.support.v7.widget.CardView>
</LinearLayout>
</LinearLayout>
</android.support.v7.widget.CardView>

View File

@@ -1,18 +1,16 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
<android.support.v7.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/changes_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
app:cardUseCompatPadding="true">
<android.support.v7.widget.CardView
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="5dp"
app:cardCornerRadius="2dp"
app:cardElevation="2dp"
app:contentPadding="5dp">
android:orientation="vertical"
android:padding="5dp">
<TextView
android:id="@+id/permissions_header"
@@ -47,5 +45,5 @@
android:text="@string/no_permissions"
android:visibility="gone" />
</LinearLayout>
</android.support.v7.widget.CardView>
</LinearLayout>
</LinearLayout>
</android.support.v7.widget.CardView>

View File

@@ -1,19 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
<android.support.v7.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/reviews_card"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
android:visibility="gone"
app:cardUseCompatPadding="true">
<android.support.v7.widget.CardView
android:id="@+id/reviews_card"
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="5dp"
android:visibility="gone"
app:cardCornerRadius="2dp"
app:cardElevation="2dp"
app:contentPadding="5dp">
android:orientation="vertical"
android:padding="5dp">
<TextView
android:id="@+id/reviews_header"
@@ -79,16 +77,14 @@
android:layout_width="@dimen/icon_size_small"
android:layout_height="@dimen/icon_size_small"
android:contentDescription="@string/content_description_review_edit"
android:src="@drawable/ic_edit"
android:tint="@color/darkGray" />
android:src="@drawable/ic_edit" />
<ImageView
android:id="@+id/user_review_delete"
android:layout_width="@dimen/icon_size_small"
android:layout_height="@dimen/icon_size_small"
android:contentDescription="@string/content_description_review_delete"
android:src="@drawable/ic_delete"
android:tint="@color/darkGray" />
android:src="@drawable/ic_delete" />
</LinearLayout>
<LinearLayout
@@ -193,9 +189,10 @@
android:contentDescription="@string/content_description_review_next_page"
android:src="@drawable/ic_chevron_right" />
</LinearLayout>
</LinearLayout>
</android.support.v7.widget.CardView>
</LinearLayout>
</LinearLayout>
</android.support.v7.widget.CardView>

View File

@@ -5,9 +5,10 @@
android:scrollbars="none"
app:layout_behavior="@string/appbar_scrolling_view_behavior">
<RelativeLayout
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
android:layout_height="match_parent"
android:orientation="vertical">
<!--App Video -->
<RelativeLayout
@@ -33,177 +34,60 @@
</RelativeLayout>
<!-- App Icon & Name -->
<LinearLayout
<android.support.v7.widget.CardView
android:id="@+id/main"
android:layout_width="wrap_content"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/app_video"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_marginTop="5dp"
android:gravity="center_vertical">
<ImageButton
android:id="@+id/icon"
android:layout_width="@dimen/icon_size"
android:layout_height="@dimen/icon_size"
android:layout_marginEnd="6dp"
android:background="@null"
android:contentDescription="@string/content_description_app_icon"
android:scaleType="fitXY"
android:src="@drawable/ic_placeholder" />
app:cardUseCompatPadding="true">
<LinearLayout
android:layout_width="wrap_content"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:orientation="vertical">
android:orientation="vertical"
android:padding="5dp">
<!-- App Info : Icon, Name, Developer, Version -->
<include layout="@layout/app_info_inc" />
<!-- Action : Download, Update, Uninstall -->
<include layout="@layout/app_actions_inc" />
<in.dragons.galaxy.NumberProgressBar
android:id="@+id/download_progress"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/main_action"
android:layout_marginLeft="15dp"
android:layout_marginRight="15dp"
android:layout_marginTop="5dp"
android:visibility="gone"
app:progress_reached_bar_height="2.5dp"
app:progress_reached_color="@color/colorPrimary"
app:progress_text_color="@color/colorAccent"
app:progress_text_size="12sp"
app:progress_unreached_bar_height="2dp"
app:progress_unreached_color="@color/lightGray" />
<TextView
android:id="@+id/displayName"
android:id="@+id/contains_ads"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textSize="18sp"
android:textStyle="bold" />
android:layout_below="@id/download_progress"
android:layout_marginEnd="15dp"
android:gravity="end" />
<TextView
android:id="@+id/packageName"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:maxLines="1"
android:textSize="14sp" />
<TextView
android:id="@+id/versionString"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:maxLines="1"
android:textSize="14sp" />
<!-- App Details : Type, Size, Rating -->
<include layout="@layout/app_details_inc" />
</LinearLayout>
</LinearLayout>
<!-- Action : Download, Update, Uninstall -->
<LinearLayout
android:id="@+id/main_action"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/main"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_marginTop="10dp"
android:gravity="end"
android:orientation="horizontal"
android:weightSum="3">
<android.support.v7.widget.AppCompatButton
android:id="@+id/uninstall"
android:layout_width="0dp"
android:layout_height="48dp"
android:layout_weight="1"
android:background="@drawable/button_bg_outine"
android:maxLines="1"
android:text="@string/details_uninstall"
android:visibility="gone" />
<android.support.v7.widget.AppCompatButton
android:id="@+id/download"
android:layout_width="0dp"
android:layout_height="48dp"
android:layout_weight="1"
android:background="@drawable/button_bg"
android:contentDescription="@string/content_description_download_options"
android:maxLines="1"
android:text="@string/details_download"
android:visibility="gone" />
<android.support.v7.widget.AppCompatButton
android:id="@+id/cancel"
android:layout_width="0dp"
android:layout_height="48dp"
android:layout_weight="1"
android:background="@drawable/button_bg_outine"
android:maxLines="1"
android:text="@string/details_cancel"
android:visibility="gone" />
<android.support.v7.widget.AppCompatButton
android:id="@+id/install"
android:layout_width="0dp"
android:layout_height="48dp"
android:layout_weight="1"
android:background="@drawable/button_bg_outine"
android:maxLines="1"
android:text="@string/details_install"
android:visibility="gone" />
<android.support.v7.widget.AppCompatButton
android:id="@+id/run"
android:layout_width="0dp"
android:layout_height="48dp"
android:layout_weight="1"
android:background="@drawable/button_bg"
android:maxLines="1"
android:text="@string/details_run"
android:visibility="gone" />
</LinearLayout>
<in.dragons.galaxy.NumberProgressBar
android:id="@+id/download_progress"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/main_action"
android:layout_marginLeft="15dp"
android:layout_marginRight="15dp"
android:layout_marginTop="5dp"
android:visibility="gone"
app:progress_reached_bar_height="2.5dp"
app:progress_reached_color="@color/colorPrimary"
app:progress_text_color="@color/colorAccent"
app:progress_text_size="12sp"
app:progress_unreached_bar_height="2dp"
app:progress_unreached_color="@color/lightGray" />
<TextView
android:id="@+id/contains_ads"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/download_progress"
android:layout_marginEnd="15dp"
android:gravity="end" />
<View
android:id="@+id/divider_top"
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_below="@id/contains_ads"
android:layout_marginBottom="5dp"
android:layout_marginLeft="15dp"
android:layout_marginRight="15dp"
android:layout_marginTop="10dp"
android:background="@color/gray"
android:visibility="gone" />
</android.support.v7.widget.CardView>
<!-- App details -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@id/divider_top"
android:orientation="vertical">
<!-- App Details : Type, Size, Rating -->
<include layout="@layout/app_details_inc" />
<View
android:id="@+id/divider_bottom"
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginBottom="5dp"
android:layout_marginLeft="15dp"
android:layout_marginRight="15dp"
android:layout_marginTop="10dp"
android:background="@color/gray"
android:visibility="gone" />
<!-- Changelog -->
<include layout="@layout/app_changelog_inc" />
<!-- Read More -->
@@ -213,7 +97,6 @@
android:id="@+id/screenshots_gallery"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="5dp"
android:spacing="15dp" />
<!-- Reviews -->
<include layout="@layout/app_reviews_inc" />
@@ -221,55 +104,8 @@
<include layout="@layout/app_perm_inc" />
<!-- Beta -->
<include layout="@layout/app_beta_inc" />
<!-- General -->
<include layout="@layout/app_gen_inc" />
<!-- Related Apps -->
<LinearLayout
android:id="@+id/related_links"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:visibility="visible" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:orientation="horizontal">
<!-- Playstore link -->
<ImageButton
android:id="@+id/to_play_store"
android:layout_width="@dimen/icon_size"
android:layout_height="@dimen/icon_size"
android:background="@drawable/round_bg"
android:src="@drawable/app_playstore" />
<!-- App by same dev -->
<ImageButton
android:id="@+id/apps_by_same_developer"
android:layout_width="@dimen/icon_size"
android:layout_height="@dimen/icon_size"
android:background="@drawable/round_bg"
android:src="@drawable/app_dev"
android:visibility="gone" />
<!-- Share -->
<ImageButton
android:id="@+id/share"
android:layout_width="@dimen/icon_size"
android:layout_height="@dimen/icon_size"
android:background="@drawable/round_bg"
android:src="@drawable/app_share" />
<!-- System detail -->
<ImageButton
android:id="@+id/system_app_info"
android:layout_width="@dimen/icon_size"
android:layout_height="@dimen/icon_size"
android:background="@drawable/round_bg"
android:src="@drawable/app_settings" />
</LinearLayout>
<!-- Bottom Actions -->
<include layout="@layout/app_bottom_actions_inc" />
<ProgressBar
android:id="@+id/progress"
@@ -282,5 +118,5 @@
android:visibility="gone" />
</LinearLayout>
</RelativeLayout>
</LinearLayout>
</android.support.v4.widget.NestedScrollView>