This isn't a fix for mms over wifi in cm7, but a workaround that seems to work for me. It uses an app called AutomateIt to disable the wifi and turn on mobile data whenever you open messenger then turn wifi back on when you exit out of messenger. I was able to do this with the free version in the Play Store.
1. Install AutomateIt from the Play Store and open it.
2. It will pop up some message about getting Pro for some features. Hit whatever it is that makes that go away.
3. Hit that little icon in the upper left with a + on it. Wait for it to ask for root and allow it.
4. On the next screen under Trigger choose "Application Status Trigger". Hit the icon to the right of that with the wrench and screwdriver.
5. Tap where it says Application then choose Messenger (or whatever you use for texting like Handcent). For now leave the checkmark ticked in the box below and hit the floppy disc image to save
6. Then tap on the part that says Action and choose "Set Wifi State Action". Hit the wrench and choose Wi-Fi Disabled from the drop down list. Click floppy to save.
7. Click floppy above again to save this action or profile or whatever.
Now when you open your messenger the wifi will turn off automatically. I found that I still had to enable the mobile data to get the 3g to work. Here's how I set this up in the AutomateIt app.
1. Hit the plus in upper left to add a new rule.
2. For Trigger choose your sms app of choice in the same way as listed in steps 4-5 above.
3. Not tap on Action and choose "Set Mobile Data Action". Hit the wrench and put a checkmark in the box to tell it to enable mobile data. Hit the floppy. Hit floppy again.
Now when you open messenger the wifi will turn off and the 3g will turn on and you should be able to send and receive mms. It sometimes still takes a minute for it to send or receive, but the few times I tried it did work. If you want to have AutomateIt re-enable the wifi when you exit out of messenger then you can create a new rule to do that too.
1. Hit plus in upper left to create a new rule.
2. For the trigger choose "Application Status Trigger" then choose the sms app like before except...
3. This time where it says "Application Activated" with a checkbox next to it uncheck it. This will tell it to do the action when the messenger is no longer active. Hit floppy to save
4. Now for Action choose "Set Wifi State Action" and hit the wrench.
5. It should already say Wi-Fi Enabled already but just make sure. Then hit the save.
6. Hit save one more time and you should be good to go.
Now all that you might want to do is backup the rules somewhere. Hit menu then More then Backup Rules. I also did Share Rules which uploaded them to my box account.
I know this is a bit of a process to disable the wifi but you only have to do it once. I was just getting annoyed at having to remember to disable wifi every time I went to send a picture so for me this will work for now
If I forgot any steps or if someone has a better solution please post. This is the only free automated way I've found to do this but I didn't look too hard for another way
1. Install AutomateIt from the Play Store and open it.
2. It will pop up some message about getting Pro for some features. Hit whatever it is that makes that go away.
3. Hit that little icon in the upper left with a + on it. Wait for it to ask for root and allow it.
4. On the next screen under Trigger choose "Application Status Trigger". Hit the icon to the right of that with the wrench and screwdriver.
5. Tap where it says Application then choose Messenger (or whatever you use for texting like Handcent). For now leave the checkmark ticked in the box below and hit the floppy disc image to save
6. Then tap on the part that says Action and choose "Set Wifi State Action". Hit the wrench and choose Wi-Fi Disabled from the drop down list. Click floppy to save.
7. Click floppy above again to save this action or profile or whatever.
Now when you open your messenger the wifi will turn off automatically. I found that I still had to enable the mobile data to get the 3g to work. Here's how I set this up in the AutomateIt app.
1. Hit the plus in upper left to add a new rule.
2. For Trigger choose your sms app of choice in the same way as listed in steps 4-5 above.
3. Not tap on Action and choose "Set Mobile Data Action". Hit the wrench and put a checkmark in the box to tell it to enable mobile data. Hit the floppy. Hit floppy again.
Now when you open messenger the wifi will turn off and the 3g will turn on and you should be able to send and receive mms. It sometimes still takes a minute for it to send or receive, but the few times I tried it did work. If you want to have AutomateIt re-enable the wifi when you exit out of messenger then you can create a new rule to do that too.
1. Hit plus in upper left to create a new rule.
2. For the trigger choose "Application Status Trigger" then choose the sms app like before except...
3. This time where it says "Application Activated" with a checkbox next to it uncheck it. This will tell it to do the action when the messenger is no longer active. Hit floppy to save
4. Now for Action choose "Set Wifi State Action" and hit the wrench.
5. It should already say Wi-Fi Enabled already but just make sure. Then hit the save.
6. Hit save one more time and you should be good to go.
Now all that you might want to do is backup the rules somewhere. Hit menu then More then Backup Rules. I also did Share Rules which uploaded them to my box account.
I know this is a bit of a process to disable the wifi but you only have to do it once. I was just getting annoyed at having to remember to disable wifi every time I went to send a picture so for me this will work for now
If I forgot any steps or if someone has a better solution please post. This is the only free automated way I've found to do this but I didn't look too hard for another way