# Some windows go off display

(I'm navigated from stackoverflow.com where I asked almost the same question)

When I want to use additional windows, let's say for example "Basic Math Input", I feel reluctant to find visually where they are in the display. So I tend to "re-open" them by clicking "Palette" -> their name.

However, when I do so, the window rearranges its position and goes up too high so that its bar (and often even some region of it that contains function panes) doesn't appear like this figure.

"Basic Math Input" windows lies left. With this, I have no way to move this window. Luckily all function panes are shown so it still provides all functionality but like I said earlier some panes hide often.

Tedious workaround on Mac is to arrange the displays (I'm using multiple displays) whatever. Then window's bar appears like this:

Is there any easier way to resolve this? I've seen this happens to many other additional windows that are available in "Palette" section.

(Environment) Mac OSX 10.7, Mathematica 8.0.4 Student Edition

I've tested Ubuntu linux 11.10 with 2 displays, and it doesn't give the same issue.

-
I added your images for both your questions from SO. – rcollyer Feb 1 '12 at 2:36
@rcollyer --- umm.. oops? :-o – Mr.Wizard Feb 1 '12 at 2:37
@Spartacus, both questions were closed as being off-topic, but the imgur files still existed, so I used those links. – rcollyer Feb 1 '12 at 2:39
@rcollyer yes, so did I. – Mr.Wizard Feb 1 '12 at 2:40
@Spartacus, so we did the same thing. Oh well. – rcollyer Feb 1 '12 at 2:40

Manual approach: evaluate Notebooks[], and locate the palette in the resulting list. Then evaluate the following, with a suitable value of $i$ filled in:

SetOptions[Notebooks[][[i]], WindowMargins -> {{0, 0}, {0, 0}}]

-
+1. This relocates the window on my env. so this is a valid workaround. It'd be even nicer if there's simpler command though. – IsaacS Feb 14 '12 at 16:48
Well, I don't know what was the real solution or such, but since I ran this command / evaluated the code here, I haven't seen the issue. So I chose this as the best answer for now. – IsaacS Feb 23 '12 at 21:29

I'm not sure if this is really the best solution as I don't know what causes the particular problem you are encountering, but it seems to work well enough as a quick fix. If you execute this code, clicking the button corresponding to the notebook that's gone out of bounds will make it jump to the mouse cursor so that you can move it to wherever you want it:

Dynamic[
Column@Map[
Button[
WindowTitle /. Options[#],
SetOptions[#,
WindowMargins -> {{#1, Automatic}, {Automatic, #2}} & @@ MousePosition[]
]
] &,
Delete[#, Position[WindowTitle /. Options /@ #, WindowTitle]] & @ Notebooks[]
],
TrackedSymbols -> Notebooks[]
]


As you open and close notebooks, new buttons will be made available for them thanks to Dynamic. Ordinarily I might have suggested making this into a palette, but that might not be such a good idea in this case...

-
Are palettes guaranteed to have WindowTitle set to something? – Brett Champion Feb 1 '12 at 3:42
Well, not necessarily, but they usually do and this heuristic helps to reduce the amount of clutter in the button list, though obviously it can be removed if necessary. I'm sure someone more practised than me at building interfaces could also improve the user experience somewhat... – Oleksandr R. Feb 1 '12 at 3:59

Did you try opening the palette, going to the options inspector, selecting it and in Windows properties, setting the location?

-
Well I found Options Inspector, and "Notebook Options" -> "Window Properties" but I don't find any location setting there. Only "WindowSize" seems relevant. Besides that, I can't modify any of the settings (when I tried, error sound beeps and didn't let the settings change). – IsaacS Feb 1 '12 at 2:57
@IsaacS, you need to choose up there in "Show option values", the palette in question – Rojo Feb 1 '12 at 3:11
Try resetting WindowMargins – ragfield Feb 1 '12 at 3:15

Unfortunately, on my Macbook here I cannot reproduce what you are describing, but you write

I feel reluctant to find visually where they are in the display.

Did you know, that you can in MacOSX with Ctrl+F6 switch periodically through all opened Panels? These are not the Windows, only the Palettes. Maybe you can prevent this issue by pressing Ctrl+F6 rather then re-opening the palette.

-
Ctrl+F6 unfortunately doesn't let switch happen on my Mac; it just activates Mac's local feature (brightness on mine). – IsaacS Feb 14 '12 at 17:00
@IsaacSaito Which OSX version do you have? – halirutan Feb 14 '12 at 17:07
Mine is 13 in., bought in 2008. – IsaacS Feb 23 '12 at 21:26