( composition: WindowCompositionFunction, events: CompositorEventController, windowId: string, snapshot: WaylandWindowSnapshot, event: RuntimeWindowFullscreenRequestEvent, )
| 2951 | function evaluateSnapshot( |
| 2952 | composition: WindowCompositionFunction, |
| 2953 | events: CompositorEventController, |
| 2954 | effectConfig: RuntimeEffectConfig, |
| 2955 | snapshot: WaylandWindowSnapshot, |
| 2956 | nowMs: number, |
| 2957 | ): { |
| 2958 | serialized: unknown; |
| 2959 | transform?: WindowTransform; |
| 2960 | managedWindow?: ManagedWindowState; |
| 2961 | windowEffects: WindowEffectAssignment | null; |
| 2962 | } { |
| 2963 | const existing = cacheByWindowId.get(snapshot.id); |
| 2964 | if (!existing) { |
| 2965 | debugSSD("runtime-evaluate-new-cache", { |
| 2966 | nowMs, |
| 2967 | snapshot: snapshotForDebug(snapshot), |
| 2968 | }); |
| 2969 | const entry = createRuntimeCacheEntry( |
| 2970 | snapshot, |
| 2971 | composition, |
| 2972 | RENDER_COMPOSITION_CONTEXT, |
| 2973 | ); |
| 2974 | cacheByWindowId.set(snapshot.id, entry); |
| 2975 | if (!openedWindowIds.has(snapshot.id)) { |
| 2976 | openedWindowIds.add(snapshot.id); |
| 2977 | debugSSD("runtime-emit-open", { |
| 2978 | windowId: snapshot.id, |
| 2979 | phase: "evaluate-new-cache", |
| 2980 | }); |
| 2981 | events.emitOpen(entry.cache.window); |
| 2982 | } |
| 2983 | events.emitFocus(entry.cache.window, snapshot.isFocused); |
| 2984 | if (!firstCommittedWindowIds.has(snapshot.id)) { |
no test coverage detected