package me.ccrama.redditslide.Activities;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.view.KeyEvent;
import android.view.View;
import android.view.inputmethod.EditorInfo;
import android.widget.EditText;
import android.widget.LinearLayout;
import android.widget.TextView;
import java.util.ArrayList;
import me.ccrama.redditslide.PostMatch;
import me.ccrama.redditslide.R;
import me.ccrama.redditslide.Reddit;
import me.ccrama.redditslide.SettingValues;
/**
* Created by l3d00m on 11/13/2015.
*/
public class SettingsExternalBrowser extends BaseActivityAnim {
EditText domain;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
applyColorTheme();
Settings.changed = true;
setContentView(R.layout.activity_settings_openexternal);
setupAppBar(R.id.toolbar, "Force external browser", true, true);
domain = (EditText) findViewById(R.id.domain);
domain.setOnEditorActionListener(new EditText.OnEditorActionListener() {
@Override
public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
if (actionId == EditorInfo.IME_ACTION_DONE) {
SettingValues.alwaysExternal = SettingValues.alwaysExternal + ", " + domain.getText().toString();
domain.setText("");
updateFilters();
}
return false;
}
});
updateFilters();
}
public ArrayList<String> domains = new ArrayList<>();
public void updateFilters() {
domains = new ArrayList<>();
((LinearLayout) findViewById(R.id.domainlist)).removeAllViews();
for (String s : SettingValues.alwaysExternal.replaceAll("^[,\\s]+", "").split("[,\\s]+")) {
if (!s.isEmpty()) {
s = s.trim();
final String finalS = s;
domains.add(finalS);
final View t = getLayoutInflater().inflate(R.layout.account_textview, ((LinearLayout) findViewById(R.id.domainlist)), false);
((TextView) t.findViewById(R.id.name)).setText(s);
t.findViewById(R.id.remove).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
domains.remove(finalS);
SettingValues.alwaysExternal = Reddit.arrayToString(domains);
updateFilters();
}
});
((LinearLayout) findViewById(R.id.domainlist)).addView(t);
}
}
}
@Override
public void onPause() {
super.onPause();
SharedPreferences.Editor e = SettingValues.prefs.edit();
e.putString(SettingValues.PREF_ALWAYS_EXTERNAL, Reddit.arrayToString(domains));
e.apply();
PostMatch.externalDomain = null;
SettingValues.alwaysExternal = SettingValues.prefs.getString(SettingValues.PREF_ALWAYS_EXTERNAL, "");
}
}