Skip to content

Instantly share code, notes, and snippets.

View benoitjadinon's full-sized avatar

Benoit Jadinon benoitjadinon

View GitHub Profile
@benoitjadinon
benoitjadinon / CoachMarks.cs
Last active October 7, 2020 04:48
SkiaSharp Xamarin Coach Marks Overlay
using System.Collections.Generic;
using System.Drawing;
using SkiaSharp;
#if __IOS__
using SkiaSharp.Views.iOS;
using UIKit;
#elif __ANDROID__
using SkiaSharp.Views.Android;
#endif
@benoitjadinon
benoitjadinon / calendar.workbook
Last active August 9, 2018 07:28
skiasharp ios calendar wip

uti: com.xamarin.workbook id: 3f9c2e8c-577a-47e1-bd7f-8ec872ff5c29 title: SkiaSharp on iOS platforms:

  • iOS packages:
  • id: SkiaSharp version: 1.60.2
  • id: SkiaSharp.Views
// ==UserScript==
// @name Coinigy with TradingView
// @namespace http://tampermonkey.net/
// @version 0.1
// @description adds a TradingView tab
// @author BenJad
// @match https://www.coinigy.com/*
// @grant none
// ==/UserScript==
using System;
using System.Collections;
using System.Collections.Generic;
// http://stackoverflow.com/questions/150479/order-of-items-in-classes-fields-properties-constructors-methods#310967
// https://blogs.msdn.microsoft.com/brada/2005/01/26/internal-coding-guidelines/
public class Program
{
public static void Main()
public static class RxExtensions
{
/*
.TraceWithName(nameof(Reachability))
> Rx Reachability#1: Subscribe()
> Rx Reachability#1: OnNext(False)
.TraceWithName(nameof(reach.WhenConnectedChanged), this)
> Rx AppDelegate_WhenConnectedChanged:2037545460#1: Subscribe()
> Rx AppDelegate_WhenConnectedChanged:2037545460#1: OnNext(connected)
public static class UIStoryboardExtensions
{
// Storyboard.InstantiateViewController<LoginController>()
// instead of :
// Storyboard.InstantiateViewController(nameof(LoginController)) as LoginController
// instead of :
// Storyboard.InstantiateViewController("LoginController") as LoginController
public static T InstantiateViewController<T>(this UIStoryboard @this)
where T : UIViewController
package com.bja.whatever;
import android.support.design.widget.TextInputLayout;
import android.widget.Button;
import android.widget.EditText;
import com.jakewharton.rxbinding.view.RxView;
import com.jakewharton.rxbinding.widget.RxTextView;
import java.util.Arrays;
@benoitjadinon
benoitjadinon / AbstractRxRoboController.java
Last active March 21, 2016 18:05
extends [AbstractRoboController](https://gist.github.com/benoitjadinon/3f1932163c65b4c31be0) and adds RxLifecycle info and helpers to create subscriptions
package roboutils;
import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.support.annotation.CheckResult;
import android.support.annotation.NonNull;
import com.trello.rxlifecycle.ActivityEvent;
import com.trello.rxlifecycle.ActivityLifecycleProvider;
@benoitjadinon
benoitjadinon / AbstractRoboController.java
Last active February 8, 2016 16:59
Android : Roboguice base controller class containing lifecycle methods ready to override, to avoid explicitly using lifecycle events @observes everywhere
package roboutils;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.content.res.Configuration;
import android.os.Bundle;
import android.view.View;
import com.google.inject.Inject;
@benoitjadinon
benoitjadinon / closures.cs
Last active November 10, 2015 20:45
functional port exercise, based on the provided Kotlin sample
//https://dotnetfiddle.net/KXXMef
// shorter but less generic :
// https://dotnetfiddle.net/R3m1h2
using System;
using System.Collections;
using System.Linq;
public class Program
{