Low-hanging fruit
The first six chapters focused on the harder problems in offline-first web development. There are a couple of reasons for this. First, a lot of apps do the small obvious things right (mostly), so there's not much to learn there. Second, solving the harder problems first means that you're making those changes while the app is simpler to understand and modify.
Small changes, even ultimately positive ones, add complexity to an app, making it harder to make changes later. We're now at a point where we can afford to backtrack and solve these smaller problems.
Error messages
Remember when we implemented support for maps in Chapter 3, Designing Online Behavior? As we haven't added support for offline maps, we get the following error message when opening the app while offline. It's ugly and doesn't describe the problem really well. We can do better.
The current error message is defined by Sencha Touch. Let's override this. Create a new file named...