Skip to content

Instantly share code, notes, and snippets.

Avatar

Frode Nilsen Nilzor

  • Forse.no
  • Oslo, Norway
View GitHub Profile
@Nilzor
Nilzor / build.gradle
Created Jun 19, 2021
Temp build.gradle matrix plugin
View build.gradle
buildscript {
repositories {
mavenCentral()
jcenter()
}
}
plugins {
id 'org.jetbrains.kotlin.jvm' version '1.5.10'
id 'org.jetbrains.intellij' version '1.0'
@Nilzor
Nilzor / attempt_onclick.kt
Created Jun 16, 2021
Attempt at bindingconverter
View attempt_onclick.kt
@BindingConversion
@JvmStatic
fun konverto1(action: (() -> Unit)?) : View.OnClickListener? {
return View.OnClickListener { action?.invoke() }
}
@Nilzor
Nilzor / ContentTypeInterceptor.kt
Last active Jun 19, 2020
An OkHttp interceptor allowing you to override Content-Type for POST, PUT and PATCH requests
View ContentTypeInterceptor.kt
/**
* Overrides the HTTP Header Content-Type for POST, PATCH and PUT calls to the given [contentType]
*/
class ContentTypeInterceptor(private val contentType: String) : Interceptor {
override fun intercept(chain: Interceptor.Chain): Response {
val request = chain.request()
val chainBuilder = request.newBuilder()
request.body()?.let {
val newBody = ForwardingRequestbody(it, contentType)
when (request.method()) {
@Nilzor
Nilzor / ToothpickTest.kt
Created Jun 3, 2020
Toothpick overriding and stuff
View ToothpickTest.kt
package no.ruter.sales.utils
import org.hamcrest.MatcherAssert.assertThat
import org.hamcrest.core.IsInstanceOf
import org.junit.Test
import toothpick.Scope
import toothpick.Toothpick
import toothpick.config.Module
import toothpick.ktp.binding.bind
import toothpick.ktp.binding.module
@Nilzor
Nilzor / databinderror.txt
Last active May 17, 2020
Databind error
View databinderror.txt
import com.myapp.shared.databinding.FragmentSaleProductBindingImpl;
^
symbol: class FragmentSaleProductBindingImpl
^
warning Binding adapter AK(android.widget.ImageView, com.myapp.shared.model.viewmodel.overview.ConnectivityState) already exists for connectivityState! Overriding com.myapp.shared.bindingadapters.ValidatorBindingAdapter.Companion#setIdleCardImage with com.myapp.shared.bindingadapters.ValidatorBindingAdapter#setIdleCardImage
warning Binding adapter AK(android.widget.ImageView, com.myapp.shared.model.viewmodel.overview.ConnectivityState) already exists for connectivityState! Overriding com.myapp.shared.bindingadapters.ValidatorBindingAdapter.Companion#setIdleCardImage with com.myapp.shared.bindingadapters.ValidatorBindingAdapter#setIdleCardImage
warning Binding adapter AK(android.widget.TextView, com.myapp.shared.model.viewmodel.overview.ConnectivityState) already exists for connectivityState! Overriding com.myapp.shared.bindingadapters.ValidatorBin
@Nilzor
Nilzor / BuyTicketButton.kt
Created Apr 23, 2020
DAtabinding to custom prop
View BuyTicketButton.kt
class BuyTicketButton(context: Context, attrs: AttributeSet?) : FrameLayout(context, attrs) {
constructor(context: Context, attrs: AttributeSet?, defStyleAttr: Int, defStyleRes: Int) : this(context, attrs)
constructor(context: Context, attrs: AttributeSet?, defStyleAttr: Int) : this(context, attrs)
init {
val view = LayoutInflater.from(context)!!.inflate(R.layout.button_ticket, this, true)
val attributes = context.obtainStyledAttributes(attrs, R.styleable.BuyTicketButton)
val imageSrc = attributes.getResourceId(R.styleable.BuyTicketButton_imageSrc, 0)
View multiple_null_checks.kt
fun <R, A, B> withNoNulls(p1: A?, p2: B?, function: (p1: A, p2: B) -> R): R? = p1?.let { p2?.let { function.invoke(p1, p2) } }
fun <R, A, B, C> withNoNulls(p1: A?, p2: B?, p3: C?, function: (p1: A, p2: B, p3: C) -> R): R? = p1?.let { p2?.let { p3?.let { function.invoke(p1, p2, p3) } } }
@Nilzor
Nilzor / keybase.md
Created Sep 19, 2017
Keybase proof
View keybase.md

Keybase proof

I hereby claim:

  • I am nilzor on github.
  • I am frodenilsen (https://keybase.io/frodenilsen) on keybase.
  • I have a public key ASAl5OwmAffcKHYFXAub-yC-Z2TP1v9XlbbFy70Qtt55eAo

To claim this, I am signing this object:

@Nilzor
Nilzor / debug.log
Created Sep 9, 2017
Xamarin HttpClient log
View debug.log
Android application is debugging.
Loaded assembly: /storage/emulated/0/Android/data/xam_android_news.xam_android_news/files/.__override__/xam-android-news.dll
Loaded assembly: /storage/emulated/0/Android/data/xam_android_news.xam_android_news/files/.__override__/RestSharp.dll [External]
Loaded assembly: Mono.Android.dll [External]
Loaded assembly: Java.Interop.dll [External]
Loaded assembly: System.Runtime.dll [External]
Loaded assembly: System.Collections.Concurrent.dll [External]
09-09 13:59:37.789 I/art ( 3889): Not late-enabling -Xcheck:jni (already on)
09-09 13:59:37.789 W/art ( 3889): Unexpected CPU variant for X86 using defaults: x86
09-09 13:59:37.828 W/monodroid( 3889): Creating public update directory: `/data/user/0/xam_android_news.xam_android_news/files/.__override__`
@Nilzor
Nilzor / bash.rc
Last active Aug 11, 2017
bash.rc for Android screenshot and recording
View bash.rc
And-Screenshot() {
# Todo: Add demo mode: https://android.googlesource.com/platform/frameworks/base/+/master/packages/SystemUI/docs/demo_mode.md
if [ "$1" = "" ] ; then echo "Specify output file name"
else
adb shell screencap -p /sdcard/screen.png
adb pull /sdcard/screen.png
adb shell rm /sdcard/screen.png
PCT=$2
if [ "$PCT" = "" ]; then PCT=33%; fi
convert screen.png -resize $PCT $1