Skip to content

Instantly share code, notes, and snippets.

Ryan Davis rdavisau

Block or report user

Report or block rdavisau

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
View BackgroundImagePage.cs
public class BackgroundImagePage : ContentPage
{
public BackgroundImagePage() =>
Content = new Grid // this is the outer grid
{
Children =
{
// this image fills the outer grid and sits behind the 'original' content
new Image { Source = new Uri("https://tinyurl.com/msdevbg"), Aspect = Aspect.AspectFill },
@rdavisau
rdavisau / NSNotificationCenterExtensions.cs
Created Dec 25, 2016
Provides `IObservable` semantics for `NSNotificationCenter` subscriptions
View NSNotificationCenterExtensions.cs
public static class NSNotificationCenterExtensions
{
public static IObservable<NSNotification> ObserveNotification(this NSNotificationCenter notificationCenter, NSString notificationKey) =>
Observable.Create<NSNotification>(obs =>
{
var nsObserver = notificationCenter.AddObserver(notificationKey, obs.OnNext);
return Disposable.Create(() => notificationCenter.RemoveObserver(nsObserver));
});
}
@rdavisau
rdavisau / 💣.cs
Created Oct 24, 2016
HockeyApp UnobservedTaskException
View 💣.cs
using System;
using System.Threading.Tasks;
using Foundation;
using HockeyApp.iOS;
using UIKit;
namespace HockeyCrash
{
[Register("AppDelegate")]
public class AppDelegate : UIApplicationDelegate
View internet-is-down.linq
<Query Kind="Program">
<Reference>&lt;RuntimeDirectory&gt;\System.Windows.Forms.dll</Reference>
<Reference>&lt;RuntimeDirectory&gt;\System.Security.dll</Reference>
<Reference>&lt;RuntimeDirectory&gt;\System.Configuration.dll</Reference>
<Reference>&lt;RuntimeDirectory&gt;\Accessibility.dll</Reference>
<Reference>&lt;RuntimeDirectory&gt;\System.Runtime.Serialization.Formatters.Soap.dll</Reference>
<Reference>&lt;RuntimeDirectory&gt;\System.Deployment.dll</Reference>
<NuGetReference>DynamicLINQ</NuGetReference>
<NuGetReference>DynamicQuery</NuGetReference>
<NuGetReference>Newtonsoft.Json</NuGetReference>
@rdavisau
rdavisau / dark-style-from-vs-2015.json
Created Feb 25, 2016
dark-style-from-vs-2015.json
View dark-style-from-vs-2015.json
{
"name":"dark-style-from-vs-2015",
"version":"1.0",
"description":"Imported color scheme",
"originator":"Imported from /Users/rdavis/Library/XamarinStudio-5.0/HighlightingSchemes/dark-style-from-vs-2015.vssettings",
"colors":[
{"name": "Background(Read Only)", "color":"#1E1E1E" },
{"name": "Search result background", "color":"#005F60" },
{"name": "Search result background (highlighted)", "color":"#007F80" },
{"name": "Fold Square", "color":"#A5A5A5" },
@rdavisau
rdavisau / AcceptSelfSignedCertificateWebView.cs
Created Dec 3, 2015
A UIWebView subclass for Xamarin iOS that accepts self-signed certificates. Note the caveats at https://ryandavis.io/allowing-uiwebview-to-accept-self-signed-certificates
View AcceptSelfSignedCertificateWebView.cs
public class AcceptSelfSignedCertificateWebView : UIWebView
{
private NSUrlRequest _failedRequest;
private bool _authenticated;
private bool OnShouldStartLoad(UIWebView webView, NSUrlRequest request, UIWebViewNavigationType navigationType)
{
var result = _authenticated;
if (!_authenticated)
{
@rdavisau
rdavisau / GetXamarinApps.cs
Created Nov 5, 2015
Checks your iTunes folder for any .ipas that look like Xamarin apps
View GetXamarinApps.cs
void Main()
{
var myXamarinApps =
Directory
.EnumerateFiles(Path.Combine(Environment.GetEnvironmentVariable("HOMEPATH"), @"Music\iTunes\iTunes Media\Mobile Applications"), "*.ipa")
.Where(f=> ZipFile.Open(f, ZipArchiveMode.Read)
.GetRawEntries()
.Any(e=> e.FullName.Contains(".monotouch-")));
foreach (var app in myXamarinApps)
View EnumerableStream.cs
/// <summary>
/// Provides a convenience method for constructing an EnumerableStream<T>.
/// </summary>
public static class EnumerableStream
{
public static EnumerableStream<T> Create<T>(IEnumerable<T> source, Func<T, List<byte>> serializer)
{
return new EnumerableStream<T>(source, serializer);
}
}
@rdavisau
rdavisau / DU.fsx
Created Aug 10, 2015
Akka.Cluster + Discriminated Union test
View DU.fsx
open System
open System.IO
open System.Net
open Akka
open Akka.Actor
open Akka.FSharp
open Akka.Remote
open Akka.Actor
open Akka.Cluster
@rdavisau
rdavisau / SocketHelpersDemo.linq
Last active Aug 29, 2015
LINQPad script demonstrating how to use service discovery and the JsonProtocolMessenger
View SocketHelpersDemo.linq
<Query Kind="Program">
<NuGetReference>Newtonsoft.Json</NuGetReference>
<NuGetReference Prerelease="true">rda.SocketHelpers</NuGetReference>
<Namespace>SocketHelpers.Discovery</Namespace>
<Namespace>SocketHelpers.Messaging</Namespace>
<Namespace>Sockets.Plugin</Namespace>
<Namespace>Splat</Namespace>
<Namespace>System.Reactive.Linq</Namespace>
<Namespace>System.Threading.Tasks</Namespace>
</Query>
You can’t perform that action at this time.