So, the dealer is a crook if he haggles, and he's a crook, if he doesn't.
Sounds like a no win. You can't please all the customers.
New and Used car pricing has changed a lot over the years. Most new car brands don't have a lot of mark-up (non-luxury). The money is in factory incentives. If you can get a cash price that matches the online advertised price, then you are geting a good price.
Used cars are different. You will probably pay more at Car-Max, bust most dealers have moved towards market-based pricing. This means they price their vehicles at a price that is in line with, or lower than the price being charged by other dealers for that same car. This means dealers competing with on-line pricing, can't mark the car up as much as they'd like. But it depends on the car. If you are buying Used Chevy Malibu, the dealer isn't likely going to have much markup in that car. If your preferred car is hard to find, you are going to pay a premium.
Anyway, no-haggle pricing seems to be a response to people believing dealers are crooks. But of course, some people will think you are a crook, no matter what.