I'm trying to implement the OpenContainer transition for go_router in Flutter. It seems like no matter what I do, the end result is choppy. :/
I'm using the native Transition widgets as well as the relatively new SnapshotWidget, but to no avail. Should I maybe use a custom painter? Would that improve performance?
Please take a look at the code below and let me know if you see any ways that I could improve performance.
Here's my attempt at an OpenContainer transition for go_router:
undefined
import 'package:flutter/material.dart';
import 'package:your_project_name_xxx/ui_models/container_transition_extra.dart';
class ContainerTransition extends StatefulWidget {
final ContainerTransitionExtra extra;
final Animation<double> animation;
final Widget? sourceWidget;
final Widget targetWidget;
const ContainerTransition({
super.key,
required this.extra,
required this.animation,
required this.sourceWidget,
required this.targetWidget,
});
@override
State<C
Hey Flutter devs! I'm excited to announce the release of Hive CE v2.11.0-pre, introducing a new interface called IsolatedHive—a safe way to use Hive across multiple isolates.
What's New:
IsolatedHive Interface: Enables safe Hive usage across isolates by maintaining its own dedicated isolate for database operations. It utilizes an IsolateNameServer behind the scenes to locate the Hive isolate.
Flutter Integration: Simply call IsolatedHive.initFlutter from hive_ce_flutter to automatically set things up to use Flutter's built-in IsolateNameServer.
Generated Extensions: The latest hive_ce_generator now provides the same easy-to-use registerAdapters extension on IsolatedHive.
Why Use IsolatedHive?
You might already be using isolates without realizing it! Common Flutter scenarios benefiting from isolate-safe Hive:
Communication channels for isolates based on Flutter's plugin channels
Link Actions
Hi everyone!
I've just released a new Dart package: isolate_channel. It provides a simple and familiar API for handling communication between Dart isolates, directly inspired by Flutter's MethodChannel and EventChannel APIs used for native plugin communication.
If you've ever found Dart isolate communication cumbersome or unintuitive, isolate_channel streamlines this process, making it feel as straightforward and familiar as working with Flutter plugin channels.
I built this package to prepare for upcoming isolate support in Hive CE, and it made that work a lot easier!
I install Android Studio via flatpak, and this can cause flutter doctor to not be able to determine the version or to not recognize the installation at all. I've managed a hacky fix for this by running a few commands that I run as a simple script that I'm sharing here. If you use this, just close Android Stuido after it is opened; it seems to just need to be opened once in order to be recognized by flutter doctor.
sh
#!/bin/bash
flutter config --android-studio-dir=/var/lib/flatpak/app/com.google.AndroidStudio/current/active/files/extra/android-studio
/var/lib/flatpak/app/com.google.AndroidStudio/current/active/files/extra/android-studio/bin/studio
flutter config --android-studio-dir=""
flutter doctor
We have invested significant time and resources to prototype macros over the past couple years. Unfortunately, each time we solved a major…
Link Actions
After considering the opportunity cost — in particular, the features we could be shipping to the community instead — we’ve made the difficult decision to stop our work on macros.
Cloud Gallery — An open-source Flutter project to easily manage, organize, and back up your photos and videos across local storage, Google Drive, and Dropbox, all in one place. - canopas/cloud-gallery
Link Actions
Hey Flutter Devs!!
Say hello to Cloud Gallery—your new favorite way to manage photos and videos!
The open-source Flutter app offers seamless Google Drive and Dropbox integration, ensuring your memories stay safe, organized, and always within your reach.
Hi! I'm a flutter developer and I've recently switched from Ubuntu to Bluefin (based on Fedora Silverblue)
I was trying to install flutter and all the dependencies it asks for when running flutter doctor and while for clang++, cmake and ninja I have been able to install them with Homebrew (brew install llvm cmake ninja) and the warning went away, flutter seems not to detect GTK 3.0 development libraries when installed through homebrew (brew install gtk+3)
After having looked a little bit online, I've seen that the problem is probably that it's searching the libraries in the wrong place and in fact even when I run pkg-config --modversion gtk+-3.0 I see the library as missing. Therefore, I tried setting the PKG_CONFIG_PATH env variable to the folder where brew installed my libraries (/home/linuxbrew/.linuxbrew/opt/gtk+3/lib/pkgconfig) and after that the output of the pkg-config program above is the one expected.
However, this doesn't seem to
Hello Flutter community! I am proud to announce that I have released the largest update to Hive Community Edition yet. Version 2.8.0 adds support for the new GenerateAdapters annotaiton which greatly improves the code generation experience. With the GenerateAdapters annotation, you only specify the classes you want to generate adapters for. No more manually annotating every type and field and keeping track of their IDs.
I also developed a migration tool to help transition from the old annotations. This migration tool makes sure your model classes do not have commmon issues that would result in data integreity issues and then generates the necessary files.
I am proposing to introduce a new annotaiton called @GenerateAdapters. This allows you to generate TypeAdapters for types without explicitly annotating any types or fields. This is much easier to maintian and also allows generating adapters for types outside the current package.
This will generate type adapters for all the types specified. The main difference between using @GenerateAdapters and explicit annotations is that type IDs and field indexes are determined automatically. This information is then stored in a hive_schema.yaml file which informs future generations which type IDs and field indexes are in use.
My main concern is introducing this feature in a way that allows any future changes to be non-breaking. I believe I have eliminated mo
Wrappers and tools for composing Firebase Cloud Functions in the Dart language
Link Actions
I just released firebase_js_interop which allows you to compose Firebase Cloud Functions in the Dart language. Along with my firebase_rules package it is now possible to create an entire Firebase project with only type-safe Dart code! There are a lot of components missing, but writing the interop code is tedious, not hard. With third-party contributions we should be able to get close to full interop quickly.
The pubstats.dev page keeps track of historical pub.dev data. I just made it so that it can also show the rank of a package on pub.dev based on its popularity score. For example dio is rank 20 right now.
If you haven't seen pubstats.dev before here are some other features:
Like count and popularity score tracked over time for all packages on pub.dev
Historical tracking of a lot of package metadata such as version and dependents
If you sign in you can set up alerts for package info changes. Very useful for making sure you have maximum pub points! There are only Discord webhook alerts for now since that's what I use personally, but if you'd like to see more options feel free to contribute on GitHub.
As an added bonus, https://beta.pubstats.dev/ uses the new WASM renderer. Thanks to the Flutter team for helping me make t