Skip to content

Instantly share code, notes, and snippets.

Avatar
🍃

Takao Chiba chibatching

🍃
View GitHub Profile
@chibatching
chibatching / qr_gen.py
Created Sep 26, 2014
QRcode generator for the access local test server
View qr_gen.py
"""
QRcode generator
usage:
qr_gen.py [-t] <url>
options:
-t Translate localhost or loopback address to host address
"""
import qrcode
@chibatching
chibatching / resource_copy.py
Created Feb 13, 2015
Copy image files with dpi suffix (_xdpi, _hdpi etc..) to Android resource folder.
View resource_copy.py
"""
Copy image files with dpi suffix to Android resource folder
usage:
resource_copy.py <target-resource-folder> <source-file>...
"""
import os
import glob
import sys
import re
@chibatching
chibatching / tinyPNG.py
Created Jun 19, 2015
Batch compress PNG images by using TinyPNG
View tinyPNG.py
"""
Batch compress PNG images by using TinyPNG
usage:
tinyPNG.py <key> <target-folder> <source-file>...
"""
import os
import glob
import sys
import re
import shutil
View CustomTabsHelper.kt
import android.app.Activity
import android.content.ComponentName
import android.content.Context
import android.content.Intent
import android.content.pm.PackageManager
import android.graphics.Bitmap
import android.net.Uri
import android.support.customtabs.CustomTabsClient
import android.support.customtabs.CustomTabsIntent
import android.support.customtabs.CustomTabsServiceConnection
View SampleAdapter.kt
class SampleAdapter() : RecyclerView.Adapter<SampleAdapter.ViewHolder>() {
var data: List<String> = emptyList()
var onClick: (String) -> Unit = {}
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder? {
val binding = ItemListBinding.inflate(LayoutInflater.from(parent.context), parent, false)
binding.root.setOnClickListener {
onClick(data[(parent as RecyclerView).getChildAdapterPosition(it)])
}
return ViewHolder(it)
View DatabindingUtil.kt
import android.app.Activity
import android.databinding.DataBindingUtil
import android.databinding.ViewDataBinding
fun <T : ViewDataBinding> Activity.contentViewBinding(layout: Int): Lazy<T> = lazy {
DataBindingUtil.setContentView<T>(this, layout)
}
@chibatching
chibatching / play_service_proj_builder.py
Last active Nov 26, 2016
Create eclipse library project from google play service aar in android sdk
View play_service_proj_builder.py
from distutils.spawn import find_executable
import os
import re
import sys
import subprocess
import zipfile
import tempfile
import shutil
View LatLngUtils.kt
import com.google.android.gms.maps.model.LatLng
// Compute latitude and longitude from current lat lng,
// using Vincenty's direct formulae https://en.wikipedia.org/wiki/Vincenty's_formulae
fun LatLng.computeLatLngByDistanceAndBearing(distance: Double, bearing: Double): LatLng {
val PI = Math.PI / 180.0
val MAXITERS = 20
View NestedCoordinatorLayout.kt
import android.content.Context
import android.support.design.widget.CoordinatorLayout
import android.support.v4.view.NestedScrollingChild
import android.support.v4.view.NestedScrollingChildHelper
import android.util.AttributeSet
import android.view.View
/**
* Propagate nested scroll event to in/out nested coordinator layout
@chibatching
chibatching / OAuthPostHurlStack.java
Last active Feb 3, 2018
OAuth signed POST request with Volley + oauth-signpost
View OAuthPostHurlStack.java
public class OAuthPostHurlStack extends HurlStack {
private final OAuthConsumer mConsumer;
private ArrayList<String> mOauthSignedPosts = new ArrayList<>();
public OAuthPostHurlStack(OAuthConsumer consumer) {
mConsumer = consumer;
}
@Override