Skip to content

Instantly share code, notes, and snippets.

View jonahwilliams's full-sized avatar

Jonah Williams jonahwilliams

View GitHub Profile
Fun times with loop vectorization.
Using command:
../../flutter/buildtools/mac-x64/clang/bin/clang++ -MMD -MF clang_x64/obj/flutter/impeller/geometry/geometry.path_component.o.d -DUSE_OPENSSL=1 -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D_FORTIFY_SOURCE=2 -D_LIBCPP_DISABLE_AVAILABILITY=1 -D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS -D_LIBCPP_ENABLE_THREAD_SAFETY_ANNOTATIONS -DNDEBUG -DNVALGRIND -DDYNAMIC_ANNOTATIONS_ENABLED=0 -DIMPELLER_DEBUG=1 -DIMPELLER_ENABLE_CAPTURE=1 -DIMPELLER_SUPPORTS_RENDERING=1 -DIMPELLER_ENABLE_METAL=1 -DIMPELLER_ENABLE_OPENGLES=1 -DIMPELLER_ENABLE_VULKAN=1 -DFLUTTER_RUNTIME_MODE_DEBUG=1 -DFLUTTER_RUNTIME_MODE_PROFILE=2 -DFLUTTER_RUNTIME_MODE_RELEASE=3 -DFLUTTER_RUNTIME_MODE_JIT_RELEASE=4 -DDART_LEGACY_API=\[\[deprecated\]\] -DFLUTTER_RUNTIME_MODE=1 -DFLUTTER_JIT_RUNTIME=1 -I../.. -Iclang_x64/gen -I../../third_party/libcxx/include -I../../third_party/libcxxabi/include -I../../flutter/build/secondary/third_party/libcxx/config -I../../flutter -Wthread-safety-analysis -fno-strict-a
// Copyright 2014 The Flutter Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
import 'dart:async';
import 'dart:io';
import 'dart:typed_data';
import 'dart:ui' as ui;
import 'package:flutter/material.dart';
is_debug = false
engine_version = "d9b46ebfb1802d31a91dc3163d8559ea198ebc22"
skia_version = "10058142c8a2b52da917d74707462f89f2c7502d"
dart_version = "728fcf0bcbcac3eb5c2f1a3c2d7280d4026af897"
use_goma = false
goma_dir = "None"
full_dart_sdk = false
skia_enable_flutter_defines = true
skia_use_dng_sdk = false
skia_use_sfntly = false
diff --git a/packages/video_player/video_player_android/android/src/main/java/io/flutter/plugins/videoplayer/VideoPlayer.java b/packages/video_player/video_player_android/android/src/main/java/io/flutter/plugins/videoplayer/VideoPlayer.java
index b8b781912..0febc8b60 100644
--- a/packages/video_player/video_player_android/android/src/main/java/io/flutter/plugins/videoplayer/VideoPlayer.java
+++ b/packages/video_player/video_player_android/android/src/main/java/io/flutter/plugins/videoplayer/VideoPlayer.java
@@ -50,7 +50,7 @@ final class VideoPlayer {
private Surface surface;
- private final TextureRegistry.SurfaceTextureEntry textureEntry;
+ private final TextureRegistry.SurfaceProducer textureProducer;
diff --git a/impeller/entity/render_target_cache.cc b/impeller/entity/render_target_cache.cc
index 3a9710a93e..574019faa9 100644
--- a/impeller/entity/render_target_cache.cc
+++ b/impeller/entity/render_target_cache.cc
@@ -33,7 +33,11 @@ RenderTarget RenderTargetCache::CreateOffscreen(
int mip_count,
const std::string& label,
RenderTarget::AttachmentConfig color_attachment_config,
- std::optional<RenderTarget::AttachmentConfig> stencil_attachment_config) {
+ std::optional<RenderTarget::AttachmentConfig> stencil_attachment_config,
@jonahwilliams
jonahwilliams / main.dart
Created February 26, 2024 17:27
minimal repro
import 'package:flutter/material.dart';
import 'package:flutter_test/flutter_test.dart';
group('Shadows on ShapeDecoration', () {
Widget build(int elevation) {
return Center(
child: RepaintBoundary(
child: Container(
margin: const EdgeInsets.all(150.0),
decoration: ShapeDecoration(
@jonahwilliams
jonahwilliams / output.svg
Created February 2, 2024 01:30
profile example
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@jonahwilliams
jonahwilliams / main.dart
Created January 22, 2024 20:39
page transition gif
import 'package:flutter/material.dart';
void main() {
runApp(
MaterialApp(
home: Page1(),
routes: {'/foo': (context) {
return Page2();
}},
)
@jonahwilliams
jonahwilliams / main.txt
Last active December 4, 2023 23:17
What to do for stable Impeller on Android
# Vulkan
~1. Surface Texture support: https://github.com/flutter/flutter/issues/137639~
1a. Update: we can't do this, instead we'll add a new API and migrate flutter/packages.
2. Fragment program API support: https://github.com/flutter/flutter/issues/123741
3. Framebuffer fetch: https://github.com/flutter/flutter/issues/128911
# GLES
typedef AdaptiveThemeCallback = Object? Function(ThemeData theme, Type type, Object? defaultValue);
Object? defaultCallback(ThemeData theme, Type type, Object? defaultValue) => defaultValue;
class ThemeData {
factory ThemeData({ AdaptiveThemeCallback? callback }) {
return ThemeData.raw(callback: callback ?? defaultCallback);
}