Skip to content

Instantly share code, notes, and snippets.

@kaushikgopal
kaushikgopal / RandomUtils.java
Created August 5, 2014 19:12
Java Random Utilities Helper
/*
* 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
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
@kaushikgopal
kaushikgopal / AndroidColorUtils.java
Created August 2, 2014 18:31
Some handy utility methods for dealing with Color in Android
private int _darkenOrLightenColor(int color, boolean darken) {
float[] hsv = new float[3];
Color.colorToHSV(color, hsv);
// value component
if (darken) {
hsv[2] *= Math.max(hsv[2] * 0.99f, 0);
} else {
hsv[2] = Math.max(hsv[2] * 1.5f, 1);
}
@kaushikgopal
kaushikgopal / CircleTransformation.java
Last active March 24, 2017 22:22
A set of Picasso Transformation Examples
package co.kaush.mystarterapp.myappmodule.ui.transformations;
import android.graphics.Bitmap;
import android.graphics.BitmapShader;
import android.graphics.Canvas;
import android.graphics.Paint;
import android.graphics.Shader;
import com.squareup.picasso.Transformation;
@kaushikgopal
kaushikgopal / ScopedBus.java
Created July 3, 2014 00:16
An enhanced (otto) event bus - Apache 2 Licensed
import android.os.Handler;
import android.os.Looper;
import com.squareup.otto.Bus;
import com.squareup.otto.ThreadEnforcer;
import java.util.HashSet;
import java.util.Set;
/*
@kaushikgopal
kaushikgopal / Bundler.java
Last active August 29, 2015 14:02
A nice helper utility that creates your Bundle with extras quickly. Apache 2 licensed
import android.os.Bundle;
// see my gist for [https://gist.github.com/kaushikgopal/9eea148a2188dc58fe37](ParcelableSparseArray) implementation
public class Bundler {
private Bundle _bundle;
public Bundler() {
_bundle = new Bundle();
@kaushikgopal
kaushikgopal / ReuseCachedViewAdapter.java
Last active May 22, 2020 19:46
Reusable View Adapter along with view holder pattern. Apache 2 licensed
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import com.micromobs.pkk.R;
import com.micromobs.pkk.ui.adapters.viewholders.ViewHolder;
/**
* 1. reusableView (convertView) caching from the Android framework
@kaushikgopal
kaushikgopal / Truss.java
Created June 5, 2014 15:50 — forked from JakeWharton/Truss.java
Extremely simple wrapper around SpannableStringBuilder to make the API more logical and less awful. Apache 2 licensed. (courtesy JakeWharton)
import android.text.SpannableStringBuilder;
import java.util.ArrayDeque;
import java.util.Deque;
import static android.text.Spanned.SPAN_INCLUSIVE_EXCLUSIVE;
/** A {@link SpannableStringBuilder} wrapper whose API doesn't make me want to stab my eyes out. */
public class Truss {
@kaushikgopal
kaushikgopal / ParcelableSparseArray.java
Last active June 26, 2017 16:30
Parcelable version of Android's SparseArray. Apache 2 licensed
import android.content.Intent;
import android.os.Bundle;
import android.os.Parcel;
import android.os.Parcelable;
import android.util.SparseArray;
import junit.framework.TestCase;
public class ParcelableSparseArray
extends SparseArray<Object>
# First check imagemagick versions
brew versions imagemagick
brew uninstall imagemagick
cd /usr/local/Cellar
git checkout 834ce4a /usr/local/Library/Formula/imagemagick.rb
brew install imagemagick
#!/usr/bin/env ruby
# Get line number for file that needs to be added
argument = ARGV.pop
# do a git status and get the second argument
# filename = %x[git status -s | sed -n '#{argument}p'].split(" ", 2)[1]
filename = %x[git status -s | awk 'NR==#{argument}'].split(" ", 2)[1] # using awk baby!
system("git checkout -- #{filename}")