added auto refresh confirm

fixed tab type
This commit is contained in:
Mariotaku Lee 2016-12-17 12:59:07 +08:00
parent 861bab1c86
commit 3320de3f03
6 changed files with 28 additions and 11 deletions

View File

@ -173,9 +173,12 @@ public class Tab implements Parcelable {
public static String getTypeAlias(String key) {
if (key == null) return null;
switch (key) {
case "mentions":
case "mentions_timeline":
case "activities_about_me":
return CustomTabType.NOTIFICATIONS_TIMELINE;
case "home":
return CustomTabType.HOME_TIMELINE;
}
return key;
}

View File

@ -79,7 +79,7 @@ public abstract class AccountsListPreference extends PreferenceCategory implemen
removeAll();
for (final AccountDetails account : accounts) {
final AccountItemPreference preference = new AccountItemPreference(getContext(), account,
mSwitchKey, mSwitchDefault);
mSwitchKey, getSwitchDefault());
setupPreference(preference, account);
addPreference(preference);
}
@ -97,6 +97,10 @@ public abstract class AccountsListPreference extends PreferenceCategory implemen
protected abstract void setupPreference(AccountItemPreference preference, AccountDetails account);
protected boolean getSwitchDefault() {
return mSwitchDefault;
}
public static final class AccountItemPreference extends Preference implements ImageLoadingListener,
OnSharedPreferenceChangeListener {

View File

@ -47,4 +47,8 @@ public class AutoRefreshAccountsListPreference extends AccountsListPreference {
args.putParcelable(EXTRA_ACCOUNT, account);
}
@Override
protected boolean getSwitchDefault() {
return getPreferenceManager().getSharedPreferences().getBoolean(KEY_DEFAULT_AUTO_REFRESH, false);
}
}

View File

@ -26,6 +26,7 @@ import android.app.Dialog
import android.app.PendingIntent
import android.app.SearchManager
import android.content.Context
import android.content.DialogInterface
import android.content.Intent
import android.content.SharedPreferences.OnSharedPreferenceChangeListener
import android.content.res.Configuration
@ -72,10 +73,7 @@ import org.mariotaku.twidere.activity.iface.IControlBarActivity
import org.mariotaku.twidere.adapter.SupportTabsAdapter
import org.mariotaku.twidere.annotation.CustomTabType
import org.mariotaku.twidere.annotation.ReadPositionTag
import org.mariotaku.twidere.constant.KeyboardShortcutConstants
import org.mariotaku.twidere.constant.SharedPreferenceConstants
import org.mariotaku.twidere.constant.defaultAutoRefreshKeyAsked
import org.mariotaku.twidere.constant.drawerTutorialCompleted
import org.mariotaku.twidere.constant.*
import org.mariotaku.twidere.fragment.*
import org.mariotaku.twidere.fragment.iface.RefreshScrollTopInterface
import org.mariotaku.twidere.fragment.iface.SupportFragmentCallback
@ -758,7 +756,8 @@ class HomeActivity : BaseActivity(), OnClickListener, OnPageChangeListener, Supp
}
private fun showAutoRefreshConfirm() {
val df = AutoRefreshConfirmDialogFragment()
df.show(supportFragmentManager, "auto_refresh_confirm")
}
private fun setTabPosition(initialTab: Int) {
@ -931,13 +930,18 @@ class HomeActivity : BaseActivity(), OnClickListener, OnPageChangeListener, Supp
builder.setTitle(R.string.auto_refresh)
builder.setMessage(R.string.message_auto_refresh_confirm)
builder.setPositiveButton(android.R.string.ok) { dialog, which ->
kPreferences[defaultAutoRefreshKey] = true
}
builder.setPositiveButton(R.string.no_thanks) { dialog, which ->
builder.setNegativeButton(R.string.no_thanks) { dialog, which ->
kPreferences[defaultAutoRefreshKey] = false
}
return builder.create()
}
override fun onDismiss(dialog: DialogInterface?) {
kPreferences[defaultAutoRefreshKeyAsked] = true
super.onDismiss(dialog)
}
}
companion object {

View File

@ -20,7 +20,6 @@
package org.mariotaku.twidere.fragment
import android.content.SharedPreferences
import org.mariotaku.kpreferences.get
import org.mariotaku.twidere.R
import org.mariotaku.twidere.constant.SharedPreferenceConstants.KEY_AUTO_REFRESH
import org.mariotaku.twidere.constant.defaultAutoRefreshKey
@ -32,7 +31,7 @@ class AccountRefreshSettingsFragment : BaseAccountPreferenceFragment() {
get() = R.xml.preferences_account_refresh
override val switchPreferenceDefault: Boolean
get() = preferenceManager.sharedPreferences[defaultAutoRefreshKey]
get() = kPreferences[defaultAutoRefreshKey]
override val switchPreferenceKey: String?
get() = KEY_AUTO_REFRESH

View File

@ -28,6 +28,7 @@ import android.os.Bundle
import android.provider.Settings
import android.support.v7.preference.Preference
import android.support.v7.preference.PreferenceFragmentCompat
import org.mariotaku.kpreferences.KPreferences
import org.mariotaku.twidere.preference.RingtonePreference
import org.mariotaku.twidere.util.KeyboardShortcutsHandler
@ -43,6 +44,8 @@ abstract class BasePreferenceFragment : PreferenceFragmentCompat() {
lateinit var keyboardShortcutHandler: KeyboardShortcutsHandler
@Inject
lateinit var userColorNameManager: UserColorNameManager
@Inject
lateinit var kPreferences: KPreferences
override fun onAttach(context: Context) {
super.onAttach(context)