Skip to content

Instantly share code, notes, and snippets.

View takahirom's full-sized avatar

Takahiro Menju takahirom

View GitHub Profile
@takahirom
takahirom / .diff
Last active March 29, 2018 01:01
Created with Copy to Gist
+android.enableD8.desugaring=true
+android.databinding.enableV2=true
@takahirom
takahirom / codeStyleConfig.xml
Last active March 27, 2018 12:36
Created with Copy to Gist
<component name=”ProjectCodeStyleConfiguration”>
 <state>
 <option name=”USE_PER_PROJECT_SETTINGS” value=”true” />
 </state>
</component>
@takahirom
takahirom / Project.xml
Last active March 27, 2018 12:37
Created with Copy to Gist
<component name=”ProjectCodeStyleConfiguration”>
 <code_scheme name=”Project” version=”173">
 <option name=”USE_SAME_INDENTS” value=”true” />
@takahirom
takahirom / .diff
Created March 27, 2018 12:34
Created with Copy to Gist
-!.idea/codeStyleSettings.xml
+!.idea/codeStyles/*
@takahirom
takahirom / NonNullObservableField.kt
Last active March 28, 2018 07:57
NonNullObservableField for AGP 3.1 DataBinding and Kotlin
import android.databinding.ObservableField
class NonNullObservableField<T : Any>(value: T) : ObservableField<T>(value) {
override fun get(): T {
return super.get() as T
}
}
@takahirom
takahirom / DebugApp.java
Created April 7, 2018 10:59
Created with Copy to Gist
final SimpleItem item = new SimpleItem.Builder("all: this is the title")
.text("this is the text")
.image(R.drawable.ic_list_black_24dp)
.clickListener(new View.OnClickListener() {
@Override public void onClick(View v) {
Toast.makeText(App.this, "click",Toast.LENGTH_SHORT).show();
}
})
.build();
SimpleItemHyperionPlugin.addItem(item);
@takahirom
takahirom / kotlinize.sh
Created April 12, 2018 13:39
Generate git mv for Kotlinize
git status -s|awk '$1=="D"&&substr($2,length($2)-4)==".java"{
file=substr($2,0,length($2)-5);
getline;
if(substr($2,0,length($2)-3)==file){
print "mv " file".kt " file".kt_bak\ngit checkout HEAD "file".java\ngit mv " file".java "file".kt\ngit add "file".kt\nmv "file".kt_bak " file".kt"
}
}'
import 'dart:async';
main() async{
// ①
asyncFunc1().then((_) => asyncFunc2()).then((result) {
print(result);
});
// ②
var asyncResult1 = await asyncFunc1();
import 'dart:async';
import 'dart:convert';
import 'dart:io';
void main() {
asyncInvoker().then((_) {
print("async done");
});
}
MemoryLeak.setWatcher(refWatcher(this).listenerServiceClass(DisplayLeakService::class.java)
.excludedRefs(AndroidExcludedRefs
.createAppDefaults().apply {
if (Build.VERSION.SDK_INT > Build.VERSION_CODES.O_MR1) {
staticField("android.view.ViewGroup\$ViewLocationHolder", "sPool")
staticField("android.view.inputmethod.InputMethodManager", "sInstance")
}
}
.build())
.buildAndInstall())