Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
41 changes: 22 additions & 19 deletions SlidingTabLayoutRtl.java
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package com.kaltura.mediago.views;

import android.content.Context;
import android.graphics.Typeface;
import android.graphics.drawable.Drawable;
import android.support.v4.app.FragmentStatePagerAdapter;
import android.support.v4.view.PagerAdapter;
import android.support.v4.view.ViewPager;
Expand All @@ -15,20 +16,26 @@
import android.widget.LinearLayout;
import android.widget.TextView;

import com.kaltura.mediago.views.utils.SlidingTabStripRtl;

/**
* Created by Mortezasun on 7/25/2015.
*
* :)
* Created by Itzhar on 5/4/16.
*/
public class SlidingTabLayoutRtl extends HorizontalScrollView {

public interface TabColorizer {


/**
* @return return the color of the indicator used when {@code position} is selected.
*/
int getIndicatorColor(int position);

/**
* @return return the color of the divider drawn to the right of {@code position}.
*/
int getDividerColor(int position);

}

private static final int TITLE_OFFSET_DIPS = 24;
Expand Down Expand Up @@ -108,8 +115,8 @@ public void setCustomTabView(int layoutResId, int textViewId) {
*/
FragmentStatePagerAdapter mAdapterState;
public void setViewPager(ViewPager viewPager) {
this.mAdapterState = ((FragmentStatePagerAdapter) viewPager.getAdapter());
mTabStrip.removeAllViews();

mViewPager = viewPager;
if (viewPager != null) {
viewPager.setOnPageChangeListener(new InternalViewPagerListener());
Expand All @@ -124,12 +131,9 @@ protected TextView createDefaultTabView(Context context) {
textView.setGravity(Gravity.CENTER);
textView.setTextSize(TypedValue.COMPLEX_UNIT_SP, TAB_VIEW_TEXT_SIZE_SP);
textView.setTypeface(Typeface.DEFAULT_BOLD);
textView.setLayoutParams(new LinearLayout.LayoutParams(
ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT));

textView.setLayoutParams(new LinearLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT));
TypedValue outValue = new TypedValue();
getContext().getTheme().resolveAttribute(android.R.attr.selectableItemBackground,
outValue, true);
getContext().getTheme().resolveAttribute(android.R.attr.selectableItemBackground, outValue, true);
textView.setBackgroundResource(outValue.resourceId);
textView.setAllCaps(true);

Expand All @@ -149,8 +153,7 @@ private void populateTabStrip() {

if (mTabViewLayoutId != 0) {
// If there is a custom tab view layout id set, try and inflate it
tabView = LayoutInflater.from(getContext()).inflate(mTabViewLayoutId, mTabStrip,
false);
tabView = LayoutInflater.from(getContext()).inflate(mTabViewLayoutId, mTabStrip, false);
tabTitleView = (TextView) tabView.findViewById(mTabViewTextViewId);
}

Expand All @@ -174,7 +177,7 @@ private void populateTabStrip() {
if (desc != null) {
tabView.setContentDescription(desc);
}

tabTitleView.setText(adapter.getPageTitle(i));
mTabStrip.addView(tabView);
if (i == mViewPager.getCurrentItem()) {
tabView.setSelected(true);
Expand Down Expand Up @@ -222,9 +225,9 @@ private class InternalViewPagerListener implements ViewPager.OnPageChangeListene
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {

RealPosition=(mAdapterState.getCount()-1) - position;
RealPosition=(mAdapterState.getCount()-1) - position;

// RealPosition=position; Left To Right Support
// RealPosition=position; Left To Right Support

int tabStripChildCount = mTabStrip.getChildCount();
if ((tabStripChildCount == 0) || (RealPosition < 0) || (RealPosition >= tabStripChildCount)) {
Expand Down Expand Up @@ -257,10 +260,10 @@ public void onPageScrollStateChanged(int state) {
@Override
public void onPageSelected(int position) {

RealPosition=(mAdapterState.getCount()-1) - position;
RealPosition=(mAdapterState.getCount()-1) - position;


// RealPosition=position;Left To Right Support
// RealPosition=position;Left To Right Support

if (mScrollState == ViewPager.SCROLL_STATE_IDLE) {
mTabStrip.onViewPagerPageChanged(RealPosition, 0f);
Expand All @@ -282,9 +285,9 @@ public void onClick(View v) {
for (int i = 0; i < mTabStrip.getChildCount(); i++) {
if (v == mTabStrip.getChildAt(i)) {

mViewPager.setCurrentItem((mAdapterState.getCount() - 1)-i);
mViewPager.setCurrentItem((mAdapterState.getCount() - 1)-i);

// mViewPager.setCurrentItem(i); Left To Right Support
// mViewPager.setCurrentItem(i); Left To Right Support



Expand Down