Package org.robolectric.simulator
Class ScreenUpdateHandler
java.lang.Object
android.os.Handler
org.robolectric.simulator.ScreenUpdateHandler
- All Implemented Interfaces:
ViewTreeObserver.OnDrawListener,Executor,Consumer<List<View>>
public class ScreenUpdateHandler
extends Handler
implements ViewTreeObserver.OnDrawListener, Consumer<List<View>>, Executor
A handler that sends events to take a screenshot and update the Swing UI/VideoRecorder when
needed.
Requires ShadowView.useRealDrawTraversals to be enabled.
-
Nested Class Summary
Nested classes/interfaces inherited from class android.os.Handler
Handler.Callback -
Method Summary
Modifier and TypeMethodDescriptionvoidThe GlobalWindowViewsListener callback.static ScreenUpdateHandlercreate(FrameListener... frameListeners) Creates a ScreenUpdateHandler if any non-null FrameListeners are provided.voidThe executor callback for GlobalWindowViewsListenervoidhandleMessage(Message msg) voidvoidonDraw()The global onDraw listener callbackvoidRegister a listener for draw events.voidRegister a Window listenervoidMethods inherited from class android.os.Handler
createAsync, createAsync, dispatchMessage, dispatchMessageImpl, dump, dumpMine, executeOrSendMessage, getLooper, getMain, getMessageName, getTraceName, hasCallbacks, hasEqualMessages, hasMessages, hasMessages, hasMessagesOrCallbacks, mainIfNull, obtainMessage, obtainMessage, obtainMessage, obtainMessage, obtainMessage, post, postAtFrontOfQueue, postAtTime, postAtTime, postDelayed, postDelayed, postDelayed, removeCallbacks, removeCallbacks, removeCallbacksAndEqualMessages, removeCallbacksAndMessages, removeEqualMessages, removeMessages, removeMessages, runWithScissors, sendEmptyMessage, sendEmptyMessageAtTime, sendEmptyMessageDelayed, sendMessage, sendMessageAtFrontOfQueue, sendMessageAtTime, sendMessageDelayed, toString
-
Method Details
-
create
Creates a ScreenUpdateHandler if any non-null FrameListeners are provided. Otherwise, returns null. -
requestStartUi
public void requestStartUi() -
handleMessage
- Overrides:
handleMessagein classHandler
-
registerDrawListener
public void registerDrawListener()Register a listener for draw events.This is a global listener that is not reset between tests, so only needs to be called once.
-
registerWindowListener
public void registerWindowListener()Register a Window listenerThis is to support rendering a blank screen when all views have been removed,
Window listeners are reset between tests so this must be called at the start of each test.
-
onDraw
public void onDraw()The global onDraw listener callback- Specified by:
onDrawin interfaceViewTreeObserver.OnDrawListener
-
accept
The GlobalWindowViewsListener callback. Currently only supported on POST_BAKLAVA -
execute
The executor callback for GlobalWindowViewsListener -
newTestStarted
public void newTestStarted()
-