Allow setting and listening to fullscreen state on all platforms in flutter.
Find a file
2025-06-01 11:22:28 +10:00
example/lib rename the package 2024-07-02 21:14:34 +10:00
lib 1.2.0: Upgrade dependencies 2025-06-01 11:22:28 +10:00
.gitignore initial commit 2024-07-02 21:07:51 +10:00
.metadata initial commit 2024-07-02 21:07:51 +10:00
analysis_options.yaml initial commit 2024-07-02 21:07:51 +10:00
CHANGELOG.md 1.2.0: Upgrade dependencies 2025-06-01 11:22:28 +10:00
LICENSE initial commit 2024-07-02 21:07:51 +10:00
pubspec.yaml 1.2.0: Upgrade dependencies 2025-06-01 11:22:28 +10:00
README.md 1.2.0: Upgrade dependencies 2025-06-01 11:22:28 +10:00

A simple package which allows setting fullscreen mode on all platforms in flutter.

Features

Allows setting full-screen mode on the following platforms:

  • Web
  • Linux
  • macOS
  • Windows
  • Android
  • IOS

Getting started

Install

Add to your pubspec.yaml file:

dependencies:
  flutter_fullscreen: ^1.2.0

Usage

Initialization

import 'package:flutter_fullscreen/flutter_fullscreen.dart';

void main() async {
    // ensure these two lines are added to main
    WidgetsFlutterBinding.ensureInitialized();
    await FullScreen.ensureInitialized();

    runApp(const MyApp());
}

Setting fullscreen

// enable fullscreen
FullScreen.setFullScreen(true);

// exit fullscreen
FullScreen.setFullScreen(false);

Listening to fullscreen status

import 'package:flutter/material.dart';
import 'package:flutter/src/services/system_chrome.dart';
import 'package:flutter_fullscreen/flutter_fullscreen.dart';

class Page extends StatefulWidget {
  const Page({super.key});

  @override
  State<Page> createState() => _PageState();
}

class _PageState extends State<Page> with FullScreenListener {
  bool isFullScreen = FullScreen.isFullScreen;

  @override
  void initState() {
    FullScreen.addListener(this);
    super.initState();
  }

  @override
  void dispose() {
    FullScreen.removeListener(this);
    super.dispose();
  }

  @override
  void onFullScreenChanged(bool enabled, SystemUiMode? systemUiMode) {
    setState(() {
      isFullScreen = enabled;
    });
  }
}

Please see the example for more detailed usage.