Skip to content

Instantly share code, notes, and snippets.

View rayliverified's full-sized avatar
🤠
Framework Developer

Ray Li rayliverified

🤠
Framework Developer
View GitHub Profile
import 'package:flutter/material.dart';
typedef BlocBuilder<T> = T Function();
typedef BlocDisposer<T> = Function(T);
abstract class BlocBase {
void dispose();
}
class BlocProvider<T extends BlocBase> extends StatefulWidget {
class CustomTrianglePainter extends CustomPainter {
final Color color;
late Paint _paint;
CustomTrianglePainter(this.color) {
_paint = Paint()
..color = color
..style = PaintingStyle.fill;
}
@rayliverified
rayliverified / flutter_desktop_web_scroll_test.dart
Created February 7, 2022 00:51
Flutter Desktop vs Web Scroll Test
import 'package:flutter/material.dart';
void main() {
runApp(const MyApp());
}
class MyApp extends StatelessWidget {
const MyApp({Key? key}) : super(key: key);
@override
@rayliverified
rayliverified / paste_from_clipboard.dart
Created January 25, 2022 23:57
Paste Image and Text from Clipboard on Web into Flutter
import 'dart:async';
import 'dart:html' as html;
import 'dart:typed_data';
import 'package:flutter/material.dart';
void main() {
runApp(const MyApp());
}
import 'package:flutter/material.dart';
import 'package:google_fonts/google_fonts.dart';
const Color darkBlue = Color.fromARGB(255, 18, 32, 47);
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
import 'package:flutter/gestures.dart';
import 'package:flutter/material.dart';
Future<void> main() async {
WidgetsFlutterBinding.ensureInitialized();
runApp(App());
}
class App extends StatefulWidget {
@override
@rayliverified
rayliverified / shake_utils.dart
Created May 25, 2020 18:13
Flutter Shake Detection Attempt (algorithm doesn't filter events well)
import 'dart:async';
import 'package:rxdart/rxdart.dart';
import 'package:sensors/sensors.dart';
Stream<bool> isShaking() {
final timeout = Duration(milliseconds: 300);
final accelerationThreshold = 3;
final sampleInterval = Duration(milliseconds: 50);
final moveCountThreshold = 5;
@rayliverified
rayliverified / device_dimensions.json
Created May 13, 2020 22:29
Popular Device Dimensions
[
{
"brand": "iPhone",
"model": "11 Pro Max",
"width": 1242,
"height": 2688,
"physicalSize": 6.5,
"devicePixelRatio": 3
},
{
@rayliverified
rayliverified / main.dart
Created April 20, 2020 22:49
Flutter.dev Example 3 - Counter
import 'package:flutter/material.dart';
class Counter extends StatefulWidget {
_CounterState createState() => _CounterState();
}
class _CounterState extends State<Counter> {
double val;
void initState() {
@rayliverified
rayliverified / main.dart
Created April 20, 2020 22:48
Flutter.dev Example 2 - Fibonacci
import 'package:flutter/material.dart';
void main() async {
final numbers = FibonacciNumbers();
runApp(
MaterialApp(
debugShowCheckedModeBanner: false,
home: Scaffold(
appBar: AppBar(