Skip to content

Instantly share code, notes, and snippets.

View tunitowen's full-sized avatar

Tony Owen tunitowen

  • OwenTech Ltd
  • Leeds
View GitHub Profile
@tunitowen
tunitowen / joii_isolate.dart
Created September 2, 2025 12:27
Joii Isolate
import 'dart:isolate';
import 'package:flutter/foundation.dart';
void main() async {
final receivePort = ReceivePort();
receivePort.listen((value) {
print("V: $value");
});
@tunitowen
tunitowen / joii_compute.dart
Created September 2, 2025 12:26
Joii Compute
import 'package:flutter/foundation.dart';
void main() async {
final value = await compute(getThing, "Hello World");
print(value);
}
String getThing(String string) {
final list = List.generate(100000, (e) => e);
@tunitowen
tunitowen / joii_streams_2.dart
Created September 2, 2025 12:25
Joii Stream Mapping
void main() {
getStream()
.map((v) => "Something $v")
.listen((v){
print(v);
});
}
Stream<String> getStream() async* {
final list = List.generate(10, (e) => e);
@tunitowen
tunitowen / joii_streams_1.dart
Created September 2, 2025 12:23
Joii Streams Simple
void main() {
getStream()
.listen((v){
print(v);
});
}
Stream<String> getStream() async* {
final list = List.generate(10, (e) => e);
@tunitowen
tunitowen / joii_future.dart
Created September 2, 2025 12:20
Joii - Future
void main() async {
getThing().then((value){
print(value);
});
final value = await getThing();
print(value);
}
Future<String> getThing() async {
import 'package:flutter/material.dart';
import 'dart:math';
const SCALE_FRACTION = 0.7;
const FULL_SCALE = 1.0;
const PAGER_HEIGHT = 200.0;
class ItCrowdPage extends StatefulWidget {
@override
_ItCrowdPageState createState() => _ItCrowdPageState();
@tunitowen
tunitowen / main.dart
Created December 6, 2018 11:31
Multiple Flare Animations - Flutter
import 'package:flutter/material.dart';
import 'package:flare/flare_actor.dart';
const String ANIM_JUST_NIGHT = "just_night";
const String ANIM_NIGHT_TO_DAY = "night_to_day";
const String ANIM_DAY_TO_NIGHT = "day_to_night";
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
class _MyHomePageState extends State<MyHomePage> {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text(widget.title),
),
body: Center(
child: FlareActor("assets/heart.flr", alignment:Alignment.center, fit:BoxFit.contain, animation: "heart",),
@tunitowen
tunitowen / GetPeople.kt
Created May 19, 2017 09:09
Room-GettingStarted-GetData
fun registerAllPersonListener() {
MyApp.database?.personDao()?.getAllPeople()
?.subscribeOn(Schedulers.io())
?.observeOn(AndroidSchedulers.mainThread())
?.subscribe { listOfPeople ->
view.personTableUpdated(listOfPeople)
}
}
@tunitowen
tunitowen / AddPerson.kt
Created May 19, 2017 08:29
Room-GettingStarted-AddData
fun addPerson(firstName: String, lastName: String) {
val person = Person(0, firstName, lastName)
Single.fromCallable {
MyApp.database?.personDao()?.insert(person)
}.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread()).subscribe()
}