made matchmedia come before addListener