PythonCard deliberately sets the size to (-1,-1) in propertyEditor.py if the component's size matches the call to GetBestSize() - under OSX GetBestSize() is not staying constant for the multicolumn list and keeps matching the new size....hence size always gets set to (-1,-1).
Well done if you managed to follow that last sentence.
(You can get the same result under Windows XP, if you resize the component to exactly GetBestSize()'s calculation of the minimum size. You are unlikely to see this in the real world.)
There appear to be 2 issues - a possible bug in GetBestSize() since the release of 2.7.x, and some clarification as to why the size needs to be set to (-1,-1). The comments in propertyEditor.py indicate that there is some doubt as to the purpose of setting (-1,-1).
I have attached a test that shows the problem, along with the results I see here.
Test example and my results showing GetBestSize() issue.