mirror of https://gitlab.com/nakst/essence
fade out exiting task bar buttons and tabs
This commit is contained in:
parent
626eac1386
commit
6f47e9eb21
|
@ -77,9 +77,6 @@ EsError FSDirEnumerate(Folder *folder) {
|
|||
EsDirectoryChild *buffer = nullptr;
|
||||
ptrdiff_t _entryCount = EsDirectoryEnumerateChildren(STRING(folder->path), &buffer);
|
||||
|
||||
// TODO.
|
||||
EsSleep(5000);
|
||||
|
||||
if (!ES_CHECK_ERROR(_entryCount)) {
|
||||
for (intptr_t i = 0; i < _entryCount; i++) {
|
||||
FolderAddEntry(folder, buffer[i].name, buffer[i].nameBytes, &buffer[i]);
|
||||
|
|
|
@ -580,6 +580,7 @@ void WindowTabDestroy(WindowTab *tab) {
|
|||
if (container->taskBarButton) {
|
||||
container->taskBarButton->exiting = true;
|
||||
container->taskBarButton->containerWindow = nullptr;
|
||||
EsElementStartTransition(container->taskBarButton, ES_TRANSITION_FADE_OUT, ES_ELEMENT_TRANSITION_HIDE_AFTER_COMPLETE);
|
||||
EsElementRelayout(container->taskBarButton->parent);
|
||||
// The button is destroyed by ReorderItemAnimate, once the exit animation completes.
|
||||
}
|
||||
|
@ -599,6 +600,7 @@ void WindowTabDestroy(WindowTab *tab) {
|
|||
tab->applicationInstance = nullptr;
|
||||
tab->exiting = true;
|
||||
tab->SetStyle(ES_STYLE_WINDOW_TAB_INACTIVE);
|
||||
EsElementStartTransition(tab, ES_TRANSITION_FADE_OUT, ES_ELEMENT_TRANSITION_HIDE_AFTER_COMPLETE);
|
||||
container->openTabs.FindAndDelete(tab, true);
|
||||
EsElementRelayout(container->tabBand);
|
||||
// The tab is destroyed by ReorderItemAnimate, once the exit animation completes.
|
||||
|
|
|
@ -84,7 +84,7 @@ struct {
|
|||
bool shutdown;
|
||||
|
||||
volatile uint64_t totalHandleCount;
|
||||
volatile uint64_t fileSystemsUnmounting;
|
||||
volatile uintptr_t fileSystemsUnmounting;
|
||||
KEvent fileSystemUnmounted;
|
||||
} fs = {
|
||||
.fileSystemUnmounted = { .autoReset = true },
|
||||
|
|
|
@ -285,7 +285,7 @@ bool KEventWait(KEvent *event, uint64_t timeoutMs = ES_WAIT_NO_TIMEOUT); // See
|
|||
struct KWriterLock { // One writer or many readers.
|
||||
K_PRIVATE
|
||||
LinkedList<Thread> blockedThreads;
|
||||
volatile int64_t state; // -1: exclusive; >0: shared owners.
|
||||
volatile intptr_t state; // -1: exclusive; >0: shared owners.
|
||||
#ifdef DEBUG_BUILD
|
||||
volatile Thread *exclusiveOwner;
|
||||
#endif
|
||||
|
|
|
@ -50,7 +50,7 @@ struct Window {
|
|||
Process *owner;
|
||||
void *apiWindow;
|
||||
EmbeddedWindow *embed;
|
||||
volatile uint64_t handles;
|
||||
volatile uint32_t handles;
|
||||
EsObjectID id;
|
||||
|
||||
// Location:
|
||||
|
|
Loading…
Reference in New Issue