# LayoutCloseEvent > Fired after a layout page closes for a player. `gg.lode.lecternapi.api.event.LayoutCloseEvent` --- ## Signature ```java public class LayoutCloseEvent extends Event ``` --- ## Notes Not cancellable: by the time it fires the page is already gone, and a close that could be refused would leave the server and the client disagreeing about what is on screen. Use `LayoutOpenEvent` to stop a page appearing in the first place. --- ## Variants | Type | Description | |---|---| | `Reason` | Why the page closed. Values: `REQUESTED`, `DEATH`, `DAMAGE`, `REPLACED`, `QUIT` | --- ## Methods ### getPlayer ```java public Player getPlayer() ``` --- ### getPage ```java public LayoutPage getPage() ``` --- ### getReason ```java public Reason getReason() ``` --- ## Example Clean up when a page goes, and tell apart a player closing it from a player quitting: ```java @EventHandler public void onLayoutClose(LayoutCloseEvent event) { if (!event.getPage().getId().equals("shop")) return; switch (event.getReason()) { case REQUESTED, REPLACED -> carts.save(event.getPlayer()); case QUIT -> carts.drop(event.getPlayer()); default -> { } } } ``` Not cancellable. By the time it fires the page is already gone. --- ## Related Pages - [[LayoutOpenEvent]]. Stopping a page before it appears