Search in sources :

Example 1 with UIFragment

use of com.foobnix.ui2.fragment.UIFragment 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 UIFragment

use of com.foobnix.ui2.fragment.UIFragment in project LibreraReader by foobnix.

the class MainTabs2 method onActivityResult.

@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    if (requestCode == REQUEST_CODE_ADD_RESOURCE && resultCode == Activity.RESULT_OK) {
        getContentResolver().takePersistableUriPermission(data.getData(), Intent.FLAG_GRANT_READ_URI_PERMISSION | Intent.FLAG_GRANT_WRITE_URI_PERMISSION);
        Uri uri = data.getData();
        String pathSAF = uri.toString();
        AppState.get().pathSAF = StringDB.add(AppState.get().pathSAF, pathSAF);
        LOG.d("REQUEST_CODE_ADD_RESOURCE", pathSAF, AppState.get().pathSAF);
        UIFragment uiFragment = tabFragments.get(pager.getCurrentItem());
        if (uiFragment instanceof BrowseFragment2) {
            BrowseFragment2 fr = (BrowseFragment2) uiFragment;
            fr.setDirPath(pathSAF);
        }
    }
}
Also used : BrowseFragment2(com.foobnix.ui2.fragment.BrowseFragment2) UIFragment(com.foobnix.ui2.fragment.UIFragment) Uri(android.net.Uri)

Aggregations

BrowseFragment2 (com.foobnix.ui2.fragment.BrowseFragment2)2 UIFragment (com.foobnix.ui2.fragment.UIFragment)2 SuppressLint (android.annotation.SuppressLint)1 Intent (android.content.Intent)1 Uri (android.net.Uri)1 DrawerListener (android.support.v4.widget.DrawerLayout.DrawerListener)1 View (android.view.View)1 OnClickListener (android.view.View.OnClickListener)1 ImageView (android.widget.ImageView)1 TextView (android.widget.TextView)1 UITab (com.foobnix.pdf.info.wrapper.UITab)1 HorizontalViewActivity (com.foobnix.pdf.search.activity.HorizontalViewActivity)1 TabsAdapter2 (com.foobnix.ui2.adapter.TabsAdapter2)1 BookmarksFragment2 (com.foobnix.ui2.fragment.BookmarksFragment2)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 File (java.io.File)1 VerticalViewActivity (org.ebookdroid.ui.viewer.VerticalViewActivity)1