only support portrait mode, closes #12