public interface AppUIExecutor extends BaseExpirableExecutor<AppUIExecutor>
onUiThread(com.intellij.openapi.application.ModalityState) (for EDT) or onWriteThread(com.intellij.openapi.application.ModalityState) (for WT),
the constraints are specified by chained calls. For example, to invoke
some action when all documents are committed and indices are available, one can use
AppUIExecutor.onWriteThread().withDocumentsCommitted(project).inSmartMode(project).| Modifier and Type | Method and Description |
|---|---|
AppUIExecutor |
inSmartMode(Project project) |
AppUIExecutor |
inTransaction(Disposable parentDisposable)
Deprecated.
replace with
later() or just remove it if you're in a write-safe context |
AppUIExecutor |
later() |
static AppUIExecutor |
onUiThread()
Creates a EDT-based executor working with the default modality state.
|
static AppUIExecutor |
onUiThread(ModalityState modality)
Creates a EDT-based executor working with the given modality state.
|
static AppUIExecutor |
onWriteThread()
Creates a Write-thread-based executor working with the default modality state.
|
static AppUIExecutor |
onWriteThread(ModalityState modality)
Creates a Write-thread-based executor working with the given modality state.
|
AppUIExecutor |
withDocumentsCommitted(Project project) |
execute, expireWith, submit, submitstatic AppUIExecutor onUiThread(ModalityState modality)
ModalityStatestatic AppUIExecutor onWriteThread(ModalityState modality)
ModalityStatestatic AppUIExecutor onUiThread()
ModalityState.defaultModalityState()static AppUIExecutor onWriteThread()
ModalityState.defaultModalityState()AppUIExecutor later()
BaseExpirableExecutor.execute(java.lang.Runnable) is called
on dispatch thread already, and all others constraints are met, the runnable would be executed immediately.AppUIExecutor withDocumentsCommitted(Project project)
PsiDocumentManager.hasUncommitedDocuments()AppUIExecutor inSmartMode(Project project)
DumbService.isDumb(Project)@Deprecated AppUIExecutor inTransaction(Disposable parentDisposable)
later() or just remove it if you're in a write-safe contextTransactionGuard