Anthony Bilinski
e4552cf905
chore(CI): Add support for building toxcore and toxext for macOS
...
CMAKE_OSX_DEPLOYMENT_TARGET has no effect when not building for macOS.
2022-03-21 20:02:15 -07:00
Anthony Bilinski
02f384a7d2
chore(CI): Add support for building qrencode for macOS
...
CMAKE_OSX_DEPLOYMENT_TARGET has no effect when not building for macOS.
2022-03-21 19:16:49 -07:00
Anthony Bilinski
e6075c278d
chore(CI): Add support for building msgpack-c for macOS
...
CMAKE_OSX_DEPLOYMENT_TARGET has no effect when not building for macOS.
2022-03-21 19:16:49 -07:00
Anthony Bilinski
f9b8a8a05f
chore(CI): Add support for building ffmpeg for macOS
2022-03-21 19:16:49 -07:00
Anthony Bilinski
a94304148e
chore(CI): Add support for building libexif for macOS
2022-03-21 19:16:41 -07:00
Anthony Bilinski
b4636c8174
chore(CI): Add support for building openal for macOS
...
CMAKE_OSX_DEPLOYMENT_TARGET has no effect when not building for macOS.
MACOSX_RPATH must be set explicitly for OpenAL to be found. It is default using newer cmake, but OpenAL is using cmake 2.6.
2022-03-21 19:16:41 -07:00
Anthony Bilinski
ad862ca50e
chore(CI): Add support for building openssl for macOS
2022-03-21 19:16:41 -07:00
Anthony Bilinski
c7ac0fdc3f
chore(CI): Add support for building opus for macOS
2022-03-21 19:16:41 -07:00
Anthony Bilinski
59fb97e2a3
chore(CI): Add support for building sodium for macOS
2022-03-21 19:16:41 -07:00
Anthony Bilinski
d3bebab0b7
chore(CI): Add support for building sqlcipher for macOS
2022-03-21 19:16:37 -07:00
Anthony Bilinski
35d35a33f2
chore(CI): Add support for building VPX for macOS
...
Manually set library id name because it defaults to "libvpx.7.dylib",
for some reason, which is not found by qTox or tests.
2022-03-21 17:45:08 -07:00
Anthony Bilinski
b067aae207
refactor: Move Style global shared state into class
2022-03-19 21:28:21 -07:00
Anthony Bilinski
d7b67081e5
refactor(history): Separate db upgrade logic from History
...
Allows for cleaner testability of upgrade logic and reduces the overall size
and clutter of History.
2022-03-19 21:27:40 -07:00
Anthony Bilinski
2a2b079992
feat(core): Add error parsing for Tox_Err_Options_New
2022-03-18 22:20:13 -07:00
Anthony Bilinski
a5660fb6e3
feat(core): Add error parsing for Toxav_Err_Bit_Rate_Set
2022-03-18 22:20:13 -07:00
Anthony Bilinski
47a05c7592
feat(core): Add error parsing for Toxav_Err_Call
2022-03-18 22:20:13 -07:00
Anthony Bilinski
47a20f6061
feat(core): Add error parsing for Toxav_Err_Call_Control
2022-03-18 22:20:12 -07:00
Anthony Bilinski
6c9c380915
feat(core): Add error parsing for Tox_Err_File_Send_Chunk
2022-03-18 22:20:12 -07:00
Anthony Bilinski
978bcde572
feat(core): Add error parsing for Tox_Err_File_Control
2022-03-18 22:20:12 -07:00
Anthony Bilinski
040beae56a
feat(core): Add error parsing for Tox_Err_File_Get
2022-03-18 22:20:12 -07:00
Anthony Bilinski
aff5663351
feat(core): Extend and deduplicate Tox_Err_File_Send error parsing
2022-03-18 22:20:12 -07:00
Anthony Bilinski
350fa9b462
refactor: Don't handle default switch case of error enums
...
Allows for a compile error if enum cases are unhandled. Stil handles a
cast value passed in if the switch matches none.
2022-03-18 22:20:12 -07:00
Anthony Bilinski
b09796a54c
refactor(core): Move toxcore error parsing out of core.pp to utility
...
To be used by coreav and corefile as well.
2022-03-18 22:20:11 -07:00
Anthony Bilinski
ad6b510417
fix(macos): Represent autorun state in UI persistently
...
Check file setting rather than reporting a global value that isn't persisted
across client restart.
2022-03-18 17:02:06 -07:00
Anthony Bilinski
009369118f
fix(macos): Fix macOS autorun not loading at start
...
macOS system.log was reporting "Unknown key for integer: RunAtLoad" and
not loading qTox at start despite
~/Library/LaunchAgents/chat.tox.qtox.autorun.plist being present.
Changing the type from an int to a bool causes it to load successfully
on boot.
Fix #2814
2022-03-18 17:02:04 -07:00
Anthony Bilinski
4c969a9277
chore(CI): Move QrEncode build from autotools to cmake
...
Autotools version failed to configure on macOS, and QrEncode's README says "If
the configure script does not work well, try to use CMake." Cmake works for
both macOS and Windows.
2022-03-18 00:51:49 -07:00
Anthony Bilinski
6c85492f17
chore(CI): Add macOS VPX patch to allow setting mmacosx-version-min
...
VPX overrides the user setting by default, preventing a newer macOS from
building for an older macOS.
2022-03-18 00:51:49 -07:00
Anthony Bilinski
05faddf526
chore(CI): Rename Windows vpx.patch to vpx-windows.patch
...
Avoid conflict with different VPX patch needed for macos
2022-03-18 00:51:49 -07:00
Anthony Bilinski
502ccb1e1b
chore(CI): Add macOS platform detection for build scripts
2022-03-18 00:51:49 -07:00
Anthony Bilinski
90210a9826
chore(CI): Backup NSIS ShellExecAsUser plugin
...
As was done in the previous ANSI version prior to
beb38fa33b
For reasons covered here:
beb38fa33b (r68688468)
2022-03-16 21:36:12 -07:00
Anthony Bilinski
5de5403964
fix(corefile): Close files of broken file transfers
...
Fix #6500
2022-03-16 03:18:17 -07:00
Anthony Bilinski
42b4385c35
chore(CI): Use platform detection script in Windows dep build scripts
...
Allows future macOS configuration in each individual build script to not all be
duplicated. Also deduplicates current Windows arg checking and config setting.
2022-03-15 22:39:07 -07:00
Anthony Bilinski
5ac0dee3a8
chore(CI): Add script for handling platform compile args
2022-03-15 22:39:07 -07:00
Anthony Bilinski
c828a16b7b
feat(CI): Run clang-tidy check in CI
2022-03-15 08:19:53 -07:00
Anthony Bilinski
73aa1f3f48
refactor: Comply with Clang's Wunused-parameter
2022-03-15 08:19:53 -07:00
Anthony Bilinski
3d7a0d249d
refactor: Comply with Clang's Wunused-const-variable
2022-03-15 08:19:53 -07:00
Anthony Bilinski
acc46370ca
refactor: Comply with Clang's Wunused-private-field
2022-03-15 08:19:53 -07:00
Anthony Bilinski
6e7ca76911
refactor: Comply with Clang's Wdouble-promotion
2022-03-15 08:19:53 -07:00
Anthony Bilinski
0e8582c88e
refactor: Comply with Clang's Wmismatched-tags
...
Fix #6042
2022-03-15 08:19:53 -07:00
Anthony Bilinski
877ef4ae5b
feat(style): Add clang-tidy config
...
Starting with just two rules for arg naming
2022-03-15 08:19:53 -07:00
Anthony Bilinski
cabcf4111f
refactor(style): Match declaration and definition argument names
...
Conform with readability-named-parameter and
readability-inconsistent-declaration-parameter-name
2022-03-15 08:19:53 -07:00
Anthony Bilinski
47d52f9977
chore(CI): Fix gitstats cloning by cloning with https
...
To resolve the error:
The unauthenticated git protocol on port 9418 is no longer supported.
2022-03-15 07:07:52 -07:00
Anthony Bilinski
b894531cdb
fix(tests): Mock Settings for SmileyPack test
...
Settings upgrades global settings on construction, which can cause the
SmileyPack test to be inconsistent based on file system state.
Fix #6530
2022-03-15 01:32:16 -07:00
Anthony Bilinski
e5f16d812e
chore(macOS): Remove support for old AvFoundation
...
We no longer need conditional support for the older API since our minimum supported version is now 10.15.
2022-03-14 14:48:41 -07:00
Anthony Bilinski
16aeb5f572
refactor(model): Rename Contact and ContactId to Chat and ChatId
...
* Referring to groups generically as contacts is confusing.
* Friends are referred to as contacts in many places either as more
neutral wording, or to avoid using the keyword friend as a variable
name. Calling Contact Chat allows contact to be used for Friends.
2022-03-14 12:44:37 -07:00
Anthony Bilinski
cf5be40511
refactor(Style): Move fonts storage from array to std::map
...
Strongly enforces ordering instead of being based off comments, and logically
represents the relation better.
2022-03-14 10:43:26 -07:00
Anthony Bilinski
b9c4b0075c
refactor(Style): Move Style enums to enum class
2022-03-13 16:00:48 -07:00
Anthony Bilinski
0c967725df
refactor: Remove Settings singleton
...
* Make main.cpp's toxSave free functions into a ToxSave class so that it can be
given Settings on construction.
* Add void* to IPC callbacks so that classes can get back to themselves.
2022-03-13 16:00:48 -07:00
Anthony Bilinski
61b3cb528a
refactor: Remove CameraSource singleton
...
Grossly expose it publicly from Nexus for the time being since Profile is
sometimes constructed from main, while Nexus is also a singleton. So
CameraSource can't be constructed in main and be passed in to Nexus on
construction. This should be temporary, until Nexus's singleton is
removed as well.
2022-03-13 16:00:48 -07:00
Anthony Bilinski
9bf17acca6
chore(CI): Handle build scripts called with relative paths with spaces
...
foo=dirname "$0" only works if the script is called with an absolute path and
that path contains no spaces. Add quotes everywhere to contain spaces in
directory names or file names, and add realpath to get the absolute path
regardless of call path.
Not necessarily needed, but like in e405868037
it can avoid some annoying issues when e.g. that script was called with a
relative path in CI.
2022-03-13 06:20:44 -07:00