mirror of https://codeberg.org/gitnex/GitNex.git
90 lines
3.2 KiB
Java
90 lines
3.2 KiB
Java
package org.mian.gitnex.fragments;
|
|
|
|
import android.content.ActivityNotFoundException;
|
|
import android.content.Intent;
|
|
import android.net.Uri;
|
|
import android.os.Bundle;
|
|
import android.view.LayoutInflater;
|
|
import android.view.View;
|
|
import android.view.ViewGroup;
|
|
import android.widget.LinearLayout;
|
|
import androidx.annotation.NonNull;
|
|
import androidx.annotation.Nullable;
|
|
import androidx.fragment.app.Fragment;
|
|
import org.mian.gitnex.R;
|
|
import org.mian.gitnex.activities.SettingsAppearanceActivity;
|
|
import org.mian.gitnex.activities.SettingsDraftsActivity;
|
|
import org.mian.gitnex.activities.SettingsFileViewerActivity;
|
|
import org.mian.gitnex.activities.SettingsReportsActivity;
|
|
import org.mian.gitnex.activities.SettingsSecurityActivity;
|
|
import org.mian.gitnex.activities.SettingsTranslationActivity;
|
|
import org.mian.gitnex.helpers.TinyDB;
|
|
|
|
/**
|
|
* Author M M Arif
|
|
*/
|
|
|
|
public class SettingsFragment extends Fragment {
|
|
|
|
@Nullable
|
|
@Override
|
|
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
|
|
|
|
View v = inflater.inflate(R.layout.fragment_settings, container, false);
|
|
|
|
LinearLayout appearanceFrame = v.findViewById(R.id.appearanceFrame);
|
|
LinearLayout fileViewerFrame = v.findViewById(R.id.fileViewerFrame);
|
|
LinearLayout draftsFrame = v.findViewById(R.id.draftsFrame);
|
|
LinearLayout securityFrame = v.findViewById(R.id.securityFrame);
|
|
LinearLayout languagesFrame = v.findViewById(R.id.languagesFrame);
|
|
LinearLayout reportsFrame = v.findViewById(R.id.reportsFrame);
|
|
LinearLayout rateAppFrame = v.findViewById(R.id.rateAppFrame);
|
|
LinearLayout aboutAppFrame = v.findViewById(R.id.aboutAppFrame);
|
|
|
|
appearanceFrame.setOnClickListener(v1 -> startActivity(new Intent(getContext(), SettingsAppearanceActivity.class)));
|
|
|
|
fileViewerFrame.setOnClickListener(v1 -> startActivity(new Intent(getContext(), SettingsFileViewerActivity.class)));
|
|
|
|
draftsFrame.setOnClickListener(v1 -> startActivity(new Intent(getContext(), SettingsDraftsActivity.class)));
|
|
|
|
securityFrame.setOnClickListener(v1 -> startActivity(new Intent(getContext(), SettingsSecurityActivity.class)));
|
|
|
|
languagesFrame.setOnClickListener(v1 -> startActivity(new Intent(getContext(), SettingsTranslationActivity.class)));
|
|
|
|
reportsFrame.setOnClickListener(v1 -> startActivity(new Intent(getContext(), SettingsReportsActivity.class)));
|
|
|
|
rateAppFrame.setOnClickListener(aboutApp -> rateThisApp());
|
|
|
|
aboutAppFrame.setOnClickListener(aboutApp -> requireActivity().getSupportFragmentManager().beginTransaction().replace(R.id.fragment_container, new AboutFragment()).commit());
|
|
|
|
return v;
|
|
|
|
}
|
|
|
|
public void rateThisApp() {
|
|
|
|
try {
|
|
startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=" + requireActivity().getPackageName())));
|
|
}
|
|
catch(ActivityNotFoundException e) {
|
|
startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("https://play.google.com/store/apps/details?id=" + requireActivity().getPackageName())));
|
|
}
|
|
}
|
|
|
|
@Override
|
|
public void onResume() {
|
|
|
|
super.onResume();
|
|
|
|
TinyDB tinyDb = new TinyDB(getContext());
|
|
|
|
if(tinyDb.getBoolean("refreshParent")) {
|
|
requireActivity().recreate();
|
|
requireActivity().overridePendingTransition(0, 0);
|
|
tinyDb.putBoolean("refreshParent", false);
|
|
}
|
|
|
|
}
|
|
|
|
}
|