Search in sources :

Example 6 with Prefs

use of com.instructure.pandautils.utils.Prefs in project instructure-android by instructure.

the class StudentViewActivity method onPageScrolled.

@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
    ArgbEvaluator evaluator = new ArgbEvaluator();
    final View rootView = findViewById(R.id.navigationWrapper);
    int colorPosition = position % 4;
    int currentColor;
    if (positionOffset < 0)
        return;
    if (colorPosition < 3) {
        // This will use colors 0 - 3
        final int topColor = (Integer) evaluator.evaluate(positionOffset, mTopColors[colorPosition], mTopColors[colorPosition + 1]);
        final int bottomColor = (Integer) evaluator.evaluate(positionOffset, mBottomColors[colorPosition], mBottomColors[colorPosition + 1]);
        LayerDrawable layerDrawable = createBackgroundLayers(rootView, topColor, bottomColor);
        rootView.setBackgroundDrawable(layerDrawable);
        setTabBackgroundColor(positionOffset, evaluator, colorPosition, colorPosition + 1);
        currentColor = (Integer) evaluator.evaluate(positionOffset, mBottomColorsNoAlpha[colorPosition], mBottomColorsNoAlpha[colorPosition + 1]);
        if (mPagerAdapter.getWeekFragment() != null) {
            mPagerAdapter.getWeekFragment().setWeekViewBackground(currentColor);
        }
    } else {
        // This will use colors 3 - 0, to wrap it around
        final int topColor = (Integer) evaluator.evaluate(positionOffset, mTopColors[colorPosition], mTopColors[0]);
        final int bottomColor = (Integer) evaluator.evaluate(positionOffset, mBottomColors[colorPosition], mBottomColors[0]);
        LayerDrawable layerDrawable = createBackgroundLayers(rootView, topColor, bottomColor);
        rootView.setBackgroundDrawable(layerDrawable);
        currentColor = (Integer) evaluator.evaluate(positionOffset, mBottomColorsNoAlpha[colorPosition], mBottomColorsNoAlpha[0]);
        if (mPagerAdapter.getWeekFragment() != null) {
            mPagerAdapter.getWeekFragment().setWeekViewBackground(currentColor);
        }
        setTabBackgroundColor(positionOffset, evaluator, colorPosition, 0);
    }
    // the current position and move it to the closest item in the view pager
    if (mIsSettling && mIsDragging) {
        if (positionOffset < 0.5) {
        // we're already on this position, we don't need to set anything
        } else if (positionOffset >= 0.5) {
            // If we're already on that position we don't want to go to it again
            if (mCarouselViewPager.getCurrentItem() != position + 1) {
                onPageSelected(position + 1);
            }
        }
        mIsSettling = false;
        mIsDragging = false;
    }
    // save the current color
    Prefs prefs = new Prefs(this, com.instructure.parentapp.util.Const.CANVAS_PARENT_SP);
    prefs.save(Const.NEW_COLOR, currentColor);
}
Also used : ArgbEvaluator(android.animation.ArgbEvaluator) LayerDrawable(android.graphics.drawable.LayerDrawable) ApiPrefs(com.instructure.canvasapi2.utils.ApiPrefs) Prefs(com.instructure.pandautils.utils.Prefs) View(android.view.View) TextView(android.widget.TextView)

Example 7 with Prefs

use of com.instructure.pandautils.utils.Prefs in project instructure-android by instructure.

the class ParentFragment method setupDialogToolbar.

protected void setupDialogToolbar(View rootView) {
    mDialogToolbar = (Toolbar) rootView.findViewById(R.id.toolbar);
    if (mDialogToolbar != null) {
        mDialogToolbar.setVisibility(View.VISIBLE);
        mDialogToolbar.setNavigationIcon(R.drawable.ic_close_white);
        mDialogToolbar.setNavigationContentDescription(R.string.close);
        mDialogToolbar.setNavigationOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {
                getActivity().onBackPressed();
            }
        });
        Prefs prefs = new Prefs(getActivity(), com.instructure.parentapp.util.Const.CANVAS_PARENT_SP);
        int color = prefs.load(Const.NEW_COLOR, -1);
        if (color != -1) {
            setStatusBarColor(color);
            setActionbarColor(color);
        }
    }
}
Also used : Prefs(com.instructure.pandautils.utils.Prefs) View(android.view.View)

Example 8 with Prefs

use of com.instructure.pandautils.utils.Prefs in project instructure-android by instructure.

the class StudentViewActivity method configureUserCarousel.

private void configureUserCarousel() {
    mCarouselViewPager = (ViewPager) findViewById(R.id.carouselPager);
    mCarouselAdapter = new CarouselPagerAdapter(this);
    mCarouselViewPager.addOnPageChangeListener(this);
    mCarouselViewPager.setPageTransformer(true, new CarouselTransformer());
    if (getIntent().getExtras().getParcelableArrayList(Const.USER) != null) {
        ArrayList<Student> students = getIntent().getExtras().getParcelableArrayList(Const.USER);
        if (students != null && students.size() > 0) {
            mCarouselAdapter.clear();
            mCarouselViewPager.setOffscreenPageLimit(students.size());
            mCarouselAdapter.addAll(students);
        }
    }
    mCarouselViewPager.post(new Runnable() {

        @Override
        public void run() {
            mCarouselViewPager.setAdapter(mCarouselAdapter);
            // Use this to set the offset for the viewpager
            int childWidth = (int) getResources().getDimension(R.dimen.carousel_avatar_size);
            double factor = 1.30;
            if (getResources().getBoolean(R.bool.isTablet)) {
                // adjust for tablets so the student's icons are closer together
                factor = 1.15;
            }
            double width = (mCarouselViewPager.getWidth() / factor) + (childWidth / 2);
            int truncWidth = (int) width;
            mCarouselViewPager.setPageMargin(-truncWidth);
            if (mCarouselAdapter.getCount() > 1) {
                Prefs prefs = new Prefs(StudentViewActivity.this, com.instructure.parentapp.util.Const.CANVAS_PARENT_SP);
                int pos = prefs.load(Const.POSITION, mCarouselAdapter.getCount() / 2);
                mCarouselViewPager.setCurrentItem(pos);
                onPageSelected(pos);
            } else if (mCarouselAdapter.getCount() == 1) {
                // need to call onPageSelected so that it shows the user's name
                onPageSelected(0);
            }
        }
    });
}
Also used : CarouselTransformer(com.instructure.parentapp.util.CarouselTransformer) CarouselPagerAdapter(com.instructure.parentapp.adapter.CarouselPagerAdapter) Student(com.instructure.canvasapi2.models.Student) ApiPrefs(com.instructure.canvasapi2.utils.ApiPrefs) Prefs(com.instructure.pandautils.utils.Prefs)

Example 9 with Prefs

use of com.instructure.pandautils.utils.Prefs in project instructure-android by instructure.

the class CourseBinder method bind.

public static void bind(final CourseViewHolder holder, final Course course, final Context context, final BasicAdapterToFragmentCallback adapterToFragmentCallback) {
    holder.courseTitle.setText(course.getName());
    Utils.testSafeContentDescription(holder.courseTitle, String.format(context.getString(R.string.course_title_content_desc), holder.getAdapterPosition()), course.getName(), BuildConfig.IS_TESTING);
    holder.courseCode.setText(course.getCourseCode());
    holder.gradeContainer.setVisibility(View.VISIBLE);
    holder.scoreText.setVisibility(View.VISIBLE);
    holder.gradeText.setVisibility(View.VISIBLE);
    Prefs prefs = new Prefs(context, com.instructure.parentapp.util.Const.CANVAS_PARENT_SP);
    int color = prefs.load(Const.NEW_COLOR, -1);
    if (color != -1) {
        holder.gradeText.setTextColor(color);
        holder.scoreText.setTextColor(color);
    }
    if (course.getCourseGrade(false).isLocked()) {
        holder.gradeContainer.setVisibility(View.GONE);
        holder.lockedGradeImage.setVisibility(View.VISIBLE);
        holder.lockedGradeImage.setImageDrawable(ColorKeeper.getColoredDrawable(context, R.drawable.vd_lock, color));
    } else {
        setGradeView(holder.gradeText, holder.scoreText, course.getCourseGrade(false), context, holder.getAdapterPosition());
    }
    holder.itemView.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View view) {
            adapterToFragmentCallback.onRowClicked(holder.getAdapterPosition(), false);
        }
    });
}
Also used : Prefs(com.instructure.pandautils.utils.Prefs) TextView(android.widget.TextView) View(android.view.View)

Example 10 with Prefs

use of com.instructure.pandautils.utils.Prefs in project instructure-android by instructure.

the class CourseWeekFragment method onCreateView.

@Override
public void onCreateView(View view) {
    super.onCreateView(view);
    ButterKnife.bind(this, view);
    // set the color of the weekBackground
    Prefs prefs = new Prefs(getActivity(), getActivity().getString(R.string.app_name_parent));
    int color = prefs.load(Const.NEW_COLOR, -1);
    if (color != -1) {
        mWeekBackground.setBackgroundColor(color);
    }
    mToolbarTitle.setText(mCourse.getName());
    if (mCourse.getSyllabusBody() == null) {
        mToolbarIcon.setVisibility(View.GONE);
    }
    mToolbarIcon.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View view) {
            CourseSyllabusFragment fragment = CourseSyllabusFragment.newInstance(mCourse, mStudent);
            FragmentTransaction ft = getActivity().getSupportFragmentManager().beginTransaction();
            ft.setCustomAnimations(R.anim.slide_from_bottom, android.R.anim.fade_out, R.anim.none, R.anim.slide_to_bottom);
            ft.add(R.id.fullscreen, fragment, fragment.getClass().getName());
            ft.addToBackStack(fragment.getClass().getName());
            ft.commitAllowingStateLoss();
        }
    });
}
Also used : FragmentTransaction(android.support.v4.app.FragmentTransaction) Prefs(com.instructure.pandautils.utils.Prefs) TextView(android.widget.TextView) ImageView(android.widget.ImageView) View(android.view.View) BindView(butterknife.BindView)

Aggregations

Prefs (com.instructure.pandautils.utils.Prefs)12 ApiPrefs (com.instructure.canvasapi2.utils.ApiPrefs)9 View (android.view.View)6 TextView (android.widget.TextView)4 BindView (butterknife.BindView)2 BlockedStudentResponse (com.instructure.canvasapi2.models.BlockedStudentResponse)2 MismatchedRegionResponse (com.instructure.canvasapi2.models.MismatchedRegionResponse)2 RevokedTokenResponse (com.instructure.canvasapi2.models.RevokedTokenResponse)2 Student (com.instructure.canvasapi2.models.Student)2 ApiType (com.instructure.canvasapi2.utils.ApiType)2 LinkHeaders (com.instructure.canvasapi2.utils.LinkHeaders)2 ArgbEvaluator (android.animation.ArgbEvaluator)1 DialogInterface (android.content.DialogInterface)1 LayerDrawable (android.graphics.drawable.LayerDrawable)1 NonNull (android.support.annotation.NonNull)1 TabLayout (android.support.design.widget.TabLayout)1 FragmentTransaction (android.support.v4.app.FragmentTransaction)1 ViewPager (android.support.v4.view.ViewPager)1 AlertDialog (android.support.v7.app.AlertDialog)1 RecyclerView (android.support.v7.widget.RecyclerView)1