There is no longer a hard limit on actual block size, it is now calculated on the contents of the transactions to be close to 1MB. I saw the algorithm on here somewhere, I'll see if I can find it again. But yes, it has to do with the activation of SegWit.