Address PR comments
This commit is contained in:
@@ -504,8 +504,10 @@ public class BraveVpnPreferences extends BravePreferenceFragment implements Brav
|
||||
BraveVpnUtils.showProgressDialog(
|
||||
getActivity(), getResources().getString(R.string.resetting_config));
|
||||
new Handler().postDelayed(() -> {
|
||||
BraveVpnUtils.resetProfileConfiguration(getActivity());
|
||||
new Handler().post(() -> updateSummaries());
|
||||
if (isResumed()) {
|
||||
BraveVpnUtils.resetProfileConfiguration(getActivity());
|
||||
new Handler().post(() -> updateSummaries());
|
||||
}
|
||||
}, INVALIDATE_CREDENTIAL_TIMER_COUNT);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -36,4 +36,4 @@ public class ApplicationDataModel {
|
||||
public boolean isSystemApp() {
|
||||
return mIsSystemApp;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+7
-6
@@ -23,14 +23,10 @@ import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
public class ApplicationListAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> {
|
||||
interface OnApplicationClickListener {
|
||||
void onApplicationCLick(
|
||||
ApplicationDataModel applicationDataModel, int position, boolean isExcludeApps);
|
||||
}
|
||||
|
||||
private final SortedList<ApplicationDataModel> mApplicationList;
|
||||
private final OnApplicationClickListener mOnApplicationClickListener;
|
||||
private final boolean mIsExcludedApps;
|
||||
private static final int ANIMATION_DURATION = 1000;
|
||||
|
||||
public Set<String> getApplicationPackages() {
|
||||
Set<String> applicationSet = new HashSet<>();
|
||||
@@ -120,7 +116,7 @@ public class ApplicationListAdapter extends RecyclerView.Adapter<RecyclerView.Vi
|
||||
|
||||
private void setFadeAnimation(View view) {
|
||||
AlphaAnimation anim = new AlphaAnimation(0.0f, 1.0f);
|
||||
anim.setDuration(1000);
|
||||
anim.setDuration(ANIMATION_DURATION);
|
||||
view.startAnimation(anim);
|
||||
}
|
||||
|
||||
@@ -149,4 +145,9 @@ public class ApplicationListAdapter extends RecyclerView.Adapter<RecyclerView.Vi
|
||||
mActionIcon = itemView.findViewById(R.id.action_icon);
|
||||
}
|
||||
}
|
||||
|
||||
interface OnApplicationClickListener {
|
||||
void onApplicationCLick(
|
||||
ApplicationDataModel applicationDataModel, int position, boolean isExcludeApps);
|
||||
}
|
||||
}
|
||||
|
||||
+23
-18
@@ -11,6 +11,7 @@ import android.content.pm.ApplicationInfo;
|
||||
import android.content.pm.PackageInfo;
|
||||
import android.content.pm.PackageManager;
|
||||
|
||||
import androidx.lifecycle.LiveData;
|
||||
import androidx.lifecycle.MutableLiveData;
|
||||
import androidx.lifecycle.ViewModel;
|
||||
|
||||
@@ -23,25 +24,29 @@ import java.util.concurrent.ExecutorService;
|
||||
import java.util.concurrent.Executors;
|
||||
|
||||
public class ApplicationViewModel extends ViewModel {
|
||||
MutableLiveData<List<ApplicationDataModel>> excludedApplicationDataLiveData;
|
||||
MutableLiveData<List<ApplicationDataModel>> applicationDataLiveData;
|
||||
MutableLiveData<List<ApplicationDataModel>> systemApplicationDataLiveData;
|
||||
private final MutableLiveData<List<ApplicationDataModel>>
|
||||
mExcludedApplicationDataMutableLiveData = new MutableLiveData<>();
|
||||
LiveData<List<ApplicationDataModel>> mExcludedApplicationDataLiveData =
|
||||
mExcludedApplicationDataMutableLiveData;
|
||||
|
||||
public ApplicationViewModel() {
|
||||
excludedApplicationDataLiveData = new MutableLiveData<>();
|
||||
applicationDataLiveData = new MutableLiveData<>();
|
||||
systemApplicationDataLiveData = new MutableLiveData<>();
|
||||
private final MutableLiveData<List<ApplicationDataModel>> mApplicationDataMutableLiveData =
|
||||
new MutableLiveData<>();
|
||||
LiveData<List<ApplicationDataModel>> mApplicationDataLiveData = mApplicationDataMutableLiveData;
|
||||
|
||||
private final MutableLiveData<List<ApplicationDataModel>>
|
||||
mSystemApplicationDataMutableLiveData = new MutableLiveData<>();
|
||||
LiveData<List<ApplicationDataModel>> mSystemApplicationDataLiveData =
|
||||
mSystemApplicationDataMutableLiveData;
|
||||
|
||||
public LiveData<List<ApplicationDataModel>> getExcludedApplicationDataLiveData() {
|
||||
return mExcludedApplicationDataLiveData;
|
||||
}
|
||||
|
||||
public MutableLiveData<List<ApplicationDataModel>> getExcludedApplicationDataLiveData() {
|
||||
return excludedApplicationDataLiveData;
|
||||
public LiveData<List<ApplicationDataModel>> getApplicationDataMutableLiveData() {
|
||||
return mApplicationDataLiveData;
|
||||
}
|
||||
|
||||
public MutableLiveData<List<ApplicationDataModel>> getApplicationDataMutableLiveData() {
|
||||
return applicationDataLiveData;
|
||||
}
|
||||
public MutableLiveData<List<ApplicationDataModel>> getSystemApplicationDataMutableLiveData() {
|
||||
return systemApplicationDataLiveData;
|
||||
public LiveData<List<ApplicationDataModel>> getSystemApplicationDataMutableLiveData() {
|
||||
return mSystemApplicationDataLiveData;
|
||||
}
|
||||
|
||||
public void getApplications(Activity activity) {
|
||||
@@ -71,9 +76,9 @@ public class ApplicationViewModel extends ViewModel {
|
||||
applicationDataModels.add(applicationDataModel);
|
||||
}
|
||||
}
|
||||
excludedApplicationDataLiveData.postValue(excludedApplicationDataModels);
|
||||
systemApplicationDataLiveData.postValue(systemApplicationDataModels);
|
||||
applicationDataLiveData.postValue(applicationDataModels);
|
||||
mExcludedApplicationDataMutableLiveData.postValue(excludedApplicationDataModels);
|
||||
mSystemApplicationDataMutableLiveData.postValue(systemApplicationDataModels);
|
||||
mApplicationDataMutableLiveData.postValue(applicationDataModels);
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
@@ -26,7 +26,6 @@ import androidx.recyclerview.widget.LinearLayoutManager;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
import org.chromium.chrome.R;
|
||||
import org.chromium.chrome.browser.firstrun.BraveFirstRunFlowSequencer;
|
||||
import org.chromium.chrome.browser.init.AsyncInitializationActivity;
|
||||
import org.chromium.chrome.browser.vpn.BraveVpnNativeWorker;
|
||||
import org.chromium.chrome.browser.vpn.utils.BraveVpnPrefUtils;
|
||||
@@ -34,7 +33,6 @@ import org.chromium.chrome.browser.vpn.utils.BraveVpnUtils;
|
||||
|
||||
public class SplitTunnelActivity extends AsyncInitializationActivity
|
||||
implements LifecycleOwner, ApplicationListAdapter.OnApplicationClickListener {
|
||||
private BraveFirstRunFlowSequencer mFirstRunFlowSequencer;
|
||||
private RecyclerView mRecyclerViewSystemApps;
|
||||
private ApplicationListAdapter mRecyclerViewAdapterExcludedApps;
|
||||
private ApplicationListAdapter mRecyclerViewAdapterApps;
|
||||
@@ -50,32 +48,20 @@ public class SplitTunnelActivity extends AsyncInitializationActivity
|
||||
actionBar.setDisplayHomeAsUpEnabled(true);
|
||||
actionBar.setTitle(getResources().getString(R.string.split_tunneling));
|
||||
|
||||
LinearLayoutManager linearLayoutManager = new LinearLayoutManager(this);
|
||||
linearLayoutManager.setOrientation(LinearLayoutManager.VERTICAL);
|
||||
|
||||
DividerItemDecoration dividerItemDecoration =
|
||||
new DividerItemDecoration(SplitTunnelActivity.this, LinearLayoutManager.VERTICAL);
|
||||
|
||||
RecyclerView recyclerViewExcludedApps = findViewById(R.id.rv_excluded_apps);
|
||||
recyclerViewExcludedApps.setLayoutManager(linearLayoutManager);
|
||||
recyclerViewExcludedApps.addItemDecoration(dividerItemDecoration);
|
||||
mRecyclerViewAdapterExcludedApps = new ApplicationListAdapter(this, true);
|
||||
recyclerViewExcludedApps.setAdapter(mRecyclerViewAdapterExcludedApps);
|
||||
|
||||
LinearLayoutManager linearLayoutManager2 = new LinearLayoutManager(this);
|
||||
linearLayoutManager.setOrientation(LinearLayoutManager.VERTICAL);
|
||||
|
||||
RecyclerView recyclerViewApps = findViewById(R.id.rv_apps);
|
||||
recyclerViewApps.setLayoutManager(linearLayoutManager2);
|
||||
recyclerViewApps.addItemDecoration(dividerItemDecoration);
|
||||
mRecyclerViewAdapterApps = new ApplicationListAdapter(this, false);
|
||||
recyclerViewApps.setAdapter(mRecyclerViewAdapterApps);
|
||||
|
||||
LinearLayoutManager linearLayoutManager3 = new LinearLayoutManager(this);
|
||||
linearLayoutManager3.setOrientation(LinearLayoutManager.VERTICAL);
|
||||
|
||||
mRecyclerViewSystemApps = findViewById(R.id.rv_system_apps);
|
||||
mRecyclerViewSystemApps.setLayoutManager(linearLayoutManager3);
|
||||
mRecyclerViewSystemApps.addItemDecoration(dividerItemDecoration);
|
||||
mRecyclerViewAdapterSystemApps = new ApplicationListAdapter(this, false);
|
||||
mRecyclerViewSystemApps.setAdapter(mRecyclerViewAdapterSystemApps);
|
||||
@@ -116,13 +102,7 @@ public class SplitTunnelActivity extends AsyncInitializationActivity
|
||||
|
||||
@Override
|
||||
protected void triggerLayoutInflation() {
|
||||
mFirstRunFlowSequencer = new BraveFirstRunFlowSequencer(this) {
|
||||
@Override
|
||||
public void onFlowIsKnown(Bundle freProperties) {
|
||||
initializeViews();
|
||||
}
|
||||
};
|
||||
mFirstRunFlowSequencer.start();
|
||||
initializeViews();
|
||||
onInitialLayoutInflationComplete();
|
||||
}
|
||||
|
||||
@@ -173,7 +153,11 @@ public class SplitTunnelActivity extends AsyncInitializationActivity
|
||||
mRecyclerViewAdapterApps.removeApplication(applicationDataModel);
|
||||
}
|
||||
}
|
||||
findViewById(R.id.empty_excluded_apps_text).setVisibility(mRecyclerViewAdapterExcludedApps.getApplicationPackages().size() > 0 ? View.GONE : View.VISIBLE);
|
||||
findViewById(R.id.empty_excluded_apps_text)
|
||||
.setVisibility(
|
||||
mRecyclerViewAdapterExcludedApps.getApplicationPackages().size() > 0
|
||||
? View.GONE
|
||||
: View.VISIBLE);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -181,4 +165,4 @@ public class SplitTunnelActivity extends AsyncInitializationActivity
|
||||
public boolean shouldStartGpuProcess() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -54,6 +54,7 @@
|
||||
android:id="@+id/rv_excluded_apps"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
app:layoutManager="LinearLayoutManager"
|
||||
android:nestedScrollingEnabled="true" />
|
||||
|
||||
<TextView
|
||||
@@ -67,6 +68,7 @@
|
||||
android:id="@+id/rv_apps"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
app:layoutManager="LinearLayoutManager"
|
||||
android:nestedScrollingEnabled="true" />
|
||||
|
||||
<TextView
|
||||
@@ -90,6 +92,7 @@
|
||||
android:id="@+id/rv_system_apps"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
app:layoutManager="LinearLayoutManager"
|
||||
android:visibility="gone"
|
||||
android:nestedScrollingEnabled="true" />
|
||||
|
||||
@@ -97,4 +100,4 @@
|
||||
|
||||
</androidx.core.widget.NestedScrollView>
|
||||
|
||||
</FrameLayout>
|
||||
</FrameLayout>
|
||||
|
||||
@@ -7,8 +7,7 @@
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="horizontal"
|
||||
android:paddingTop="8dp"
|
||||
android:paddingBottom="8dp">
|
||||
android:paddingVertical="8dp">
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/app_icon"
|
||||
@@ -23,8 +22,7 @@
|
||||
style="?android:attr/textAppearanceMedium"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="16dp"
|
||||
android:layout_marginEnd="16dp"
|
||||
android:layout_marginHorizontal="16dp"
|
||||
android:layout_weight="1"
|
||||
android:ellipsize="end"
|
||||
android:maxLines="1"
|
||||
|
||||
@@ -5,4 +5,4 @@
|
||||
android:id="@+id/action_save"
|
||||
android:title="@string/save"
|
||||
app:showAsAction="always" />
|
||||
</menu>
|
||||
</menu>
|
||||
|
||||
Reference in New Issue
Block a user