mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
[ui] IJPL-182690: Allow manually run animations
GitOrigin-RevId: 24bad228810ebeabfa03dbe905e6b1d86d8593ec
This commit is contained in:
committed by
intellij-monorepo-bot
parent
9bf3222992
commit
009d4c4ded
@@ -5,6 +5,7 @@ import com.intellij.openapi.Disposable;
|
||||
import com.intellij.util.ui.update.Activatable;
|
||||
import com.intellij.util.ui.update.UiNotifyConnector;
|
||||
import kotlinx.coroutines.CoroutineScope;
|
||||
import org.jetbrains.annotations.ApiStatus;
|
||||
import org.jetbrains.annotations.NonNls;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
@@ -95,6 +96,11 @@ public class AnimatedIcon extends JComponent implements Disposable {
|
||||
isPaintPassive = paintPassive;
|
||||
}
|
||||
|
||||
@ApiStatus.Internal
|
||||
public void tickAnimation() {
|
||||
animator.forceTick();
|
||||
}
|
||||
|
||||
private boolean ensureAnimation(boolean running) {
|
||||
var isShowing = isShowing();
|
||||
var animatorShouldBeRunning = running && isShowing;
|
||||
|
||||
@@ -12,6 +12,7 @@ import com.intellij.openapi.util.Disposer
|
||||
import com.intellij.util.ReflectionUtil
|
||||
import com.intellij.util.SingleAlarm
|
||||
import kotlinx.coroutines.*
|
||||
import org.jetbrains.annotations.ApiStatus
|
||||
import org.jetbrains.annotations.ApiStatus.Obsolete
|
||||
import org.jetbrains.annotations.NonNls
|
||||
import java.awt.GraphicsEnvironment
|
||||
@@ -58,6 +59,14 @@ abstract class Animator @JvmOverloads constructor(
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* This operation is used for manual processing of animation in cases when IDE event queue is unavailable
|
||||
*/
|
||||
@ApiStatus.Internal
|
||||
fun forceTick() {
|
||||
onTick()
|
||||
}
|
||||
|
||||
private fun onTick() {
|
||||
if (isDisposed) {
|
||||
return
|
||||
|
||||
Reference in New Issue
Block a user