what is the difference between 暖かい and 温かい?
暖かい refers to the climate or surrounding atmosphere that is warm:
温かい is of tangible things like solids and liquids and it means it is warm to the touch. Also it can be used to describe a "warm heart" :
A similar difference is observed in 暑い・熱い and 寒い・冷たい. 暑い and 寒い refer to weather/environment. While 熱い and 冷たい is used for hot and cold to the touch respectively.