Search in sources :

Example 1 with TabsAdapter2

use of com.foobnix.ui2.adapter.TabsAdapter2 in project LibreraReader by foobnix.

the class MainTabs2 method onCreate.

@Override
protected void onCreate(Bundle savedInstanceState) {
    if (AppState.get().isWhiteTheme) {
        setTheme(R.style.StyledIndicatorsWhite);
    } else {
        setTheme(R.style.StyledIndicatorsBlack);
    }
    super.onCreate(savedInstanceState);
    if (PasswordDialog.isNeedPasswordDialog(this)) {
        return;
    }
    LOG.d(TAG, "onCreate");
    LOG.d("EXTRA_EXIT", EXTRA_EXIT);
    if (getIntent().getBooleanExtra(EXTRA_EXIT, false)) {
        finish();
        return;
    }
    isEink = Dips.isEInk(this);
    TintUtil.setStatusBarColor(this);
    DocumentController.doRotation(this);
    setContentView(R.layout.main_tabs);
    imageMenu = (ImageView) findViewById(R.id.imageMenu1);
    imageMenuParent = findViewById(R.id.imageParent1);
    imageMenuParent.setBackgroundColor(TintUtil.color);
    overlay = findViewById(R.id.overlay);
    toastBrightnessText = (TextView) findViewById(R.id.toastBrightnessText);
    toastBrightnessText.setVisibility(View.GONE);
    TintUtil.setDrawableTint(toastBrightnessText.getCompoundDrawables()[0], Color.WHITE);
    tabFragments = new ArrayList<UIFragment>();
    try {
        for (UITab tab : UITab.getOrdered(AppState.get().tabsOrder)) {
            if (tab.isVisible()) {
                tabFragments.add(tab.getClazz().newInstance());
            }
        }
    } catch (Exception e) {
        LOG.e(e);
        Toast.makeText(MainTabs2.this, R.string.msg_unexpected_error, Toast.LENGTH_LONG).show();
        tabFragments.add(new SearchFragment2());
        tabFragments.add(new BrowseFragment2());
        tabFragments.add(new RecentFragment2());
        tabFragments.add(new BookmarksFragment2());
        tabFragments.add(new OpdsFragment2());
        tabFragments.add(new PrefFragment2());
    }
    getSupportFragmentManager().beginTransaction().replace(R.id.left_drawer, new PrefFragment2()).commit();
    drawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);
    imageMenu.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            if (drawerLayout.isDrawerOpen(Gravity.START))
                drawerLayout.closeDrawer(Gravity.START, !AppState.get().isInkMode);
            else
                drawerLayout.openDrawer(Gravity.START, !AppState.get().isInkMode);
        }
    });
    if (UITab.isShowPreferences()) {
        imageMenu.setVisibility(View.GONE);
        drawerLayout.setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED);
    } else {
        imageMenu.setVisibility(View.VISIBLE);
    }
    // ((BrigtnessDraw)
    // findViewById(R.id.brigtnessProgressView)).setActivity(this);
    adapter = new TabsAdapter2(this, tabFragments);
    pager = (ViewPager) findViewById(R.id.pager);
    if (Android6.canWrite(this)) {
        pager.setAdapter(adapter);
    }
    pager.setOffscreenPageLimit(5);
    pager.addOnPageChangeListener(onPageChangeListener);
    drawerLayout.addDrawerListener(new DrawerListener() {

        @Override
        public void onDrawerStateChanged(int arg0) {
        }

        @Override
        public void onDrawerSlide(View arg0, float arg1) {
        }

        @Override
        public void onDrawerOpened(View arg0) {
        // TODO Auto-generated method stub
        }

        @Override
        public void onDrawerClosed(View arg0) {
            tabFragments.get(pager.getCurrentItem()).onSelectFragment();
        }
    });
    indicator = (SlidingTabLayout) findViewById(R.id.slidingTabs);
    indicator.setViewPager(pager);
    indicator.setDividerColors(getResources().getColor(R.color.tint_divider));
    indicator.setSelectedIndicatorColors(Color.WHITE);
    indicator.setBackgroundColor(TintUtil.color);
    if (AppState.get().isInkMode) {
        TintUtil.setTintImageNoAlpha(imageMenu, TintUtil.color);
        indicator.setSelectedIndicatorColors(TintUtil.color);
        indicator.setDividerColors(TintUtil.color);
        indicator.setBackgroundColor(Color.TRANSPARENT);
        imageMenuParent.setBackgroundColor(Color.TRANSPARENT);
    }
    Android6.checkPermissions(this);
    // Analytics.onStart(this);
    List<String> actions = Arrays.asList("android.intent.action.PROCESS_TEXT", "android.intent.action.SEARCH", "android.intent.action.SEND");
    List<String> extras = Arrays.asList(Intent.EXTRA_PROCESS_TEXT_READONLY, Intent.EXTRA_PROCESS_TEXT, SearchManager.QUERY, Intent.EXTRA_TEXT);
    if (getIntent() != null && getIntent().getAction() != null) {
        if (actions.contains(getIntent().getAction())) {
            for (String extra : extras) {
                final String text = getIntent().getStringExtra(extra);
                if (TxtUtils.isNotEmpty(text)) {
                    AppState.get().lastClosedActivity = null;
                    pager.postDelayed(new Runnable() {

                        @Override
                        public void run() {
                            ((SearchFragment2) tabFragments.get(0)).searchAndOrderExteral(text);
                        }
                    }, 250);
                    break;
                }
            }
        }
    }
    boolean showTabs = getIntent().getBooleanExtra(EXTRA_SHOW_TABS, false);
    LOG.d("EXTRA_SHOW_TABS", showTabs, AppState.get().lastMode);
    if (showTabs == false && AppState.get().isOpenLastBook) {
        LOG.d("Open lastBookPath", AppState.get().lastBookPath);
        if (AppState.get().lastBookPath == null || !new File(AppState.get().lastBookPath).isFile()) {
            LOG.d("Open Last book not found");
            return;
        }
        AppState.get().lastClosedActivity = null;
        Safe.run(new Runnable() {

            @Override
            public void run() {
                boolean isEasyMode = HorizontalViewActivity.class.getSimpleName().equals(AppState.get().lastMode);
                Intent intent = new Intent(MainTabs2.this, isEasyMode ? HorizontalViewActivity.class : VerticalViewActivity.class);
                intent.putExtra(PasswordDialog.EXTRA_APP_PASSWORD, getIntent().getStringExtra(PasswordDialog.EXTRA_APP_PASSWORD));
                intent.setData(Uri.fromFile(new File(AppState.get().lastBookPath)));
                startActivity(intent);
            }
        });
    } else if (!AppState.get().isOpenLastBook) {
        LOG.d("Open book lastA", AppState.get().lastClosedActivity);
        if (AppState.get().lastBookPath == null || !new File(AppState.get().lastBookPath).isFile()) {
            LOG.d("Open Last book not found");
            return;
        }
        final String saveMode = AppState.get().lastClosedActivity;
        Safe.run(new Runnable() {

            @Override
            public void run() {
                if (HorizontalViewActivity.class.getSimpleName().equals(saveMode)) {
                    Intent intent = new Intent(MainTabs2.this, HorizontalViewActivity.class);
                    intent.setData(Uri.fromFile(new File(AppState.get().lastBookPath)));
                    startActivity(intent);
                    LOG.d("Start lastA", saveMode);
                } else if (VerticalViewActivity.class.getSimpleName().equals(saveMode)) {
                    Intent intent = new Intent(MainTabs2.this, VerticalViewActivity.class);
                    intent.setData(Uri.fromFile(new File(AppState.get().lastBookPath)));
                    startActivity(intent);
                    LOG.d("Start lastA", saveMode);
                }
            }
        });
    } else {
        RecentUpates.updateAll(this);
    }
    checkGoToPage(getIntent());
    try {
        AndroidWhatsNew.checkForNewBeta(this);
    } catch (Exception e) {
        LOG.e(e);
    }
    if (Android6.canWrite(this)) {
        FontExtractor.extractFonts(this);
    }
    EventBus.getDefault().register(this);
}
Also used : BrowseFragment2(com.foobnix.ui2.fragment.BrowseFragment2) TabsAdapter2(com.foobnix.ui2.adapter.TabsAdapter2) DrawerListener(android.support.v4.widget.DrawerLayout.DrawerListener) OpdsFragment2(com.foobnix.ui2.fragment.OpdsFragment2) HorizontalViewActivity(com.foobnix.pdf.search.activity.HorizontalViewActivity) VerticalViewActivity(org.ebookdroid.ui.viewer.VerticalViewActivity) RecentFragment2(com.foobnix.ui2.fragment.RecentFragment2) UIFragment(com.foobnix.ui2.fragment.UIFragment) PrefFragment2(com.foobnix.ui2.fragment.PrefFragment2) Intent(android.content.Intent) SearchFragment2(com.foobnix.ui2.fragment.SearchFragment2) BookmarksFragment2(com.foobnix.ui2.fragment.BookmarksFragment2) ImageView(android.widget.ImageView) View(android.view.View) TextView(android.widget.TextView) SuppressLint(android.annotation.SuppressLint) UITab(com.foobnix.pdf.info.wrapper.UITab) OnClickListener(android.view.View.OnClickListener) File(java.io.File)

Example 2 with TabsAdapter2

use of com.foobnix.ui2.adapter.TabsAdapter2 in project LibreraReader by foobnix.

the class SlidingTabLayout method populateTabStrip.

private void populateTabStrip() {
    final TabsAdapter2 adapter = (TabsAdapter2) mViewPager.getAdapter();
    if (adapter == null) {
        return;
    }
    final View.OnClickListener tabClickListener = new TabClickListener();
    for (int i = 0; i < adapter.getCount(); i++) {
        View tabView = null;
        TextView tabTitleView = null;
        if (mTabViewLayoutId != 0) {
            // If there is a custom tab view layout id set, try and inflate
            // it
            tabView = LayoutInflater.from(getContext()).inflate(mTabViewLayoutId, getmTabStrip(), false);
            tabTitleView = (TextView) tabView.findViewById(mTabViewTextViewId);
        }
        if (tabView == null) {
            tabView = createDefaultTabView(getContext());
            if (AppState.get().isInkMode) {
                ((TextView) tabView).setTextSize(16);
            }
        }
        if (tabTitleView == null && TextView.class.isInstance(tabView)) {
            tabTitleView = (TextView) tabView;
        }
        if (tabTitleView != null) {
            tabTitleView.setText(adapter.getPageTitle(i));
            // TintUtil.addTextView(tabTitleView);
            Drawable drawable = getContext().getResources().getDrawable(adapter.getIconResId(i));
            tabTitleView.setCompoundDrawablesWithIntrinsicBounds(drawable, null, null, null);
            tabTitleView.setCompoundDrawablePadding(Dips.dpToPx(5));
            if (AppState.get().isInkMode) {
                // TintUtil.setDrawableTint(drawable, Color.BLACK);
                tabTitleView.setTextColor(TintUtil.color);
            } else {
                TintUtil.setDrawableTint(drawable, Color.WHITE);
                tabTitleView.setTextColor(Color.WHITE);
            }
            tabView.setOnClickListener(tabClickListener);
            getmTabStrip().addView(tabView);
        }
    }
    updateIcons(0);
}
Also used : Drawable(android.graphics.drawable.Drawable) TextView(android.widget.TextView) HorizontalScrollView(android.widget.HorizontalScrollView) TextView(android.widget.TextView) View(android.view.View) TabsAdapter2(com.foobnix.ui2.adapter.TabsAdapter2)

Aggregations

View (android.view.View)2 TextView (android.widget.TextView)2 TabsAdapter2 (com.foobnix.ui2.adapter.TabsAdapter2)2 SuppressLint (android.annotation.SuppressLint)1 Intent (android.content.Intent)1 Drawable (android.graphics.drawable.Drawable)1 DrawerListener (android.support.v4.widget.DrawerLayout.DrawerListener)1 OnClickListener (android.view.View.OnClickListener)1 HorizontalScrollView (android.widget.HorizontalScrollView)1 ImageView (android.widget.ImageView)1 UITab (com.foobnix.pdf.info.wrapper.UITab)1 HorizontalViewActivity (com.foobnix.pdf.search.activity.HorizontalViewActivity)1 BookmarksFragment2 (com.foobnix.ui2.fragment.BookmarksFragment2)1 BrowseFragment2 (com.foobnix.ui2.fragment.BrowseFragment2)1 OpdsFragment2 (com.foobnix.ui2.fragment.OpdsFragment2)1 PrefFragment2 (com.foobnix.ui2.fragment.PrefFragment2)1 RecentFragment2 (com.foobnix.ui2.fragment.RecentFragment2)1 SearchFragment2 (com.foobnix.ui2.fragment.SearchFragment2)1 UIFragment (com.foobnix.ui2.fragment.UIFragment)1 File (java.io.File)1