Submit Hint Search The Forums LinksStatsPollsHeadlinesRSS
14,000 hints and counting!

Reset the screen position of the Character Palette System
When you connect an additional monitor to your Mac, and then drag the Character Palette (opened via the Input Menu icon in the menu bar) to that screen, you may end up in a situation where the Character Palette's top bar is off the top of your Mac's main display after you disconnect the external monitor -- making it impossible to move.

To reset the position of the Character Palette, type killall CharPaletteServer in Terminal, then press Return. The next time you bring up the Character Palette, its position will be reset.
    •    
  • Currently 1.57 / 5
  You rated: 2 / 5 (7 votes cast)
 
[7,644 views]  

Reset the screen position of the Character Palette | 1 comments | Create New Account
Click here to return to the 'Reset the screen position of the Character Palette' hint
The following comments are owned by whoever posted them. This site is not responsible for what they say.
Reset the screen position of the Character Palette
Authored by: jochen K├╝pper on Sep 23, '08 08:11:12AM
Or you use this script to recover the windows... I got this somewhere and sometime from the www.

-- Example list of processes to ignore: {"xGestures"} or {"xGestures", "OtherApp", ...}
property processesToIgnore : {}

-- Get the size of the Display(s), only useful if there is one display
-- otherwise it will grab the total size of both displays
tell application "Finder"
	set _b to bounds of window of desktop
	set screen_width to item 3 of _b
	set screen_height to item 4 of _b
end tell

tell application "System Events"
	set allProcesses to application processes
	set _results to ""
	repeat with i from 1 to count allProcesses
		set doIt to 1
		repeat with z from 1 to count processesToIgnore
			if process i = process (item z of processesToIgnore) then
				set doIt to 0
			end if
		end repeat
		
		if doIt = 1 then
			tell process i
				repeat with x from 1 to (count windows)
					set winPos to position of window x
					set _x to item 1 of winPos
					set _y to item 2 of winPos
					
					if (_x < 0 or _y < 0 or _x > screen_width or _y > screen_height) then
						
						set position of window x to {0, 22}
						
					end if
				end repeat
				
			end tell
		end if
	end repeat
end tell


[ Reply to This | # ]