The position and width/height of the main map view, the minimap, and the unit display all get saved. When MM is loaded, these values are restored. When multiple monitors are involved, the main window saves/restores properly, however the minimap and unit display do not.
This is because the saved values have bound checking performed. For the main window, the maximum sizes are computed as a union of all available screens. For the minimap and unit display, only the first screen is considered.
Fixed in [f8dc90].
The fix really already existed for the main frame. I just moved the code that computes the unioned bounds for all available screens in a private method, and then used those for bounds checking on all restored position/width/height values.
Related
Commit: [f8dc90]