This commit is contained in:
Mariotaku Lee 2016-03-15 21:59:08 +08:00
parent f550740103
commit 7c8c73a152
5 changed files with 30 additions and 23 deletions

View File

@ -90,7 +90,6 @@ import org.mariotaku.twidere.util.KeyboardShortcutsHandler.KeyboardShortcutCallb
import org.mariotaku.twidere.util.MultiSelectEventHandler;
import org.mariotaku.twidere.util.ReadStateManager;
import org.mariotaku.twidere.util.ThemeUtils;
import org.mariotaku.twidere.util.TwidereColorUtils;
import org.mariotaku.twidere.util.TwidereMathUtils;
import org.mariotaku.twidere.util.Utils;
import org.mariotaku.twidere.view.ExtendedFrameLayout;
@ -166,10 +165,6 @@ public class HomeActivity extends BaseAppCompatActivity implements OnClickListen
return getSupportFragmentManager().findFragmentById(R.id.left_drawer);
}
public boolean getDefaultSystemWindowsInsets(Rect insets) {
return super.getSystemWindowsInsets(insets);
}
@Override
public boolean getSystemWindowsInsets(Rect insets) {
if (mTabIndicator == null || mHomeContent == null) return false;
@ -179,7 +174,6 @@ public class HomeActivity extends BaseAppCompatActivity implements OnClickListen
} else {
insets.top = ThemeUtils.getActionBarHeight(this);
}
insets.top += mHomeContent.getTop();
return true;
}
@ -366,7 +360,7 @@ public class HomeActivity extends BaseAppCompatActivity implements OnClickListen
if (top != oldTop) {
final Fragment fragment = getLeftDrawerFragment();
if (fragment instanceof AccountsDashboardFragment) {
((AccountsDashboardFragment) fragment).requestFitSystemWindows();
((AccountsDashboardFragment) fragment).setStatusBarHeight(top);
}
}
}
@ -733,19 +727,6 @@ public class HomeActivity extends BaseAppCompatActivity implements OnClickListen
final boolean isTransparent = ThemeUtils.isTransparentBackground(backgroundOption);
final int actionBarAlpha = isTransparent ? ThemeUtils.getActionBarAlpha(ThemeUtils.getUserThemeBackgroundAlpha(this)) : 0xFF;
mTabIndicator.setItemContext(ThemeUtils.getActionBarThemedContext(this, themeColor));
final int[] foregroundColors = new int[2];
ThemeUtils.getColorForegroundAndInverse(this, foregroundColors);
if (ThemeUtils.isDarkTheme(this)) {
mTabIndicator.setStripColor(themeColor);
mTabIndicator.setIconColor(foregroundColors[0]);
mTabIndicator.setLabelColor(foregroundColors[0]);
} else {
final int contrastColor = TwidereColorUtils.getContrastYIQ(themeColor,
ThemeUtils.ACCENT_COLOR_THRESHOLD, foregroundColors[0], foregroundColors[1]);
mTabIndicator.setStripColor(contrastColor);
mTabIndicator.setIconColor(contrastColor);
mTabIndicator.setLabelColor(contrastColor);
}
mActionsButton.setAlpha(actionBarAlpha / 255f);
}

View File

@ -61,6 +61,8 @@ import org.mariotaku.twidere.util.content.TwidereSQLiteOpenHelper;
import org.mariotaku.twidere.util.dagger.ApplicationModule;
import org.mariotaku.twidere.util.dagger.DependencyHolder;
import org.mariotaku.twidere.util.net.TwidereDns;
import org.mariotaku.twidere.util.theme.TabPagerIndicatorViewProcessor;
import org.mariotaku.twidere.view.TabPagerIndicator;
public class TwidereApplication extends Application implements Constants,
OnSharedPreferenceChangeListener {
@ -118,6 +120,7 @@ public class TwidereApplication extends Application implements Constants,
if (BuildConfig.DEBUG) {
StrictModeUtils.detectAllVmPolicy();
}
ATE.registerViewProcessor(TabPagerIndicator.class, new TabPagerIndicatorViewProcessor());
if (!ATE.config(this, null).isConfigured()) {
final int accentColor = ThemeUtils.getUserAccentColor(this);
ATE.config(this, null).primaryColor(accentColor).accentColor(accentColor).commit();

View File

@ -37,6 +37,7 @@ import android.widget.TextView;
import org.mariotaku.twidere.R;
import org.mariotaku.twidere.activity.iface.IControlBarActivity;
import org.mariotaku.twidere.activity.iface.IControlBarActivity.ControlBarShowHideHelper;
import org.mariotaku.twidere.adapter.LoadMoreSupportAdapter;
import org.mariotaku.twidere.adapter.iface.ILoadMoreSupportAdapter.IndicatorPosition;
import org.mariotaku.twidere.fragment.iface.RefreshScrollTopInterface;
@ -56,7 +57,7 @@ import org.mariotaku.twidere.view.themed.AccentSwipeRefreshLayout;
public abstract class AbsContentRecyclerViewFragment<A extends LoadMoreSupportAdapter, L extends RecyclerView.LayoutManager>
extends BaseSupportFragment implements SwipeRefreshLayout.OnRefreshListener,
HeaderDrawerLayout.DrawerCallback, RefreshScrollTopInterface, IControlBarActivity.ControlBarOffsetListener,
ContentScrollHandler.ContentListSupport, IControlBarActivity.ControlBarShowHideHelper.ControlBarAnimationListener {
ContentScrollHandler.ContentListSupport, ControlBarShowHideHelper.ControlBarAnimationListener {
private View mProgressContainer;
private SwipeRefreshLayout mSwipeRefreshLayout;

View File

@ -308,8 +308,6 @@ public class AccountsDashboardFragment extends BaseSupportFragment implements Lo
private void updateSystemWindowsInsets() {
if (mAccountProfileContainer == null) return;
final Rect insets = mSystemWindowsInsets;
final int top = Utils.getInsetsTopWithoutActionBarHeight(getActivity(), insets.top);
mAccountProfileContainer.setPadding(0, top, 0, 0);
}
@Override
@ -691,6 +689,11 @@ public class AccountsDashboardFragment extends BaseSupportFragment implements Lo
return false;
}
public void setStatusBarHeight(int height) {
final int top = Utils.getInsetsTopWithoutActionBarHeight(getActivity(), height);
mAccountProfileContainer.setPadding(0, top, 0, 0);
}
static class AccountProfileImageViewHolder extends ViewHolder implements OnClickListener {
private final AccountSelectorAdapter adapter;

View File

@ -0,0 +1,19 @@
package org.mariotaku.twidere.util.theme;
import android.content.Context;
import android.support.annotation.NonNull;
import com.afollestad.appthemeengine.Config;
import com.afollestad.appthemeengine.viewprocessors.ViewProcessor;
import org.mariotaku.twidere.view.TabPagerIndicator;
/**
* Created by mariotaku on 16/3/15.
*/
public class TabPagerIndicatorViewProcessor implements ViewProcessor<TabPagerIndicator, Object> {
@Override
public void process(@NonNull Context context, String key, TabPagerIndicator view, Object extra) {
}
}