LibreOffice Module android (master) 1
Classes | Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes | List of all members
org.libreoffice.InvalidationHandler Class Reference

Parses (interprets) and handles invalidation messages from LibreOffice. More...

Inheritance diagram for org.libreoffice.InvalidationHandler:
[legend]
Collaboration diagram for org.libreoffice.InvalidationHandler:
[legend]

Classes

enum  OverlayState
 The states the overlay. More...
 

Public Member Functions

 InvalidationHandler (LibreOfficeMainActivity context)
 
void messageRetrieved (int messageID, String payload)
 Processes callback message. More...
 
void moveViewportToMakeSelectionVisible (RectF selectionRectangle)
 Move the viewport to show the selection. More...
 
RectF convertPayloadToRectangle (String payload)
 Parses the payload text with rectangle coordinates and converts to rectangle in pixel coordinates. More...
 
RectF convertPayloadCellToRectangle (String payload)
 Parses the payload text with rectangle coordinates and converts to rectangle in pixel coordinates. More...
 
RectF convertPayloadToRectangle (String[] coordinates)
 Converts rectangle coordinates to rectangle in pixel coordinates. More...
 
List< RectF > convertPayloadToRectangles (String payload)
 Parses the payload text with more rectangles (separated by ';') and converts to a list of rectangles. More...
 
void moveViewportToMakeCursorVisible (RectF cursorRectangle)
 Move the viewport to show the cursor. More...
 
synchronized void changeStateTo (OverlayState next)
 Trigger a transition to a new overlay state. More...
 
OverlayState getCurrentState ()
 The current state the overlay is in. More...
 
void keyEvent ()
 A key event happened (i.e. More...
 

Private Member Functions

void unoCommandResult (String payload)
 
void cellFormula (final String payload)
 
void cellAddress (final String payload)
 
void invalidateHeader ()
 
void documentPassword ()
 
void invalidateCellCursor (String payload)
 
void jumpToCell (String payload)
 
void searchResultSelection (String payload)
 Handles the search result selection message, which is a JSONObject. More...
 
void pageSizeChanged (String payload)
 
void stateChanged (String payload)
 
void invalidateTiles (String payload)
 Handles the tile invalidation message. More...
 
synchronized void invalidateCursor (String payload)
 Handles the cursor invalidation message. More...
 
synchronized void textSelectionStart (String payload)
 Handles the text selection start message. More...
 
synchronized void textSelectionEnd (String payload)
 Handles the text selection end message. More...
 
synchronized void textSelection (String payload)
 Handles the text selection message. More...
 
synchronized void cursorVisibility (String payload)
 Handles the cursor visibility message. More...
 
void graphicSelection (String payload)
 Handles the graphic selection change message. More...
 
synchronized void changeState (OverlayState previous, OverlayState next)
 Executes a transition from old overlay state to a new overlay state. More...
 
void handleGeneralChangeState (OverlayState previous, OverlayState next)
 Handle a general transition - executed for all transitions. More...
 
void handleNoneState (OverlayState previous)
 Handle a transition to OverlayState.NONE state. More...
 
void handleSelectionState (OverlayState previous)
 Handle a transition to OverlayState.SELECTION state. More...
 
void handleCursorState (OverlayState previous)
 Handle a transition to OverlayState.CURSOR state. More...
 
void handleTransitionState (OverlayState previous)
 Handle a transition to OverlayState.TRANSITION state. More...
 
void handleGraphicSelectionState (OverlayState previous)
 Handle a transition to OverlayState.GRAPHIC_SELECTION state. More...
 

Private Attributes

final DocumentOverlay mDocumentOverlay
 
final GeckoLayerClient mLayerClient
 
OverlayState mState
 
boolean mKeyEvent = false
 
final LibreOfficeMainActivity mContext
 
int currentTotalPageNumber = 0
 

Static Private Attributes

static final String LOGTAG = InvalidationHandler.class.getSimpleName()
 

Detailed Description

Parses (interprets) and handles invalidation messages from LibreOffice.

Definition at line 27 of file InvalidationHandler.java.

Constructor & Destructor Documentation

◆ InvalidationHandler()

org.libreoffice.InvalidationHandler.InvalidationHandler ( LibreOfficeMainActivity  context)
inline

Member Function Documentation

◆ cellAddress()

void org.libreoffice.InvalidationHandler.cellAddress ( final String  payload)
inlineprivate

◆ cellFormula()

void org.libreoffice.InvalidationHandler.cellFormula ( final String  payload)
inlineprivate

◆ changeState()

synchronized void org.libreoffice.InvalidationHandler.changeState ( OverlayState  previous,
OverlayState  next 
)
inlineprivate

◆ changeStateTo()

synchronized void org.libreoffice.InvalidationHandler.changeStateTo ( OverlayState  next)
inline

◆ convertPayloadCellToRectangle()

RectF org.libreoffice.InvalidationHandler.convertPayloadCellToRectangle ( String  payload)
inline

Parses the payload text with rectangle coordinates and converts to rectangle in pixel coordinates.

Parameters
payload- invalidation message payload text
Returns
rectangle in pixel coordinates

Definition at line 392 of file InvalidationHandler.java.

References org.libreoffice.InvalidationHandler.convertPayloadToRectangle(), and String.

Referenced by org.libreoffice.InvalidationHandler.jumpToCell().

◆ convertPayloadToRectangle() [1/2]

RectF org.libreoffice.InvalidationHandler.convertPayloadToRectangle ( String  payload)
inline

◆ convertPayloadToRectangle() [2/2]

RectF org.libreoffice.InvalidationHandler.convertPayloadToRectangle ( String[]  coordinates)
inline

Converts rectangle coordinates to rectangle in pixel coordinates.

Parameters
coordinates- the first four items defines the rectangle
Returns
rectangle in pixel coordinates

Definition at line 413 of file InvalidationHandler.java.

References org.libreoffice.LOKitShell.getDpi(), Integer, org.libreoffice.InvalidationHandler.mContext, x, and y.

◆ convertPayloadToRectangles()

List< RectF > org.libreoffice.InvalidationHandler.convertPayloadToRectangles ( String  payload)
inline

Parses the payload text with more rectangles (separated by ';') and converts to a list of rectangles.

Parameters
payload- invalidation message payload text
Returns
list of rectangles

Definition at line 439 of file InvalidationHandler.java.

References org.libreoffice.InvalidationHandler.convertPayloadToRectangle(), rectangle(), and String.

Referenced by org.libreoffice.InvalidationHandler.textSelection().

◆ cursorVisibility()

synchronized void org.libreoffice.InvalidationHandler.cursorVisibility ( String  payload)
inlineprivate

◆ documentPassword()

void org.libreoffice.InvalidationHandler.documentPassword ( )
inlineprivate

◆ getCurrentState()

OverlayState org.libreoffice.InvalidationHandler.getCurrentState ( )
inline

The current state the overlay is in.

Definition at line 728 of file InvalidationHandler.java.

References org.libreoffice.InvalidationHandler.mState.

◆ graphicSelection()

void org.libreoffice.InvalidationHandler.graphicSelection ( String  payload)
inlineprivate

◆ handleCursorState()

void org.libreoffice.InvalidationHandler.handleCursorState ( OverlayState  previous)
inlineprivate

◆ handleGeneralChangeState()

void org.libreoffice.InvalidationHandler.handleGeneralChangeState ( OverlayState  previous,
OverlayState  next 
)
inlineprivate

◆ handleGraphicSelectionState()

void org.libreoffice.InvalidationHandler.handleGraphicSelectionState ( OverlayState  previous)
inlineprivate

◆ handleNoneState()

void org.libreoffice.InvalidationHandler.handleNoneState ( OverlayState  previous)
inlineprivate

◆ handleSelectionState()

void org.libreoffice.InvalidationHandler.handleSelectionState ( OverlayState  previous)
inlineprivate

◆ handleTransitionState()

void org.libreoffice.InvalidationHandler.handleTransitionState ( OverlayState  previous)
inlineprivate

◆ invalidateCellCursor()

void org.libreoffice.InvalidationHandler.invalidateCellCursor ( String  payload)
inlineprivate

◆ invalidateCursor()

synchronized void org.libreoffice.InvalidationHandler.invalidateCursor ( String  payload)
inlineprivate

◆ invalidateHeader()

void org.libreoffice.InvalidationHandler.invalidateHeader ( )
inlineprivate

◆ invalidateTiles()

void org.libreoffice.InvalidationHandler.invalidateTiles ( String  payload)
inlineprivate

◆ jumpToCell()

void org.libreoffice.InvalidationHandler.jumpToCell ( String  payload)
inlineprivate

◆ keyEvent()

void org.libreoffice.InvalidationHandler.keyEvent ( )
inline

A key event happened (i.e.

user started typing).

Definition at line 735 of file InvalidationHandler.java.

References org.libreoffice.InvalidationHandler.mKeyEvent.

◆ messageRetrieved()

void org.libreoffice.InvalidationHandler.messageRetrieved ( int  messageID,
String  payload 
)
inline

Processes callback message.

Parameters
messageID- ID of the message
payload- additional invalidation message payload

Definition at line 51 of file InvalidationHandler.java.

References org.libreoffice.InvalidationHandler.cellAddress(), org.libreoffice.InvalidationHandler.cellFormula(), org.libreoffice.InvalidationHandler.cursorVisibility(), Document, org.libreoffice.InvalidationHandler.documentPassword(), org.libreoffice.canvas.SelectionHandle.HandleType.END, org.libreoffice.InvalidationHandler.graphicSelection(), org.libreoffice.overlay.DocumentOverlay.hideCursor(), org.libreoffice.overlay.DocumentOverlay.hideHandle(), org.libreoffice.InvalidationHandler.invalidateCellCursor(), org.libreoffice.InvalidationHandler.invalidateCursor(), org.libreoffice.InvalidationHandler.invalidateHeader(), org.libreoffice.InvalidationHandler.invalidateTiles(), org.libreoffice.LOKitShell.isEditingEnabled(), org.libreoffice.InvalidationHandler.jumpToCell(), Log, org.libreoffice.InvalidationHandler.LOGTAG, org.libreoffice.InvalidationHandler.mContext, org.libreoffice.InvalidationHandler.mDocumentOverlay, org.libreoffice.canvas.SelectionHandle.HandleType.MIDDLE, org.libreoffice.InvalidationHandler.pageSizeChanged(), org.libreoffice.InvalidationHandler.searchResultSelection(), org.libreoffice.canvas.SelectionHandle.HandleType.START, org.libreoffice.InvalidationHandler.stateChanged(), org.libreoffice.InvalidationHandler.textSelection(), org.libreoffice.InvalidationHandler.textSelectionEnd(), org.libreoffice.InvalidationHandler.textSelectionStart(), and org.libreoffice.InvalidationHandler.unoCommandResult().

◆ moveViewportToMakeCursorVisible()

void org.libreoffice.InvalidationHandler.moveViewportToMakeCursorVisible ( RectF  cursorRectangle)
inline

Move the viewport to show the cursor.

The cursor will appear at the viewport position depending on where the cursor is relative to the viewport (either cursor is above, below, on left or right).

Parameters
cursorRectangle- cursor position on the document

Definition at line 495 of file InvalidationHandler.java.

References org.mozilla.gecko.gfx.ImmutableViewportMetrics.getCssViewport(), org.mozilla.gecko.gfx.GeckoLayerClient.getViewportMetrics(), org.libreoffice.InvalidationHandler.mContext, org.libreoffice.InvalidationHandler.mLayerClient, and org.libreoffice.LOKitShell.moveViewportTo().

Referenced by org.libreoffice.InvalidationHandler.invalidateCursor().

◆ moveViewportToMakeSelectionVisible()

void org.libreoffice.InvalidationHandler.moveViewportToMakeSelectionVisible ( RectF  selectionRectangle)
inline

Move the viewport to show the selection.

The selection will appear at the viewport position depending on where the selection is relative to the viewport (either selection is above, below, on left or right). The difference between this method and moveViewportToMakeCursorVisible() is that this method takes into account the width and height of the selection and zooms out accordingly.

Parameters
selectionRectangle- selection position on the document

Definition at line 261 of file InvalidationHandler.java.

References org.mozilla.gecko.gfx.ImmutableViewportMetrics.getCssViewport(), org.mozilla.gecko.gfx.GeckoLayerClient.getViewportMetrics(), org.mozilla.gecko.gfx.ImmutableViewportMetrics.getZoomFactor(), org.libreoffice.InvalidationHandler.mContext, org.libreoffice.InvalidationHandler.mLayerClient, and org.libreoffice.LOKitShell.moveViewportTo().

Referenced by org.libreoffice.InvalidationHandler.invalidateCellCursor(), org.libreoffice.InvalidationHandler.jumpToCell(), and org.libreoffice.InvalidationHandler.searchResultSelection().

◆ pageSizeChanged()

void org.libreoffice.InvalidationHandler.pageSizeChanged ( String  payload)
inlineprivate

◆ searchResultSelection()

void org.libreoffice.InvalidationHandler.searchResultSelection ( String  payload)
inlineprivate

Handles the search result selection message, which is a JSONObject.

Parameters
payload

Definition at line 234 of file InvalidationHandler.java.

References org.libreoffice.InvalidationHandler.convertPayloadToRectangle(), org.libreoffice.InvalidationHandler.moveViewportToMakeSelectionVisible(), rectangle(), and String.

Referenced by org.libreoffice.InvalidationHandler.messageRetrieved().

◆ stateChanged()

void org.libreoffice.InvalidationHandler.stateChanged ( String  payload)
inlineprivate

◆ textSelection()

synchronized void org.libreoffice.InvalidationHandler.textSelection ( String  payload)
inlineprivate

◆ textSelectionEnd()

synchronized void org.libreoffice.InvalidationHandler.textSelectionEnd ( String  payload)
inlineprivate

◆ textSelectionStart()

synchronized void org.libreoffice.InvalidationHandler.textSelectionStart ( String  payload)
inlineprivate

◆ unoCommandResult()

void org.libreoffice.InvalidationHandler.unoCommandResult ( String  payload)
inlineprivate

Member Data Documentation

◆ currentTotalPageNumber

int org.libreoffice.InvalidationHandler.currentTotalPageNumber = 0
private

◆ LOGTAG

final String org.libreoffice.InvalidationHandler.LOGTAG = InvalidationHandler.class.getSimpleName()
staticprivate

◆ mContext

final LibreOfficeMainActivity org.libreoffice.InvalidationHandler.mContext
private

◆ mDocumentOverlay

final DocumentOverlay org.libreoffice.InvalidationHandler.mDocumentOverlay
private

◆ mKeyEvent

boolean org.libreoffice.InvalidationHandler.mKeyEvent = false
private

◆ mLayerClient

final GeckoLayerClient org.libreoffice.InvalidationHandler.mLayerClient
private

◆ mState

OverlayState org.libreoffice.InvalidationHandler.mState
private

The documentation for this class was generated from the following file: