Class FSController

Object
FSController
All Implemented Interfaces:
EventHandler, FullscreenChangeHandler

public class FSController extends Object implements FullscreenChangeHandler
Manages fullscreen handling and GUI sizing for EvoLudoWeb instances.
  • Field Details

    • cloSize

      private final CLOption cloSize
      Command line option to set the size of the GUI or enter fullscreen.
    • engine

      private final EvoLudoGWT engine
      Reference to the engine so fullscreen requests propagate to the core.
    • fullscreenWidget

      private Widget fullscreenWidget
      Widget whose size/fullscreen state is controlled (typically the lab container).
    • fullscreenHandler

      private HandlerRegistration fullscreenHandler
      Registration for the native fullscreen change handler.
  • Constructor Details

    • FSController

      public FSController(EvoLudoGWT engine, Widget widget)
      Create a new controller for the given engine.
      Parameters:
      engine - the owning EvoLudoGWT instance
      widget - widget whose size/fullscreen state should be managed
  • Method Details

    • getCloSize

      public CLOption getCloSize()
      Return the CLO option controlling fullscreen/sizing.
      Returns:
      the CLOption for --size
    • parseSize

      public void parseSize()
      Apply the --size option (or its default) using the currently registered widget.
    • onFullscreenChange

      public void onFullscreenChange(FullscreenChangeEvent event)
      React to browser fullscreen toggles by adding/removing the helper CSS class.
      Specified by:
      onFullscreenChange in interface FullscreenChangeHandler
      Parameters:
      event - the FullscreenChangeEvent that was fired