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, submit
static AppUIExecutor onUiThread(ModalityState modality)
ModalityState
static AppUIExecutor onWriteThread(ModalityState modality)
ModalityState
static 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