NavigationFilter can be used to restrict where the cursor can be positioned. When the default cursor positioning actions attempt to reposition the cursor they will call into the
NavigationFilter, assuming the
JTextComponent has a non-null
NavigationFilter set. In this manner the
NavigationFilter can effectively restrict where the cursor can be positioned. Similarly
DefaultCaret will call into the
NavigationFilter when the user is changing the selection to further restrict where the cursor can be positioned.
Subclasses can conditionally call into supers implementation to restrict where the cursor can be placed, or call directly into the FilterBypass.