private boolean hasDisplayModeDifferentToLastRequest() {
        // See if the hex mode differs from what we got back last time
        return lastResult != null
                && (
                (FetchDataRequest.DisplayMode.HEX.equals(lastResult.getDisplayMode())
                        && !textPresenter.getViewAsHexOption().isOnAndAvailable()
                ) || (FetchDataRequest.DisplayMode.TEXT.equals(lastResult.getDisplayMode())
                        && textPresenter.getViewAsHexOption().isOnAndAvailable()));
    }
Will attempt to set the source range using the passed highlight, i.e. if the highlight
is towards the end of the data then it will set the range to enclose the highlight.
stroom-core-client/src/main/java/stroom/data/client/presenter/SourcePresenter.java