Currently, trying to get a `csrftoken` from an empty cookie string will
crash the application. This creates a helper method to extract a cookie
value given a cookie name by pattern matching on the cookie string and
returning the value if one is found.
Fixes: #167
This reduces duplication and makes it easier to know what `getCookie` is
doing, since all domains are now clustered together and it's easy to see
the difference between them..
Currently, if the user checks the option "Swap time and date positions",
leaves the settings modal and returns to it, the option will be
unchecked, even though the date and time are, indeed, swapped.
This saves the value of the "Swap time and date positions" option so
that it will match whatever state the user selected last.
Fixes: #165
This doesn't change behavior, but makes the variable `isSwapTime` match
the value of the checkbox state (`cbSwapTimeDate.isChecked()`). Now,
both of them will be either `true` or `false` together, instead of
having opposite values.
Removed DayNight theme. Added a 'white' theme for Light, and 'black' theme for Dark.
Users will have to set the type of Light or Dark theme they want to use.
Default is white for light, black for dark.
More themes will be added later.
* General (makeshift): Set default first-tab to be profile, adjust search button appearance logic, add fragment labels
* DM inbox items: Adjust group chat avatar sizes, reinstate unread indicators
* DM thread: Swap buttons per spirit of #122
* Profile: Fix story fetcher logic
* Story: Fix bug where first story can't scroll to next user, unify subtitle to timestamp, swap buttons per #122
* Comment: Unfocus replying comment when X is pressed