monarch icon indicating copy to clipboard operation
monarch copied to clipboard

On Linux: implement docking

Open fertrig opened this issue 2 years ago • 0 comments

Monarch has two windows, the Controller and the Preview. On macOS and Windows, we keep those two windows "docked" to each other. We haven't implemented that feature on Linux yet.

We are hoping to get help from the community on this issue.

These are the high-level requirements:

  • When the Monarch windows launch, the default docking should be "Dock to right", and the Preview should be docked to the right of the Controller
  • When the user moves one window, the other docked window should follow
  • When the user selects "Dock to left", the Preview should move to the left of the Controller
  • When the user selects "Undock", moving one window should not move the other window

Since Monarch already implements this feature on macOS and Windows, then we can use that code as a model.

On macOS, see platform/macos/monarch_macos/WindowManager.swift, function setDocking: https://github.com/Dropsource/monarch/blob/46d4f79b3649960eff371aaf51192da999ff8e74/platform/macos/monarch_macos/WindowManager.swift#L316

On Windows, see platform/windows/src/window_manager.cpp, function setDocking: https://github.com/Dropsource/monarch/blob/46d4f79b3649960eff371aaf51192da999ff8e74/platform/windows/src/window_manager.cpp#L201

fertrig avatar Jan 31 '23 16:01 fertrig