zeba_academy_focus_manager_plus 0.0.1 copy "zeba_academy_focus_manager_plus: ^0.0.1" to clipboard
zeba_academy_focus_manager_plus: ^0.0.1 copied to clipboard

Advanced focus management for Flutter with keyboard navigation, focus history, auto switching, and accessibility enhancements.

zeba_academy_focus_manager_plus #

๐Ÿš€ Advanced Focus Management for Flutter

A powerful, lightweight, and extensible Flutter package for handling advanced focus control, keyboard navigation, accessibility, and focus history โ€” all in one place.


โœจ Features #

  • ๐Ÿ”น Advanced Focus Control
  • โŒจ๏ธ Keyboard Navigation (Tab, Arrow Keys, Shift+Tab)
  • ๐Ÿ•“ Focus History Tracking
  • ๐Ÿ”„ Auto Focus Switching
  • โ™ฟ Accessibility Enhancements
  • ๐Ÿงฉ Lightweight & Modular Architecture

๐Ÿ“ฆ Installation #

Add this to your pubspec.yaml:

dependencies:
  zeba_academy_focus_manager_plus: ^0.0.1

Then run:

flutter pub get

๐Ÿš€ Quick Start #

import 'package:flutter/material.dart';
import 'package:zeba_academy_focus_manager_plus/zeba_academy_focus_manager_plus.dart';

void main() {
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  @override
  Widget build(BuildContext context) {
    final controller = ZebaFocusController();

    final node1 = FocusNode();
    final node2 = FocusNode();
    final node3 = FocusNode();

    controller.register(node1);
    controller.register(node2);
    controller.register(node3);

    return MaterialApp(
      home: Scaffold(
        body: KeyboardNavigation(
          controller: controller,
          child: Column(
            children: [
              TextField(focusNode: node1),
              TextField(focusNode: node2),
              TextField(focusNode: node3),
              ElevatedButton(
                onPressed: controller.focusLastVisited,
                child: const Text("Go to Last Focus"),
              )
            ],
          ),
        ),
      ),
    );
  }
}

๐Ÿง  Core Concepts #

๐Ÿ”น ZebaFocusController #

Handles focus registration and navigation.

๐Ÿ”น FocusHistory #

Tracks previously focused elements.

๐Ÿ”น KeyboardNavigation #

Adds keyboard-based navigation support.

๐Ÿ”น FocusScopePlus #

Provides controller access across widget tree.

๐Ÿ”น AccessibleFocus #

Improves accessibility using semantics.


โŒจ๏ธ Keyboard Support #

Key Action
Tab Next Focus
Shift + Tab Previous Focus
Arrow Down Next Focus
Arrow Up Previous Focus

โ™ฟ Accessibility #

Improve screen reader support using:

AccessibleFocus(
  label: 'Submit Button',
  child: ElevatedButton(
    onPressed: () {},
    child: Text('Submit'),
  ),
)

๐Ÿงช Testing #

Run tests using:

flutter test

Check code quality:

flutter analyze

๐Ÿ“ Project Structure #

lib/
 โ”œโ”€โ”€ zeba_academy_focus_manager_plus.dart
 โ””โ”€โ”€ src/
      โ”œโ”€โ”€ focus_controller.dart
      โ”œโ”€โ”€ focus_history.dart
      โ”œโ”€โ”€ focus_scope_plus.dart
      โ”œโ”€โ”€ keyboard_navigation.dart
      โ””โ”€โ”€ focus_accessibility.dart

๐Ÿ›ฃ๏ธ Roadmap #

  • ๐Ÿ”ฒ Focus Groups (Grid Navigation)
  • ๐Ÿ”ฒ Custom Shortcuts (WASD / Gamepad)
  • ๐Ÿ”ฒ Focus Animations
  • ๐Ÿ”ฒ Scroll-to-Focus Integration
  • ๐Ÿ”ฒ Form Validation Autofocus

๐Ÿค Contributing #

Contributions are welcome!

  1. Fork the repo
  2. Create your feature branch
  3. Commit your changes
  4. Push to the branch
  5. Open a Pull Request

๐Ÿ“œ License (GPL v3) #

This project is licensed under the GNU General Public License v3.0.

You are free to:

  • Use
  • Modify
  • Distribute

Under the condition that all derivative works are also open source under GPL.


๐Ÿ‘จโ€๐Ÿ’ป About Me #

โœจ Iโ€™m Sufyan bin Uzayr, an open-source developer passionate about building and sharing meaningful projects. You can learn more about me and my work at https://sufyanism.com/ or connect with me on Linkedin https://www.linkedin.com/in/sufyanism

๐ŸŒ Your all-in-one no-bloat hub! #

๐Ÿš€ Explore cutting-edge resources in coding, tech, and development at zeba.academy and code.zeba.academy. Empower yourself with practical skills through curated directives, real-world projects, and hands-on experience. Level up your tech game today! ๐Ÿ’ปโœจ

Zeba Academy is a learning platform dedicated to coding, technology, and development. โžก Visit our main site: https://zeba.academy โžก Explore hands-on courses and resources at: https://code.zeba.academy โžก Check out our YouTube for more tutorials: https://www.youtube.com/@zeba.academy โžก Follow us on Instagram: https://www.instagram.com/zeba.academy/


โญ Support #

If you like this project, please give it a โญ on GitHub and share it with others!


Thank you for visiting! ๐Ÿ™Œ

0
likes
140
points
--
downloads

Documentation

API reference

Publisher

verified publisherzeba.academy

Weekly Downloads

Advanced focus management for Flutter with keyboard navigation, focus history, auto switching, and accessibility enhancements.

Homepage

Topics

#flutter #focus #accessibility #keyboard-navigation #ui

License

GPL-3.0 (license)

Dependencies

flutter

More

Packages that depend on zeba_academy_focus_manager_plus