Работаем с клавиатурными сокращениями
При создании приложений для Flutter Web или Desktop, важно обеспечить удобное управление клавиатурными сокращениями. В этом нам помогут виджеты Shortcuts и Actions! 🚀
Shortcuts - это виджет, который создаёт привязку клавиш к определённым действиям для своих потомков. Всё просто: вы предоставляете карту клавиш и интенций (Intent).
Actions - этот виджет позволяет потомкам вызывать действия, определённые в родителе. Его можно использовать как вместе с Shortcuts, так и отдельно 😉
Давайте рассмотрим пример кода:
В этом примере мы создаём клавиатурное сокращение Ctrl+A для вызова действия SelectAllAction. Просто и удобно! 👍
Оцените нашу новую рубрику и напишите, о чём бы вы хотели узнать в следующий раз 🤔
Все подобные советы ищите по хэштегу #FlutterPulseTips
#flutter #dart #flutterpulse #FlutterPulseTips #FlutterTips #MobileDev #KeyboardShortcuts #FlutterDev #CodingTips
При создании приложений для Flutter Web или Desktop, важно обеспечить удобное управление клавиатурными сокращениями. В этом нам помогут виджеты Shortcuts и Actions! 🚀
Shortcuts - это виджет, который создаёт привязку клавиш к определённым действиям для своих потомков. Всё просто: вы предоставляете карту клавиш и интенций (Intent).
Actions - этот виджет позволяет потомкам вызывать действия, определённые в родителе. Его можно использовать как вместе с Shortcuts, так и отдельно 😉
Давайте рассмотрим пример кода:
// Это просто используется для указания нужного действия
class SelectAllIntent extends Intent {}
@override
Widget build(BuildContext context) {
return Shortcuts(
shortcuts: <LogicalKeySet, Intent>{
LogicalKeySet(LogicalKeyboardKey.control, LogicalKeyboardKey.keyA): SelectAllIntent(),
},
child: Actions(
dispatcher: LoggingActionDispatcher(),
actions: <Type, Action<Intent>>{
SelectAllIntent: SelectAllAction(),
},
child: Builder(
builder: (BuildContext context) => TextButton(
onPressed: Actions.handler<SelectAllIntent>(context, SelectAllIntent()),
child: const Text('SELECT ALL'),
),
),
),
);
}
// Action будет содержать логику, которую вы хотите выполнить при срабатывании клавиатурного сокращения
class SelectAllAction extends Action<SelectAllIntent> {
@override
void invoke(covariant SelectAllIntent intent) {
// делайте то, что вам нужно
}
}
В этом примере мы создаём клавиатурное сокращение Ctrl+A для вызова действия SelectAllAction. Просто и удобно! 👍
Оцените нашу новую рубрику и напишите, о чём бы вы хотели узнать в следующий раз 🤔
Все подобные советы ищите по хэштегу #FlutterPulseTips
#flutter #dart #flutterpulse #FlutterPulseTips #FlutterTips #MobileDev #KeyboardShortcuts #FlutterDev #CodingTips
👍2
Обзор пакетов на тему "Отладка и логирование" (Debugging & Logging)
Talker Flutter 🚀
Пакет для обработки ошибок и логирования в ваших приложениях. 📝
Логируйте действия вашего приложения, перехватывайте и обрабатывайте исключения и ошибки, отображайте оповещения и делитесь отчетами о логах.
👍 Лайки: 569, 📥 Скачиваний: 240К
Последнее обновление 📅: 5 дней назад
https://pub.dev/packages/talker_flutter
Talker
Продвинутый обработчик ошибок и логгер для приложений на Dart и Flutter.
Логирование действий приложения, ловля и обработка исключений и ошибок, показ оповещений и деление отчетов о логах.
👍 Лайки: 753, 📥 Скачиваний: 319К
Последнее обновление 📅: 5 дней назад
https://pub.dev/packages/talker
Logging
Простой и гибкий инструмент для логирования в ваших приложениях на Dart.
Настраивайте уровень логирования, добавляйте обработчики лог-сообщений и многое другое.
👍 Лайки: 945, 📥 Скачиваний: 7.59М
Последнее обновление 📅: 10 месяцев назад
https://pub.dev/packages/logging
Stack Trace
Пакет для Dart, облегчающий работу со стеками вызовов!
Позволяет парсить, инспектировать и манипулировать стеками вызовов, а также форматировать их в читаемый вид.
👍 Лайки: 330, 📥 Скачиваний: 7.02М
Последнее обновление 📅: 8 месяцев назад
https://pub.dev/packages/stack_trace
Logger 📈
Легкий в использовании и расширяемый логгер, который выводит красивые логи.
👍 Лайки: 3580, 📥 Скачиваний: 2.08М
Последнее обновление 📅: 34 дня назад
https://pub.dev/packages/logger
Leak Tracker
Пакет для обнаружения проблем с памятью в приложениях на Dart и Flutter.
👍 Лайки: 167, 📥 Скачиваний: 4.4М
Последнее обновление 📅: 4 месяца назад
https://pub.dev/packages/leak_tracker
#talker #talkerflutter #logging #stacktrace #logger #leaktracker #flutter #dart #pubdev #flutterpulse #flutterpulsethemedpackages
Talker Flutter 🚀
Пакет для обработки ошибок и логирования в ваших приложениях. 📝
Логируйте действия вашего приложения, перехватывайте и обрабатывайте исключения и ошибки, отображайте оповещения и делитесь отчетами о логах.
👍 Лайки: 569, 📥 Скачиваний: 240К
Последнее обновление 📅: 5 дней назад
https://pub.dev/packages/talker_flutter
Talker
Продвинутый обработчик ошибок и логгер для приложений на Dart и Flutter.
Логирование действий приложения, ловля и обработка исключений и ошибок, показ оповещений и деление отчетов о логах.
👍 Лайки: 753, 📥 Скачиваний: 319К
Последнее обновление 📅: 5 дней назад
https://pub.dev/packages/talker
Logging
Простой и гибкий инструмент для логирования в ваших приложениях на Dart.
Настраивайте уровень логирования, добавляйте обработчики лог-сообщений и многое другое.
👍 Лайки: 945, 📥 Скачиваний: 7.59М
Последнее обновление 📅: 10 месяцев назад
https://pub.dev/packages/logging
Stack Trace
Пакет для Dart, облегчающий работу со стеками вызовов!
Позволяет парсить, инспектировать и манипулировать стеками вызовов, а также форматировать их в читаемый вид.
👍 Лайки: 330, 📥 Скачиваний: 7.02М
Последнее обновление 📅: 8 месяцев назад
https://pub.dev/packages/stack_trace
Logger 📈
Легкий в использовании и расширяемый логгер, который выводит красивые логи.
👍 Лайки: 3580, 📥 Скачиваний: 2.08М
Последнее обновление 📅: 34 дня назад
https://pub.dev/packages/logger
Leak Tracker
Пакет для обнаружения проблем с памятью в приложениях на Dart и Flutter.
👍 Лайки: 167, 📥 Скачиваний: 4.4М
Последнее обновление 📅: 4 месяца назад
https://pub.dev/packages/leak_tracker
#talker #talkerflutter #logging #stacktrace #logger #leaktracker #flutter #dart #pubdev #flutterpulse #flutterpulsethemedpackages