private void RestoreSharedWindowState(Window window, bool doNotShow) { // TODO: when a shared window is removed from its next to last workspace, // if it was on a full-screen or the last one is on a full-screen layout, // it is not repositioned correctly window.Initialize(); if (ShouldSaveAndRestoreSharedWindowsPosition(window)) { window.RestorePosition(doNotShow); } }
internal void WindowCreated(Window window) { windows.AddFirst(window); if (window.hideFromAltTabAndTaskbarWhenOnInactiveWorkspace) { hideFromAltTabWhenOnInactiveWorkspaceCount++; } if (window.WorkspacesCount > 1) { sharedWindowsCount++; } if (IsWorkspaceVisible || window.WorkspacesCount == 1) { window.Initialize(); } if (!NativeMethods.IsIconic(window.hWnd) && !window.IsFloating) { Layout.WindowCreated(window); hasChanges |= !IsWorkspaceVisible; } DoWorkspaceWindowAdded(this, window); }