diff --git a/Material.iml b/Material.iml index 519ee41c..c5b5ba00 100644 --- a/Material.iml +++ b/Material.iml @@ -1,5 +1,5 @@ - + diff --git a/app/app.iml b/app/app.iml index 72f2e45b..9f4d0375 100644 --- a/app/app.iml +++ b/app/app.iml @@ -1,5 +1,5 @@ - + diff --git a/app/build.gradle b/app/build.gradle index d6b94325..cf22cec9 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -34,6 +34,6 @@ dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile 'com.android.support:appcompat-v7:21.0.2' compile 'com.android.support:cardview-v7:21.0.2' - compile project(':lib') compile 'com.squareup.picasso:picasso:2.5.0' + compile project(':lib') } diff --git a/app/src/main/java/com/rey/material/app/ContactEditText.java b/app/src/main/java/com/rey/material/app/ContactEditText.java index b7d30a38..6c871398 100644 --- a/app/src/main/java/com/rey/material/app/ContactEditText.java +++ b/app/src/main/java/com/rey/material/app/ContactEditText.java @@ -24,6 +24,7 @@ import android.text.TextUtils; import android.text.TextWatcher; import android.util.AttributeSet; +import android.view.LayoutInflater; import android.view.MotionEvent; import android.view.View; import android.view.ViewGroup; @@ -581,7 +582,7 @@ public int getItemViewType(int position) { public View getView(int position, View convertView, ViewGroup parent) { ContactView v = (ContactView)convertView; if(v == null) { - v = new ContactView(getContext(), null, 0, position == 0 ? R.style.SelectedContactView : R.style.ReplacementContactView); + v = (ContactView)LayoutInflater.from(parent.getContext()).inflate(position == 0 ? R.layout.row_contact_selected : R.layout.row_contact_replace, parent, false); v.setOnClickListener(this); } diff --git a/app/src/main/java/com/rey/material/app/RecurringPickerDialog.java b/app/src/main/java/com/rey/material/app/RecurringPickerDialog.java index c0db682e..db38c179 100644 --- a/app/src/main/java/com/rey/material/app/RecurringPickerDialog.java +++ b/app/src/main/java/com/rey/material/app/RecurringPickerDialog.java @@ -20,6 +20,7 @@ import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; +import android.view.ViewTreeObserver; import android.view.animation.AlphaAnimation; import android.view.animation.Animation; import android.widget.Adapter; @@ -28,6 +29,7 @@ import android.widget.Button; import android.widget.FrameLayout; import android.widget.LinearLayout; +import android.widget.ScrollView; import com.rey.material.demo.R; import com.rey.material.util.ThemeUtil; @@ -86,7 +88,8 @@ protected void onCreate() { setContentView(v); FrameLayout fl_mode = (FrameLayout)v.findViewById(R.id.rd_fl_mode); - LinearLayout ll_repeat = (LinearLayout)v.findViewById(R.id.rd_ll_repeat); + final ScrollView sv_repeat = (ScrollView)v.findViewById(R.id.rd_sv_repeat); + final LinearLayout ll_repeat = (LinearLayout)v.findViewById(R.id.rd_ll_repeat); mModeSpinner = (Spinner)fl_mode.findViewById(R.id.rd_spn_mode); mEndSpinner = (Spinner)v.findViewById(R.id.rd_spn_end); mPeriodEditText = (EditText)v.findViewById(R.id.rd_et_period); @@ -98,6 +101,13 @@ protected void onCreate() { mEndDateButton = (Button)v.findViewById(R.id.rd_bt_end_date); mWeekView = (WeekView)v.findViewById(R.id.rd_wv_week); + sv_repeat.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() { + @Override + public void onGlobalLayout() { + showDivider(ll_repeat.getMeasuredHeight() > sv_repeat.getMeasuredHeight()); + } + }); + mHeaderBackground = new HeaderDrawable(getContext()); fl_mode.setPadding(mContentPadding, 0, mContentPadding, 0); diff --git a/app/src/main/java/com/rey/material/demo/ButtonFragment.java b/app/src/main/java/com/rey/material/demo/ButtonFragment.java index 6de9f773..490c7d03 100644 --- a/app/src/main/java/com/rey/material/demo/ButtonFragment.java +++ b/app/src/main/java/com/rey/material/demo/ButtonFragment.java @@ -1,6 +1,8 @@ package com.rey.material.demo; import android.annotation.TargetApi; +import android.app.AlertDialog; +import android.content.DialogInterface; import android.os.Build; import android.os.Bundle; import android.support.v4.app.Fragment; @@ -47,7 +49,6 @@ public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle sa @Override public void onClick(View v) { - Toast.makeText(getActivity(), "Button Clicked!\nEvent's fired when in anim end.", Toast.LENGTH_SHORT).show(); if(v instanceof FloatingActionButton){ FloatingActionButton bt = (FloatingActionButton)v; bt.setLineMorphingState((bt.getLineMorphingState() + 1) % 2, true); @@ -59,7 +60,6 @@ public void onClick(View v) { @Override public void onClick(View v) { - Toast.makeText(getActivity(), "Button Clicked!\nEvent's fired when out anim end.", Toast.LENGTH_SHORT).show(); if(v instanceof FloatingActionButton){ FloatingActionButton bt = (FloatingActionButton)v; bt.setLineMorphingState((bt.getLineMorphingState() + 1) % 2, true); diff --git a/app/src/main/java/com/rey/material/demo/DialogsFragment.java b/app/src/main/java/com/rey/material/demo/DialogsFragment.java index 8575c1c7..5c8de021 100644 --- a/app/src/main/java/com/rey/material/demo/DialogsFragment.java +++ b/app/src/main/java/com/rey/material/demo/DialogsFragment.java @@ -77,13 +77,13 @@ public void onClick(View v) { @Override public void onPositiveActionClicked(DialogFragment fragment) { Toast.makeText(fragment.getDialog().getContext(), "Discarded", Toast.LENGTH_SHORT).show(); - fragment.dismiss(); + super.onPositiveActionClicked(fragment); } @Override public void onNegativeActionClicked(DialogFragment fragment) { Toast.makeText(fragment.getDialog().getContext(), "Canceled", Toast.LENGTH_SHORT).show(); - fragment.dismiss(); + super.onNegativeActionClicked(fragment); } }; @@ -96,13 +96,13 @@ public void onNegativeActionClicked(DialogFragment fragment) { @Override public void onPositiveActionClicked(DialogFragment fragment) { Toast.makeText(fragment.getDialog().getContext(), "Deleted", Toast.LENGTH_SHORT).show(); - fragment.dismiss(); + super.onPositiveActionClicked(fragment); } @Override public void onNegativeActionClicked(DialogFragment fragment) { Toast.makeText(fragment.getDialog().getContext(), "Cancelled", Toast.LENGTH_SHORT).show(); - fragment.dismiss(); + super.onNegativeActionClicked(fragment); } }; @@ -115,13 +115,13 @@ public void onNegativeActionClicked(DialogFragment fragment) { @Override public void onPositiveActionClicked(DialogFragment fragment) { Toast.makeText(fragment.getDialog().getContext(), "Agreed", Toast.LENGTH_SHORT).show(); - fragment.dismiss(); + super.onPositiveActionClicked(fragment); } @Override public void onNegativeActionClicked(DialogFragment fragment) { Toast.makeText(fragment.getDialog().getContext(), "Disagreed", Toast.LENGTH_SHORT).show(); - fragment.dismiss(); + super.onNegativeActionClicked(fragment); } }; @@ -143,13 +143,13 @@ protected Dialog onBuild(Context context, int styleId) { @Override public void onPositiveActionClicked(DialogFragment fragment) { Toast.makeText(fragment.getDialog().getContext(), "Connected", Toast.LENGTH_SHORT).show(); - fragment.dismiss(); + super.onPositiveActionClicked(fragment); } @Override public void onNegativeActionClicked(DialogFragment fragment) { Toast.makeText(fragment.getDialog().getContext(), "Cancelled", Toast.LENGTH_SHORT).show(); - fragment.dismiss(); + super.onNegativeActionClicked(fragment); } }; @@ -162,15 +162,14 @@ public void onNegativeActionClicked(DialogFragment fragment) { builder = new SimpleDialog.Builder(R.style.SimpleDialogLight){ @Override public void onPositiveActionClicked(DialogFragment fragment) { - SimpleDialog dialog = (SimpleDialog)fragment.getDialog(); - Toast.makeText(fragment.getDialog().getContext(), "You have selected " + dialog.getSelectedValue() + " as phone ringtone.", Toast.LENGTH_SHORT).show(); - fragment.dismiss(); + Toast.makeText(fragment.getDialog().getContext(), "You have selected " + getSelectedValue() + " as phone ringtone.", Toast.LENGTH_SHORT).show(); + super.onPositiveActionClicked(fragment); } @Override public void onNegativeActionClicked(DialogFragment fragment) { Toast.makeText(fragment.getDialog().getContext(), "Cancelled" , Toast.LENGTH_SHORT).show(); - fragment.dismiss(); + super.onNegativeActionClicked(fragment); } }; @@ -183,8 +182,7 @@ public void onNegativeActionClicked(DialogFragment fragment) { builder = new SimpleDialog.Builder(R.style.SimpleDialog){ @Override public void onPositiveActionClicked(DialogFragment fragment) { - SimpleDialog dialog = (SimpleDialog)fragment.getDialog(); - CharSequence[] values = dialog.getSelectedValues(); + CharSequence[] values = getSelectedValues(); if(values == null) Toast.makeText(fragment.getDialog().getContext(), "You have selected nothing.", Toast.LENGTH_SHORT).show(); else{ @@ -194,13 +192,13 @@ public void onPositiveActionClicked(DialogFragment fragment) { sb.append(values[i]).append(i == values.length - 1? "." : ", "); Toast.makeText(fragment.getDialog().getContext(), sb.toString(), Toast.LENGTH_SHORT).show(); } - fragment.dismiss(); + super.onPositiveActionClicked(fragment); } @Override public void onNegativeActionClicked(DialogFragment fragment) { Toast.makeText(fragment.getDialog().getContext(), "Cancelled" , Toast.LENGTH_SHORT).show(); - fragment.dismiss(); + super.onNegativeActionClicked(fragment); } }; @@ -210,18 +208,18 @@ public void onNegativeActionClicked(DialogFragment fragment) { .negativeAction("CANCEL"); break; case R.id.dialog_bt_time_light: - builder = new TimePickerDialog.Builder(R.style.Material_App_Dialog_TimePicker_Light, 6, 00){ + builder = new TimePickerDialog.Builder(6, 00){ @Override public void onPositiveActionClicked(DialogFragment fragment) { TimePickerDialog dialog = (TimePickerDialog)fragment.getDialog(); Toast.makeText(fragment.getDialog().getContext(), "Time is " + dialog.getFormattedTime(SimpleDateFormat.getTimeInstance()), Toast.LENGTH_SHORT).show(); - fragment.dismiss(); + super.onPositiveActionClicked(fragment); } @Override public void onNegativeActionClicked(DialogFragment fragment) { Toast.makeText(fragment.getDialog().getContext(), "Cancelled" , Toast.LENGTH_SHORT).show(); - fragment.dismiss(); + super.onNegativeActionClicked(fragment); } }; @@ -229,19 +227,19 @@ public void onNegativeActionClicked(DialogFragment fragment) { .negativeAction("CANCEL"); break; case R.id.dialog_bt_date_light: - builder = new DatePickerDialog.Builder(R.style.Material_App_Dialog_DatePicker_Light){ + builder = new DatePickerDialog.Builder(){ @Override public void onPositiveActionClicked(DialogFragment fragment) { DatePickerDialog dialog = (DatePickerDialog)fragment.getDialog(); String date = dialog.getFormattedDate(SimpleDateFormat.getDateInstance()); Toast.makeText(fragment.getDialog().getContext(), "Date is " + date, Toast.LENGTH_SHORT).show(); - fragment.dismiss(); + super.onPositiveActionClicked(fragment); } @Override public void onNegativeActionClicked(DialogFragment fragment) { Toast.makeText(fragment.getDialog().getContext(), "Cancelled" , Toast.LENGTH_SHORT).show(); - fragment.dismiss(); + super.onNegativeActionClicked(fragment); } }; @@ -254,13 +252,13 @@ public void onNegativeActionClicked(DialogFragment fragment) { public void onPositiveActionClicked(DialogFragment fragment) { TimePickerDialog dialog = (TimePickerDialog)fragment.getDialog(); Toast.makeText(fragment.getDialog().getContext(), "Time is " + dialog.getFormattedTime(SimpleDateFormat.getTimeInstance()), Toast.LENGTH_SHORT).show(); - fragment.dismiss(); + super.onPositiveActionClicked(fragment); } @Override public void onNegativeActionClicked(DialogFragment fragment) { Toast.makeText(fragment.getDialog().getContext(), "Cancelled" , Toast.LENGTH_SHORT).show(); - fragment.dismiss(); + super.onNegativeActionClicked(fragment); } }; @@ -274,13 +272,13 @@ public void onPositiveActionClicked(DialogFragment fragment) { DatePickerDialog dialog = (DatePickerDialog)fragment.getDialog(); String date = dialog.getFormattedDate(SimpleDateFormat.getDateInstance()); Toast.makeText(fragment.getDialog().getContext(), "Date is " + date, Toast.LENGTH_SHORT).show(); - fragment.dismiss(); + super.onPositiveActionClicked(fragment); } @Override public void onNegativeActionClicked(DialogFragment fragment) { Toast.makeText(fragment.getDialog().getContext(), "Cancelled" , Toast.LENGTH_SHORT).show(); - fragment.dismiss(); + super.onNegativeActionClicked(fragment); } }; diff --git a/app/src/main/java/com/rey/material/demo/MainActivity.java b/app/src/main/java/com/rey/material/demo/MainActivity.java index 85931959..ca4ed6c9 100644 --- a/app/src/main/java/com/rey/material/demo/MainActivity.java +++ b/app/src/main/java/com/rey/material/demo/MainActivity.java @@ -32,7 +32,7 @@ import java.util.Calendar; import java.util.Date; -public class MainActivity extends ActionBarActivity implements AdapterView.OnItemClickListener, ToolbarManager.OnToolbarGroupChangedListener { +public class MainActivity extends ActionBarActivity implements ToolbarManager.OnToolbarGroupChangedListener { private DrawerLayout dl_navigator; private FrameLayout fl_drawer; @@ -87,8 +87,7 @@ protected boolean shouldSyncDrawerSlidingProgress() { mToolbarManager.registerOnToolbarGroupChangedListener(this); mDrawerAdapter = new DrawerAdapter(); - lv_drawer.setAdapter(mDrawerAdapter); - lv_drawer.setOnItemClickListener(this); + lv_drawer.setAdapter(mDrawerAdapter); mPagerAdapter = new PagerAdapter(getSupportFragmentManager(), mItems); vp.setAdapter(mPagerAdapter); @@ -109,6 +108,7 @@ public void onPageScrollStateChanged(int state) {} }); + mDrawerAdapter.setSelected(Tab.PROGRESS); vp.setCurrentItem(0); } @@ -143,12 +143,6 @@ public void onToolbarGroupChanged(int oldGroupId, int groupId) { mToolbarManager.notifyNavigationStateChanged(); } - @Override - public void onItemClick(AdapterView parent, View view, int position, long id) { - vp.setCurrentItem(position); - dl_navigator.closeDrawer(fl_drawer); - } - public SnackBar getSnackBar(){ return mSnackBar; } @@ -179,7 +173,7 @@ public String toString(){ } - class DrawerAdapter extends BaseAdapter{ + class DrawerAdapter extends BaseAdapter implements View.OnClickListener { private Tab mSelectedTab; @@ -212,21 +206,34 @@ public long getItemId(int position) { @Override public View getView(int position, View convertView, ViewGroup parent) { View v = convertView; - if(v == null) - v = LayoutInflater.from(MainActivity.this).inflate(R.layout.row_drawer, null); - + if(v == null) { + v = LayoutInflater.from(MainActivity.this).inflate(R.layout.row_drawer, null); + v.setOnClickListener(this); + } + + v.setTag(position); Tab tab = (Tab)getItem(position); ((TextView)v).setText(tab.toString()); - if(tab == mSelectedTab) - v.setBackgroundColor(ThemeUtil.colorPrimary(MainActivity.this, 0)); - else - v.setBackgroundResource(0); + if(tab == mSelectedTab) { + v.setBackgroundColor(ThemeUtil.colorPrimary(MainActivity.this, 0)); + ((TextView)v).setTextColor(0xFFFFFFFF); + } + else { + v.setBackgroundResource(0); + ((TextView)v).setTextColor(0xFF000000); + } return v; } - - } + + @Override + public void onClick(View v) { + int position = (Integer)v.getTag(); + vp.setCurrentItem(position); + dl_navigator.closeDrawer(fl_drawer); + } + } private static class PagerAdapter extends FragmentStatePagerAdapter { diff --git a/app/src/main/java/com/rey/material/demo/SliderFragment.java b/app/src/main/java/com/rey/material/demo/SliderFragment.java index 93a0256f..c9abe2ef 100644 --- a/app/src/main/java/com/rey/material/demo/SliderFragment.java +++ b/app/src/main/java/com/rey/material/demo/SliderFragment.java @@ -4,12 +4,15 @@ import android.os.Build; import android.os.Bundle; import android.support.v4.app.Fragment; +import android.transition.Slide; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.CompoundButton; +import android.widget.TextView; import com.rey.material.widget.RadioButton; +import com.rey.material.widget.Slider; public class SliderFragment extends Fragment{ @@ -25,6 +28,26 @@ public static SliderFragment newInstance(){ public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View v = inflater.inflate(R.layout.fragment_slider, container, false); + Slider sl_continuous = (Slider)v.findViewById(R.id.slider_sl_continuous); + final TextView tv_continuous = (TextView)v.findViewById(R.id.slider_tv_continuous); + tv_continuous.setText(String.format("pos=%.1f value=%d", sl_continuous.getPosition(), sl_continuous.getValue())); + sl_continuous.setOnPositionChangeListener(new Slider.OnPositionChangeListener() { + @Override + public void onPositionChanged(Slider view, float oldPos, float newPos, int oldValue, int newValue) { + tv_continuous.setText(String.format("pos=%.1f value=%d", newPos, newValue)); + } + }); + + Slider sl_discrete = (Slider)v.findViewById(R.id.slider_sl_discrete); + final TextView tv_discrete = (TextView)v.findViewById(R.id.slider_tv_discrete); + tv_discrete.setText(String.format("pos=%.1f value=%d", sl_discrete.getPosition(), sl_discrete.getValue())); + sl_discrete.setOnPositionChangeListener(new Slider.OnPositionChangeListener() { + @Override + public void onPositionChanged(Slider view, float oldPos, float newPos, int oldValue, int newValue) { + tv_discrete.setText(String.format("pos=%.1f value=%d", newPos, newValue)); + } + }); + return v; } diff --git a/lib/src/main/res/drawable-xhdpi/ic_launcher.png b/app/src/main/res/drawable-xhdpi/ic_launcher.png similarity index 100% rename from lib/src/main/res/drawable-xhdpi/ic_launcher.png rename to app/src/main/res/drawable-xhdpi/ic_launcher.png diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index 80e44c19..662d0fc2 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -55,7 +55,7 @@ android:layout_gravity="start" android:paddingTop="?attr/actionBarSize"> - + android:listSelector="@android:color/transparent"/> diff --git a/app/src/main/res/layout/dialog_recurring.xml b/app/src/main/res/layout/dialog_recurring.xml index 279f1e5b..260a9850 100644 --- a/app/src/main/res/layout/dialog_recurring.xml +++ b/app/src/main/res/layout/dialog_recurring.xml @@ -24,8 +24,7 @@ app:spn_label="@string/rd_repeat" app:spn_arrowColor="#FFFFFFFF" app:spn_dividerHeight="0dp" - app:ripple="@style/Material.Drawable.Ripple.Wave" - app:delayClick="true" + app:rd_style="@style/Material.Drawable.Ripple.Wave" android:layout_gravity="center_vertical"/> @@ -127,8 +126,7 @@ android:layout_height="wrap_content" android:layout_centerVertical="true" android:padding="8dp" - app:ripple="@style/Material.Drawable.Ripple.Wave.Light" - app:delayClick="true"/> + app:rd_style="@style/Material.Drawable.Ripple.Wave.Light"/> diff --git a/app/src/main/res/layout/fragment_button.xml b/app/src/main/res/layout/fragment_button.xml index a00c17de..cbc86fb5 100644 --- a/app/src/main/res/layout/fragment_button.xml +++ b/app/src/main/res/layout/fragment_button.xml @@ -30,15 +30,14 @@ android:gravity="center"> + android:text="BUTTON"/> + app:rd_delayClick="true"/> @@ -67,15 +66,14 @@ android:paddingTop="8dp"> + android:text="BUTTON"/> + app:rd_delayClick="true"/> @@ -112,15 +110,14 @@ android:gravity="center"> + android:text="BUTTON"/> + app:rd_delayClick="true"/> @@ -149,15 +146,14 @@ android:paddingTop="8dp"> + android:text="BUTTON"/> + app:rd_delayClick="true"/> diff --git a/app/src/main/res/layout/fragment_dialog.xml b/app/src/main/res/layout/fragment_dialog.xml index 3b2ef1e0..89ce136b 100644 --- a/app/src/main/res/layout/fragment_dialog.xml +++ b/app/src/main/res/layout/fragment_dialog.xml @@ -30,6 +30,7 @@ android:gravity="center"> + android:text="TITLE ONLY"/> + android:text="MESSAGE ONLY"/> @@ -69,6 +67,7 @@ android:paddingTop="8dp"> + android:text="TITLE & MSG"/> + android:text="CUSTOM"/> @@ -108,6 +104,7 @@ android:paddingTop="8dp"> + android:text="CHOICE"/> + android:text="MULTI CHOICE"/> @@ -155,6 +149,7 @@ android:gravity="center"> + android:text="TIME (LIGHT)"/> + android:text="DATE (LIGHT)"/> @@ -194,6 +186,7 @@ android:paddingTop="8dp"> + android:text="TIME (DARK)"/> + android:text="DATE (DARK)"/> diff --git a/app/src/main/res/layout/fragment_slider.xml b/app/src/main/res/layout/fragment_slider.xml index 47555ccf..675b1a40 100644 --- a/app/src/main/res/layout/fragment_slider.xml +++ b/app/src/main/res/layout/fragment_slider.xml @@ -31,6 +31,14 @@ android:padding="16dp" app:sl_value="50"/> + + + + + android:text="SINGLE LINE"/> + android:text="SINGLE LINE"/> diff --git a/app/src/main/res/layout/fragment_spinner.xml b/app/src/main/res/layout/fragment_spinner.xml index 9da39856..758ccbb6 100644 --- a/app/src/main/res/layout/fragment_spinner.xml +++ b/app/src/main/res/layout/fragment_spinner.xml @@ -19,8 +19,9 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:minWidth="128dp" - app:ripple="@style/FlatWaveButtonRippleStyle" - app:delayClick="false" + app:rd_style="@style/Material.Drawable.Ripple.Wave.Light" + app:rd_enable="true" + app:rd_delayClick="false" app:spn_labelEnable="true" app:spn_label="Spinner with arrow" app:spn_arrowSwitchMode="true" @@ -34,8 +35,9 @@ android:layout_height="wrap_content" android:minWidth="128dp" android:layout_marginTop="16dp" - app:ripple="@style/FlatWaveButtonRippleStyle" - app:delayClick="false" + app:rd_style="@style/Material.Drawable.Ripple.Wave.Light" + app:rd_enable="true" + app:rd_delayClick="false" app:spn_labelEnable="true" app:spn_label="Spinner without arrow" app:spn_arrowSize="0dp" diff --git a/app/src/main/res/layout/fragment_textfield.xml b/app/src/main/res/layout/fragment_textfield.xml index ea0d4007..df726298 100644 --- a/app/src/main/res/layout/fragment_textfield.xml +++ b/app/src/main/res/layout/fragment_textfield.xml @@ -22,6 +22,7 @@ android:inputType="textEmailSubject|textMultiLine" android:hint="Contact" android:imeOptions="actionNext|flagNoEnterAction|flagNoExtractUi" + android:dropDownSelector="@drawable/abc_list_selector_background_transition_holo_light" app:et_inputId="@+id/textfield_et_contact_input" app:et_supportMode="none" app:et_autoCompleteMode="multi" diff --git a/app/src/main/res/layout/rd_item_dropdown_end.xml b/app/src/main/res/layout/rd_item_dropdown_end.xml index 8bdd9e48..2489a9f4 100644 --- a/app/src/main/res/layout/rd_item_dropdown_end.xml +++ b/app/src/main/res/layout/rd_item_dropdown_end.xml @@ -1,12 +1,11 @@ \ No newline at end of file + android:gravity="center_vertical"/> \ No newline at end of file diff --git a/app/src/main/res/layout/rd_item_dropdown_mode.xml b/app/src/main/res/layout/rd_item_dropdown_mode.xml index 8bdd9e48..2489a9f4 100644 --- a/app/src/main/res/layout/rd_item_dropdown_mode.xml +++ b/app/src/main/res/layout/rd_item_dropdown_mode.xml @@ -1,12 +1,11 @@ \ No newline at end of file + android:gravity="center_vertical"/> \ No newline at end of file diff --git a/app/src/main/res/layout/row_contact_replace.xml b/app/src/main/res/layout/row_contact_replace.xml new file mode 100644 index 00000000..9f82bcbb --- /dev/null +++ b/app/src/main/res/layout/row_contact_replace.xml @@ -0,0 +1,5 @@ + + diff --git a/app/src/main/res/layout/row_contact_selected.xml b/app/src/main/res/layout/row_contact_selected.xml new file mode 100644 index 00000000..94196a87 --- /dev/null +++ b/app/src/main/res/layout/row_contact_selected.xml @@ -0,0 +1,5 @@ + + diff --git a/app/src/main/res/layout/row_drawer.xml b/app/src/main/res/layout/row_drawer.xml index ce8bfca9..150e1e6c 100644 --- a/app/src/main/res/layout/row_drawer.xml +++ b/app/src/main/res/layout/row_drawer.xml @@ -1,7 +1,8 @@ - \ No newline at end of file diff --git a/app/src/main/res/layout/row_spn.xml b/app/src/main/res/layout/row_spn.xml index ac8e94f8..1b8364ba 100644 --- a/app/src/main/res/layout/row_spn.xml +++ b/app/src/main/res/layout/row_spn.xml @@ -1,6 +1,7 @@ + app:rd_delayClick="true"/> diff --git a/app/src/main/res/layout/row_spn_dropdown.xml b/app/src/main/res/layout/row_spn_dropdown.xml index 2be7949c..27677bb9 100644 --- a/app/src/main/res/layout/row_spn_dropdown.xml +++ b/app/src/main/res/layout/row_spn_dropdown.xml @@ -1,6 +1,7 @@ + app:rd_delayClick="true"/> diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml index f4d57706..bf915131 100644 --- a/app/src/main/res/values/styles.xml +++ b/app/src/main/res/values/styles.xml @@ -46,7 +46,7 @@ - - - - - - - - - - - - - - -