Skip to content

Commit 588a523

Browse files
authored
Merge pull request #17650 from iterate-ch/bugfix/GH-17557
Set transient window collection behaviour
2 parents 964a1c2 + fcd3b72 commit 588a523

File tree

2 files changed

+33
-12
lines changed

2 files changed

+33
-12
lines changed

binding/src/main/java/ch/cyberduck/binding/WindowController.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,8 @@ public void setWindow(final NSWindow window) {
8989
this.window.recalculateKeyViewLoop();
9090
this.window.setReleasedWhenClosed(true);
9191
this.window.setDelegate(this.id());
92+
this.window.setCollectionBehavior(window.collectionBehavior()
93+
| NSWindow.NSWindowCollectionBehavior.NSWindowCollectionBehaviorTransient);
9294
}
9395

9496
public NSWindow window() {

binding/src/main/java/ch/cyberduck/binding/application/NSWindow.java

Lines changed: 31 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -176,18 +176,37 @@ public interface NSWindowLevel {
176176

177177
/// enum values
178178
public interface NSWindowCollectionBehavior {
179-
int NSWindowCollectionBehaviorManaged = 1 << 2; // participates in spaces, exposé. Default behavior if windowLevel == NSNormalWindowLevel
180-
int NSWindowCollectionBehaviorTransient = 1 << 3; // floats in spaces, hidden by exposé. Default behavior if windowLevel != NSNormalWindowLevel
181-
int NSWindowCollectionBehaviorStationary = 1 << 4; // unaffected by exposé. Stays visible and stationary, like desktop window
182-
183-
int NSWindowCollectionBehaviorParticipatesInCycle = 1 << 5; // default behavior if windowLevel == NSNormalWindowLevel
184-
int NSWindowCollectionBehaviorIgnoresCycle = 1 << 6; // default behavior if windowLevel != NSNormalWindowLevel
185-
186-
int NSWindowNumberListAllApplications = 1 << 0;
187-
int NSWindowNumberListAllSpaces = 1 << 4;
188-
189-
int NSWindowCollectionBehaviorFullScreenPrimary = 1 << 7; // the frontmost window with this collection behavior will be the fullscreen window.
190-
int NSWindowCollectionBehaviorFullScreenAuxiliary = 1 << 8; // windows with this collection behavior can be shown with the fullscreen window.
179+
int NSWindowCollectionBehaviorDefault = 0;
180+
int NSWindowCollectionBehaviorCanJoinAllSpaces = 1 << 0;
181+
int NSWindowCollectionBehaviorMoveToActiveSpace = 1 << 1;
182+
int NSWindowCollectionBehaviorManaged = 1 << 2;
183+
int NSWindowCollectionBehaviorTransient = 1 << 3;
184+
int NSWindowCollectionBehaviorStationary = 1 << 4;
185+
int NSWindowCollectionBehaviorParticipatesInCycle = 1 << 5;
186+
int NSWindowCollectionBehaviorIgnoresCycle = 1 << 6;
187+
int NSWindowCollectionBehaviorFullScreenPrimary = 1 << 7;
188+
int NSWindowCollectionBehaviorFullScreenAuxiliary = 1 << 8;
189+
int NSWindowCollectionBehaviorFullScreenNone = 1 << 9;
190+
/**
191+
* @since macOS 10.11
192+
*/
193+
int NSWindowCollectionBehaviorFullScreenAllowsTiling = 1 << 11;
194+
/**
195+
* @since macOS 10.11
196+
*/
197+
int NSWindowCollectionBehaviorFullScreenDisallowsTiling = 1 << 12;
198+
/**
199+
* @since macOS 13.0
200+
*/
201+
int NSWindowCollectionBehaviorPrimary = 1 << 16;
202+
/**
203+
* @since macOS 13.0
204+
*/
205+
int NSWindowCollectionBehaviorAuxiliary = 1 << 17;
206+
/**
207+
* @since macOS 13.0
208+
*/
209+
int NSWindowCollectionBehaviorCanJoinAllApplications = 1 << 18;
191210
}
192211

193212
/// enum values

0 commit comments

Comments
 (0)