Extract LOG_FILE_MSG_HEADER struct
Rid of magic offsets in log_read()
Don't read whole file into memory in log_read()
Merge branch 'albel727-better-log-read'

#
# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.
uTox should now display the correct number of peers in the group chat.
Fixed uTox crash introduced in last commit.
Fixed other possible issue.
Group chat name list should no longer be shorter than the number of peers in the group.
Fixed bug.
Fixed uTox crash.
Fixed uTox crash when pressing ctrl-backspace.
Move STR enum aliases onto the same lines

This is to prevent accidental double-backing of
the internal enum counter by someone adding
new ids between an alias and what it refers to.
Rewrite buttons with i18n support
Start bitmap ids from 1

This is to reserve 0 id to indicate unused/invalid bitmap.
Truncate to width in drawtextwidth_right() for Linux

drawtextwidth_right() for Linux didn't honor width
limit, unlike the Windows version. E.g. overly long
friend nicks in chat window were rendered without limit
to the left.
Merge branch 'albel727-fix-right-adjusted-text-rendering-on-linux'

#
# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.
Add i18n text for audio input devices
Improve i18n for audio devices list
Move special video devices closer to tox_av.c

Presence of always-present null input device "None"
should be announced by video_thread().

Presence of special video devices like "Desktop" is
os-dependent and should be announced by video_detect().

This commit implements that, so dropdown_video content
is never manipulated directly from main()/tox_thread()
initialization code paths.
Encode special handles for audio-in devices directly

Integer handles for special audio-in devices like
"None" and "Default Loopback" are encoded into pointers
by platform-specific code directly (which will expect
them later as pointers anyway), instead of doing it in
 NEW_AUDIO_IN_DEVICE and wasting param2 for it.
It also makes it uniform with how it's done for
special video devices.