My logic is that I can stay as long as it takes me to finish what I'm eating and drinking, and maybe a few minutes longer. If I'm working on my laptop or reading a book then I'll stretch it out a bit, but it's not really possible to make a cup of coffee last more than twenty minutes.
I can't possibly imagine eating and drinking enough to justify my presence in a cafe for an entire day.