there is a great product called Citrus Magic, you can get it any grocery store or discount store, it has an orangy smell, eliminates odors doesn't cover them up. Its the only thing that i have found that really works on smoky smells. If you have a balcony, leave the door open and let the fresh air in to the room.
The cabin stewards do a very good job cleaning up after smokers. My wife is very sensitive and has only had a problem once. The cabin steward suggested changing the bedspread and we had no further issues.