Skip to content

Instantly share code, notes, and snippets.


Lucio Maciel luciofm

View GitHub Profile
* Copyright 2013 Bo Wang
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* Unless required by applicable law or agreed to in writing, software
private class MyHttpClient extends UrlConnectionClient {
SSLContext sslContext = null;
SSLSocketFactory sslSocketFactory = null;
private final OkHttpClient client;
static final int CONNECT_TIMEOUT_MILLIS = 15 * 1000; // 15s
static final int READ_TIMEOUT_MILLIS = 20 * 1000; // 20s
public MyHttpClient(Context context) {
client = generateDefaultOkHttp();
View twoway-view-rotation-fix
diff --git a/library/src/main/java/org/lucasr/twowayview/ b/library/src/main/java/org/lucasr/twowayview/
index e631060..d6956ff 100644
--- a/library/src/main/java/org/lucasr/twowayview/
+++ b/library/src/main/java/org/lucasr/twowayview/
@@ -218,6 +218,8 @@ public class TWSpannableGridLayoutManager extends TWGridLayoutManager {
int childCount = 0, i = 0;
while (i < itemCount && i < laneCount) {
SpannableItemEntry entry = (SpannableItemEntry) getItemEntryForPosition(i);
+ if (entry == null)
+ break;
View twoway-view stacktrace
E Process: org.lucasr.twowayview.sample, PID: 7606
E java.lang.NullPointerException: Attempt to read from field 'int org.lucasr.twowayview.widget.TWSpannableGridLayoutManager$SpannableItemEntry.rowSpan' on a
null object reference
E at org.lucasr.twowayview.widget.TWSpannableGridLayoutManager$SpannableItemEntry.access$100(
E at org.lucasr.twowayview.widget.TWSpannableGridLayoutManager.getFirstChildCountInLanes(
E at org.lucasr.twowayview.widget.TWSpannableGridLayoutManager.moveLayoutToPosition(
E at org.lucasr.twowayview.widget.TWLanedLayoutManager.onLayoutChildren(
E at
E at
E at android.view.View.layout(
luciofm /
Created Nov 4, 2015 — forked from mttkay/
A simple Rx based pager
public class Pager<I, O> {
private static final Observable FINISH_SEQUENCE = Observable.never();
private PublishSubject<Observable<I>> pages;
private Observable<I> nextPage = finish();
private Subscription subscription = Subscriptions.empty();
private final PagingFunction<I> pagingFunction;
private final Func1<I, O> pageTransformer;
luciofm / build.gradle
Created Dec 2, 2015
Auto increment version number on release builds... You can change the build type on versionCode.gradle, you also will need to commit and push on your CI
View build.gradle
apply from: 'versionCode.gradle'
android {
defaultConfig {
versionName VERSION_NAME
versionCode Integer.parseInt(VERSION_CODE)
import java.nio.charset.Charset;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;
import java.util.TimeZone;
import okio.BufferedSource;
import okio.ByteString;
View FallbackSealedClass.kt
* Copyright 2018 Lucio Maciel, Rocket.Chat
* Copyright 2016 Serj Lotutovici
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
luciofm / AlphaSpan.kt
Created Apr 26, 2018
Animate alhpa of each character separately
View AlphaSpan.kt
package com.luciofm.playground
import android.text.TextPaint
class AlphaSpan(var alpha: Int) : CharacterStyle(), UpdateAppearance {
override fun updateDrawState(ds: TextPaint) {
ds.alpha = alpha
You can’t perform that action at this time.