// 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 'package:flutter/foundation.dart'; // Any changes to this file should be reflected in the debugAssertAllGesturesVarsUnset() // function below. /// Whether to print the results of each hit test to the console. /// /// When this is set, in debug mode, any time a hit test is triggered by the /// [GestureBinding] the results are dumped to the console. /// /// This has no effect in release builds. bool debugPrintHitTestResults = false; /// Whether to print the details of each mouse hover event to the console. /// /// When this is set, in debug mode, any time a mouse hover event is triggered /// by the [GestureBinding], the results are dumped to the console. /// /// This has no effect in release builds, and only applies to mouse hover /// events. bool debugPrintMouseHoverEvents = false; /// Prints information about gesture recognizers and gesture arenas. /// /// This flag only has an effect in debug mode. /// /// See also: /// /// * [GestureArenaManager], the class that manages gesture arenas. /// * [debugPrintRecognizerCallbacksTrace], for debugging issues with /// gesture recognizers. bool debugPrintGestureArenaDiagnostics = false; /// Logs a message every time a gesture recognizer callback is invoked. /// /// This flag only has an effect in debug mode. /// /// This is specifically used by [GestureRecognizer.invokeCallback]. Gesture /// recognizers that do not use this method to invoke callbacks may not honor /// the [debugPrintRecognizerCallbacksTrace] flag. /// /// See also: /// /// * [debugPrintGestureArenaDiagnostics], for debugging issues with gesture /// arenas. bool debugPrintRecognizerCallbacksTrace = false; /// Returns true if none of the gestures library debug variables have been changed. /// /// This function is used by the test framework to ensure that debug variables /// haven't been inadvertently changed. /// /// See [the gestures library](gestures/gestures-library.html) for a complete /// list. bool debugAssertAllGesturesVarsUnset(String reason) { assert(() { if (debugPrintHitTestResults || debugPrintGestureArenaDiagnostics || debugPrintRecognizerCallbacksTrace) throw FlutterError(reason); return true; }()); return true; }