Skip to content

Instantly share code, notes, and snippets.

View Popalay's full-sized avatar
🇺🇦

Denys Nykyforov Popalay

🇺🇦
View GitHub Profile
@Popalay
Popalay / PaginatiomCallback
Created October 20, 2016 14:51
Pagination
public interface PaginationCallback {
boolean isRefreshing();
void setRefreshing(boolean refreshing);
void getPage(int page);
UltimateAdapter getAdapter();
@Popalay
Popalay / EndDrawableOnTouchListener.java
Created January 18, 2017 18:29
EndDrawableOnTouchListener
public abstract class EndDrawableOnTouchListener implements View.OnTouchListener {
private static final int DRAWABLE_START = 0;
private static final int DRAWABLE_TOP = 1;
private static final int DRAWABLE_END = 2;
private static final int DRAWABLE_BOTTOM = 3;
@Override
public boolean onTouch(View view, MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_DOWN) {
@Popalay
Popalay / MultipartFactory.java
Last active February 11, 2017 18:58
Generate Multipart
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.annotation.WorkerThread;
import android.webkit.MimeTypeMap;
import com.google.gson.annotations.SerializedName;
import java.io.File;
import java.lang.reflect.Field;
import java.util.ArrayList;
public final class RealmUtils {
private RealmUtils() {
}
public static <T extends RealmObject> Observable<List<T>> createObservableList(Func1<Realm, RealmResults<T>>
query) {
final HandlerThread dbHandler = createDbHandler();
final Scheduler scheduler = AndroidSchedulers.from(dbHandler.getLooper());
final AtomicReference<Realm> realmReference = new AtomicReference<>(null);
@Popalay
Popalay / PresenterModule.java
Created February 8, 2017 06:56 — forked from dened/PresenterModule.java
Dagger + Moxy
@Module
public class PresenterModule {
@Provides
LoginPresenter providePresenter(Router router, LoginInteractor interactor, PreferenceUtils preferenceUtils) {
return new LoginPresenter(router, interactor, preferenceUtils);
}
}
@Singleton
@Component(modules = {
import android.view.MotionEvent;
import android.view.View;
import android.widget.TextView;
public abstract class DrawableOnTouchListener implements View.OnTouchListener {
private static final int DRAWABLE_START = 0;
private static final int DRAWABLE_TOP = 1;
private static final int DRAWABLE_END = 2;
private static final int DRAWABLE_BOTTOM = 3;
import android.content.Context;
import android.content.res.TypedArray;
import android.graphics.Rect;
import android.graphics.drawable.Drawable;
import android.support.annotation.ArrayRes;
import android.support.annotation.Nullable;
import android.support.annotation.StringRes;
import android.support.v4.content.ContextCompat;
import android.support.v4.graphics.drawable.DrawableCompat;
import android.support.v7.widget.AppCompatAutoCompleteTextView;
public class PaginationScrollListener extends RecyclerView.OnScrollListener {
private static final int ITEMS_OFFSET_TO_LOAD_DEFAULT = 3;
private final OnRecyclerViewScrolledToPageListener mCallback;
private final int mOffset;
private LinearLayoutManager mLayoutManager;
private boolean loading;
private int previousTotal;
public interface OnRecyclerViewScrolledToPageListener {
private void refitText(String text, int textWidth) {
if (textWidth <= 0) {
return;
}
final int targetWidth = textWidth - getPaddingLeft() - getPaddingRight();
float hi = 1f;
float lo = 0f;
float textWidthCalculated;
while (hi - lo > 0.1) {
@Popalay
Popalay / View
Created July 21, 2017 10:34
KotlinSample
import android.arch.lifecycle.ViewModelProvider
import android.arch.lifecycle.ViewModelProviders
import android.content.Context
import android.content.Intent
import android.databinding.DataBindingUtil
import android.graphics.Color
import android.os.Bundle
import android.view.View
import com.popalay.cardme.R
import com.popalay.cardme.databinding.ActivityHolderDetailsBinding