User request roadmap items are growing pretty long so this release aims to address a bunch of them.
Changes so far
- Add a setting to disable auto-linking IP addresses. Note that auto-linking IP addresses comes free with Android so enabling this feature will actually cause the app to strip them which is a bit slower.
- Add a new layout: full with cards. This layout is the full layout but each post is contained within a card instead of full bleed.
- Changed the UI for the post feed toolbar.
- Fixed a bug where sometimes expanding the context in the message screen would cause weird behavior.
- Fix locales being mixed together. (Attempt number 2)
Update
One of the roadmap items I am tackling is the addition of an optional post feed header. This one is challenging for a few reasons. The first is that because it’s supposed to be optional, the UI design needs to work with or without the headed. The second is that there’s a lot of moving parts with headers when the screen is this busy and complex already.
To tackle the first part I am redesigning the tool bar in the post feed screen so it will look good with or without the header.
Ok I just realizes there are some even more edge cases. Consider the following actions:
Now what should happen?
Option 1. the video plays full screen but now it is muted because the app remembers from the previous session that full screen videos should play muted.
Option 2. the video plays with the same volume as when it was inline. The app remembers the volume so when the next video is played full screen it will be played with the same volume.
I think in this option 2 should happen. I think to resolve all of these edge cases it’s probably easier to consider the inline and full screen players as different “apps” with their own different states.
Inline should always obey one set of rules and full screen should always obey a different set of rules UNLESS an inline player is expanded. In the case where an inline player is expanded, the full screen player should take the settings from the inline player and also persist those settings.