Halvings are determined by blocks not by any precisely specified time and happen every 210,000 blocks. So the next halving will be at block 740,000.
No one is able to predict the exact date and time this will happen, as it depends on the block mining time. Blocks should be mined on average every 10 minutes, but if the difficulty goes up, it will take longer, and if the difficulty goes down (or if we have more mining power) blocks could be mined faster.