For some reason the Skype 5 for the Mac release has a minimum window height and width. It's very clearly un-liked by the masses, including myself. I have no idea of the legality or license breach or whatnot of running Skype in a debugger, but since there's no decompilation necessary to do this, I can't see the harm.

This is a very manual process. The window minimum height annoys me to such a degree that I'm willing to do this every time I start Skype (not very frequently though I use it every day).

Major Caveats:

To run Skype 5 without the minimum window size, the steps are:

  1. Open Terminal
  2. enter: gdb /Applications/Skype.app/Contents/MacOS/Skype
  3. wait for the “(gdb)” prompt
  4. enter: b -[NSWindow setMinSize:] and answer “y” to any questions
  5. enter: b -[NSWindow setContentMinSize:] and answer “y” to any questions
  6. enter: r
  7. when greeted with “Breakpoint 1, 0x90a34f6d in -[NSWindow setMinSize:] ()”, enter: ret
  8. when greeted with “Make selected stack frame return now? (y or n)” enter: y
  9. enter: c
  10. when greeted with “Breakpoint 2, 0x90990fda in -[NSWindow setContentMinSize:] ()” enter: ret
  11. when greeted with “Make selected stack frame return now? (y or n)” enter: y
  12. enter: c
  13. when greeted with “Breakpoint 1, 0x90a34f6d in -[NSWindow setMinSize:] ()”, enter: ret
  14. when greeted with “Make selected stack frame return now? (y or n)” enter: y
  15. enter: c
  16. Enjoy Skype 5 with a completely resizable window

Below are my original notes, they are not complete, readable, or coherent:

NOTES:


r = run
bt = backtrace /show the stack
info functions setContentMinSize  - gets address for the set window size function, or other...
info functions set.*Size - get all functions that have set ... Size
info functions NS.*set.*MinSize
info frame - information about current frame in stack

b *0x90990fc8 - set a breakpoint at a function address (from info functions)
x/10i 0x90990fc8 - show next 10 instructions NOTE no * in the address...
x/10i - show next ten instructions
si (step single instruction including function calls)
ni (step single instruction don't include function calls)
return (return immediately from function)

Action:

Find all functions that set the MinSize: info functions NSW.*set.*MinSize

(gdb) info functions NSW.*set.*MinSize
All functions matching regular expression "NSW.*set.*MinSize":

Non-debugging symbols:
0x90990fc8  -[NSWindow setContentMinSize:]
0x90a34f5b  -[NSWindow setMinSize:]
0x90f3ac9b  -[NSWindowTemplate setMinSize:]
0x90f3ad8e  -[NSWindowTemplate setContentMinSize:]

Set a break for each of those:
b *0x90990fc8
b *0x90a34f5b
b *0x90f3ac9b
b *0x90f3ad8e

maybe write a "ret" at 0x90a34f5b?  if onl