Skip to content
FunToHardPublic

About

A Window docking Windows utility.

Resources

Stars

1 star

Watchers

0 watching

Forks

Latest commit

 

History

15 Commits

Folders and files

Repository files navigation

DockAll

CI License: MIT

DockAll is a desktop window docking application for Windows. You can dock separate applications into a single workspace. For example, you can dock terminal windows, command prompts, Git shells, File Explorer windows, and developer tools into one window.


Features

  • Target Finder: Click any open desktop window to dock it into the workspace.
  • Window Embedding: Dock Win32 windows and remove borders automatically. Restore original window borders and sizes when you undock.
  • Multi-Pane Layouts: Split the workspace into left, right, top, and bottom panes. Group windows into tabs or detach them into floating windows.
  • Active Window Highlight: The blue tab header and border indicator show only on the focused docked window.
  • Quick Launch Menu: Launch and dock common tools with one click:
    • PowerShell
    • Command Prompt (CMD)
    • Git Bash
    • Windows Subsystem for Linux (WSL)
    • File Explorer
    • Custom executable files and scripts

Technical Specifications

  • Target Framework: .NET 10.0-windows (WPF and XAML)
  • Docking Library: Dirkster.AvalonDock (version 5.0.0) with dark theme
  • Platform API: Windows API (P/Invoke)
  • DPI Support: PerMonitorV2 High-DPI

Getting Started

Prerequisites

Build the Project

  1. Clone the repository:

    git clone https://github.com/funtohard/dockall.git
    cd dockall
  2. Build the solution in Release configuration:

    dotnet build -c Release

Run the Tests

Execute the unit tests:

dotnet test

Start the Application

Start DockAll from the command line:

dotnet run --project src/DockAll/DockAll.csproj -c Release

User Guide

1. Dock a Window with Target Finder

  1. Click Target Finder on the top toolbar.
  2. Move the pointer over the window that you want to dock.
  3. Click the window to dock it into the workspace.
  4. Press ESC or click the right mouse button to cancel.

2. Dock a Window from the Window List

  1. Click Dock Running... on the toolbar.
  2. Search for the window by title, process name, or process ID (PID).
  3. Select the window from the list.
  4. Click Dock Window.

3. Launch and Dock Tools

  1. Click the ⋮ Launch menu on the toolbar.
  2. Select a preset tool (PowerShell, Developer PowerShell for VS, CMD, Git Bash, WSL, or File Explorer).
  3. Or select Launch Custom Executable... to choose a custom program.

4. Arrange and Split Panes

  1. Drag a window tab over another pane.
  2. Move the pointer over a directional dock icon (Left, Right, Top, Bottom, or Center).
  3. Release the mouse button to drop the window into position.

5. Undock and Close Windows

  • Click Undock on a pane header to return that window to the desktop.
  • Click Undock All on the top toolbar to return all windows to the desktop.
  • Click Close on a pane header to close that application.

License

This project is licensed under the MIT License.

About

A Window docking Windows utility.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages