1
0
mirror of https://github.com/qTox/qTox.git synced 2024-03-22 14:00:36 +08:00
Commit Graph

4153 Commits

Author SHA1 Message Date
Anthony Bilinski
602671c9dc
fix(core): don't set core status on connect, just update UI 2019-09-15 19:04:02 -07:00
TriKriSta
bbbbc6aade
fix: hide current date at the top of the chat 2019-09-15 17:31:45 -07:00
jessica181920
11b34c84ef fix(i18n): Various English fixes
Consistency, typos, grammatical corrections, capitalization, punctuation,
etc.
2019-09-14 15:00:59 -04:00
jessica181920
e6381861c8 fix: Remove empty file
Removed an unused file
2019-09-14 02:24:59 -04:00
Mick Sayson
74d0b47ceb fix(chatlog): Prepare geometry changes on chatline proxy
Closes #5818. If output of boundingRect() changes for a QGraphicsItem
prepareGeomeotryChange() must be called.
2019-09-13 14:41:10 -07:00
bodwok
c37a05f40c
fix(login): fix a crash when many dialogs are open 2019-09-10 23:57:55 +02:00
Anthony Bilinski
8a210d524b
Merge branch 'v1.17-dev' 2019-09-02 21:22:04 -07:00
jenli669
bd034e130d
docs(usermanual): Add information about commandline options 2019-09-02 21:05:04 -07:00
jenli669
31fec7488f
feat(proxy): provide commandline tools for proxy settings 2019-09-02 21:05:01 -07:00
sudden6
2dea6d2c1f
Merge pull request #5789
jenli669 (2):
      feat(proxy): provide commandline tools for proxy settings
      docs(usermanual): Add information about commandline options
2019-09-02 18:29:06 +02:00
jenli669
79128b445d
docs(usermanual): Add information about commandline options 2019-09-02 17:28:02 +02:00
sudden6
2ea5030958
fix(widget): don't try to play audio if it's disable 2019-08-30 14:07:19 +02:00
Anthony Bilinski
2bba12175e
fix(chatlog): update multi line selection on chatlog change
Fixes crash due to out of bound access. Fixes selection box jumping on history load.

Fix #5769
2019-08-30 03:50:25 -07:00
Anthony Bilinski
badef48c3a
Merge pull request #5777
TriKriSta (2):
      fix: scroll bar stuck to bottom (fix #5755)
      docs: add comments for functions that load history
2019-08-29 15:09:06 -07:00
Anthony Bilinski
9dd083978e
fix(ipc): handle ipc failure gracefully
Allows running qTox inside jails that block IPC.

Fix #5740
2019-08-29 13:55:54 -07:00
TriKriSta
5fc1afbab5 docs: add comments for functions that load history 2019-08-29 21:34:03 +03:00
Anthony Bilinski
64aa3eae4d
fix(history): select only pending history for the requested friend 2019-08-29 10:39:06 -07:00
jenli669
3e1e1f6087
feat(proxy): provide commandline tools for proxy settings 2019-08-29 13:43:27 +02:00
Anthony Bilinski
fd0a98fd90
Merge branch 'v1.17-dev' 2019-08-29 00:47:32 -07:00
TriKriSta
38df897e02
fix: scroll bar stuck to bottom (fix #5755) 2019-08-28 18:07:55 -07:00
sudden6
909deb0feb
fix: remove reconnect button
The button didn't work that well and caused all kinds of issues inside
the code, so I replaced it by a notice that changes to the Advanced
settings only apply after a restart of qTox.

In the process I also removed all code that was exclusively used for
that feature.

We may add it back later when qTox's internal architecture makes it less
cumbersome.
2019-08-28 16:36:09 -07:00
Anthony Bilinski
9819aefc44
fix(chatform): fix stuck spinner on messages not at end of chatform
Fix #5763

remove restriction to not update messages not in last slot in chatform,
allowing completed messages to be timestamped at any position. Fixes
stuck spinner in cases where a second message was sent quickly, or an
incoming message was received before the last send message was completed.
2019-08-28 14:46:44 -07:00
TriKriSta
177bf12f11
fix: update workerStb 2019-08-28 14:26:20 -07:00
TriKriSta
6de307e6b9
refactor: optimize load messages during the search 2019-08-28 14:26:14 -07:00
TriKriSta
dbf880078e
feat: save selected search text after scrolling up 2019-08-28 14:26:08 -07:00
TriKriSta
ce570927b1
feat: check chat status before start a search 2019-08-28 14:26:03 -07:00
TriKriSta
acb91ed731
fix: data validation during the search (fix: #5791, #5723) 2019-08-28 14:25:57 -07:00
sudden6
0a30c1b1c0
fix(profile): load settings before starting Core
This is a quick fix to load settings before Core is started. Ideally
this would not need to be inside the Profile, but at the moment the
decryption key is not available before starting Core.
2019-08-28 14:25:06 -07:00
sudden6
ff5f3190cf
Merge pull request #5795
Jimi Huotari (2):
      refactor(Qt): use 'QLatin1String' instead of 'QLatin1Literal'
      refactor(Qt): use 'asprintf' instead of 'sprintf'
2019-08-28 22:07:27 +02:00
sudden6
834baff556
Merge pull request #5793
TriKriSta (5):
      fix: data validation during the search (fix: #5791, #5723)
      feat: check chat status before start a search
      feat: save selected search text after scrolling up
      refactor: optimize load messages during the search
      fix: update workerStb
2019-08-28 21:13:38 +02:00
sudden6
bb26d4a086
fix(profile): load settings before starting Core
This is a quick fix to load settings before Core is started. Ideally
this would not need to be inside the Profile, but at the moment the
decryption key is not available before starting Core.
2019-08-27 09:40:35 +02:00
sudden6
db802822f3
fix: empty username causes mention on ever message
This fixes #2119 and additionally introduces the possibility to mention
users by their public key.
2019-08-26 23:22:17 -07:00
jenli669
74377430ce
feat(login): generate a GUI error when auto login fails 2019-08-26 23:21:40 -07:00
jenli669
e55e50d510
fix(login): show login screen when autologin fails
fixes #5781
2019-08-26 23:18:13 -07:00
sudden6
641fba3553
fix: empty username causes mention on ever message
This fixes #2119 and additionally introduces the possibility to mention
users by their public key.
2019-08-26 19:08:34 +02:00
TriKriSta
dedbd184b0 fix: update workerStb 2019-08-23 16:48:21 +03:00
TriKriSta
e2efe443fe refactor: optimize load messages during the search 2019-08-23 16:36:29 +03:00
Jimi Huotari
9d6e84906e refactor(Qt): use 'asprintf' instead of 'sprintf'
Deprecated since Qt 5.14.

- https://code.qt.io/cgit/qt/qtbase.git/commit/?h=5.14&id=f8f592d5
2019-08-23 14:55:04 +03:00
Jimi Huotari
ec7d66e96b refactor(Qt): use 'QLatin1String' instead of 'QLatin1Literal'
This is an undocumented Qt 2/3/4 remnant, deprecated in Qt 5.14.

- https://code.qt.io/cgit/qt/qtbase.git/commit/?h=5.14&id=3e75c296
- https://code.qt.io/cgit/qt/qtbase.git/commit/?h=5.14&id=45373c19
2019-08-23 14:54:08 +03:00
TriKriSta
a6a0481ddc feat: save selected search text after scrolling up 2019-08-22 15:11:18 +03:00
TriKriSta
76679de2e0 feat: check chat status before start a search 2019-08-21 16:36:59 +03:00
TriKriSta
e3c35c9153 fix: data validation during the search (fix: #5791, #5723) 2019-08-21 15:26:18 +03:00
jenli669
8832234758
feat(login): generate a GUI error when auto login fails 2019-08-13 21:25:55 +02:00
jenli669
a3bbf5c41d
fix(login): show login screen when autologin fails
fixes #5781
2019-08-12 23:11:18 +02:00
jenli669
49c8f9b9b5
fix(profile): write .tox file immediately on creation
Fixes issue where .tox file of a new profile wasn't written until
connection was established.
2019-08-09 22:48:14 +02:00
jenli669
c87682cde9
refactor(Profile): clang-format affected files 2019-08-09 22:48:14 +02:00
jenli669
00449937d4
refactor(profile): simplify Profile constructor
Simplifies Profile constructor by passing Settings instance by
reference during loadProfile and createNewProfile calls.
2019-08-09 22:48:14 +02:00
jenli669
5a3b720513
refactor(profile): extract loadProfile error logic 2019-08-09 22:48:06 +02:00
jenli669
1da963eced
refactor(settings): declare createPersonal const 2019-08-04 21:25:25 +02:00
jenli669
d65aeffe07
refactor(profile): use const name reference in Profile() 2019-08-04 21:25:25 +02:00
jenli669
2d1d5b2a3e
refactor(profile): use const reference in createNew/loadProfile 2019-08-04 21:25:24 +02:00
sudden6
040c6b95ae
fix(chatform): fix a crash when there are no messages to load 2019-08-03 13:13:37 +02:00
jenli669
6c77d57da8
fix(groups): reduce group message size limit by 50
This commit fixes errors when sending large group messages stemming from inconsistencies in reported/true max message size in c-toxcore

Fixes #5760
2019-08-03 00:51:33 +02:00
jenli669
9099eea04f
fix(groups): remove logic that blocks parseConferenceSendMessageError 2019-08-03 00:09:05 +02:00
Anthony Bilinski
765fce94b7
fix(group): use valid pointer, allowing source invalidation
Fix #5681
2019-07-31 14:19:01 -07:00
bodwok
59a59fdc09
fix(chatform): crash after opening chat in new window 2019-07-29 15:51:45 +03:00
antony-jr
a9a953cf1c
fix(build): add required private slots 2019-07-27 16:49:21 +05:30
antony-jr
d23e4fd709
fix(build): fix ifdefs 2019-07-27 16:49:21 +05:30
antony-jr
f4d9cff7d4
chore(build): format code 2019-07-27 16:49:21 +05:30
antony-jr
5eea8ba27f
feat(build): add the delta updater 2019-07-27 16:49:20 +05:30
TriKriSta
5aeac56b76 feat: prohibition to remove messages in group chat 2019-07-22 21:16:26 +03:00
TriKriSta
0a9e72020e refactor: edit load history when scrolling 2019-07-22 21:16:26 +03:00
TriKriSta
b807998fe9 refactor: simple edit code 2019-07-22 21:16:26 +03:00
TriKriSta
4c7ecb6024 feat: remove part messages from chat 2019-07-22 21:16:26 +03:00
TriKriSta
c2d5b422b3 feat: edit position chat after load history 2019-07-22 21:16:26 +03:00
TriKriSta
2a9648d12c feat: add action "Go to current date" 2019-07-22 21:16:26 +03:00
TriKriSta
8c4b1e00a1 feat: edit load history in search 2019-07-22 21:16:26 +03:00
TriKriSta
6de1173c17 feat: edit function "Load chat history" 2019-07-22 21:16:26 +03:00
TriKriSta
b705ac8060 feat: load messages from the database after date 2019-07-22 21:16:26 +03:00
TriKriSta
fb2957c5ee feat: load messages from the database before date 2019-07-22 21:16:26 +03:00
jenli669
dbf56581bb
refactor(widget): replace byteCount() with sizeInBytes in Qt 5.13 2019-07-17 00:14:20 +02:00
jenli669
1c94f090c8
refactor(widget): replace qt_mac_set_dock_menu() in widget 2019-07-14 23:52:44 +02:00
jenli669
dfe75fb101
refactor(widget): replace screenGeometry() when using Qt 5.13 2019-07-14 20:10:00 +02:00
jenli669
0ac5386786
refactor(widget): use drawRoundedRect in callconfirmwidget 2019-07-14 12:08:37 +02:00
jenli669
b45ba34be2
refactor(widget): replace fontMetrics.width() when using Qt 5.13 2019-07-14 12:08:21 +02:00
jenli669
fb3f44721e
refactor(AVForm): replace QDesktopWidget::screenCountChanged 2019-07-13 10:27:02 +02:00
jenli669
16452eff0c
refactor(AVForm): replace QDesktopWidget::resized 2019-07-13 10:26:35 +02:00
jenli669
6e71ccfdad
refactor(widget): replace qSort with std::sort in groupchatform 2019-07-13 08:01:39 +02:00
jenli669
ba9d724a17
refactor(widget): make contentDialog use swapItemsAt in Qt 5.13 2019-07-12 19:31:10 +02:00
jenli669
24811d1042
refactor(offlinemsg): replace qSort with std::sort 2019-07-12 08:07:03 +02:00
jenli669
8373e3abf3
refactor(nexus): replace deprecated QSignalMapper with lambda 2019-07-11 23:45:42 +02:00
jenli669
8a0197b37f
refactor(filetransfer): switch to Qt 5.13 compliant methods for OSX 2019-07-11 09:13:42 +02:00
sudden6
033c49aac3
Merge pull request #5738
bodwok (1):
      fix(search): application crash when starting a search
2019-07-03 10:26:44 +02:00
bodwok
77d55d5d7d
fix(search): application crash when starting a search 2019-07-02 12:29:00 +03:00
jenli669
105f9ec401
refactor(widget): remove Widget::getInstance 2019-06-30 10:09:31 +02:00
jenli669
7fca93bde9
refactor(circlewidget): link CircleWidget ContentDialogs using signals 2019-06-30 10:09:30 +02:00
jenli669
adab063a49
refactor(widget): make PrivacyForm use signals for clearAllReceipts() 2019-06-30 10:09:30 +02:00
jenli669
20979744c9
refactor(chatform): make ChatForm use signals for updateFriendActivity 2019-06-30 10:09:30 +02:00
jenli669
cff845ffa7
refactor(widget): make AboutFriendForm use FriendWidget as parent 2019-06-30 10:09:30 +02:00
jenli669
09f37a97f9
refactor(widget): make searchWidget always use signals 2019-06-30 10:09:29 +02:00
jenli669
c28b2604cd
refactor(widget): remove Widget singleton access from GeneralForm 2019-06-30 10:09:29 +02:00
jenli669
e57693fa8f
refactor(widget): stop using getInstance in Widget 2019-06-30 10:09:29 +02:00
jenli669
6d0ae67c9d
refactor(widget): remove Widget singleton in ContentDialog 2019-06-30 10:09:28 +02:00
Anthony Bilinski
33d42c9766
fix(groups): enable AV groups after load
Fix #5509
2019-06-29 16:17:58 -07:00
Anthony Bilinski
e8d48e8788
fix(chatform): add hack to avoid Qt bug on chat show
Fix #5570
2019-06-28 09:42:50 -07:00
Anthony Bilinski
fae9066be6
fix(log): don't attempt to close log file if it failed to open on exit 2019-06-28 02:48:12 -07:00
sudden6
17083b50ba
Merge pull request #5721
jenli669 (1):
      fix(core): correctly relink ui/core when core is changed
2019-06-28 09:02:15 +02:00
sudden6
79c88f2154
Merge pull request #5722
jenli669 (2):
      docs(copyright): update and add copyright info
      docs(copyright): Added copyright to apparmor .qtox files
2019-06-28 09:00:13 +02:00
jenli669
04a9bc46f4
docs(copyright): update and add copyright info
zealously updates and adds qTox copyright information.

Fixes #5713
2019-06-28 01:18:26 +02:00
Anthony Bilinski
7e07025d3c
fix(db): preserve user_version when adding or removing database password 2019-06-27 02:40:40 -07:00
Anthony Bilinski
dafb17b5fa
fix(db): support databases with either SQLCipher 3.x or 4.x defaults
Fix #5451
2019-06-27 02:40:40 -07:00
jenli669
17d5d55259
fix(core): correctly relink ui/core when core is changed
Widget was only connecting the Core to itself during initialization, but the Core instance could change during a restartCore call. This commit will make Widget link the Core to itself when it changes rather than only on initialization.

Fixes #5710
2019-06-26 11:14:20 +02:00
sudden6
a5754ab0bb
Merge pull request #5715
TriKriSta (1):
      fix: check time for get num messages for friend (fix #5714)
2019-06-26 08:57:17 +02:00
TriKriSta
b0f32379d0 fix: check time for get num messages for friend (fix #5714) 2019-06-25 20:44:21 +03:00
jenli669
f1b6df400f
refactor(startup): return early in makeToxPortable logic 2019-06-25 10:18:22 +02:00
jenli669
72b39adb75
refactor(startup): clang-format changes to edited files 2019-06-25 10:18:22 +02:00
jenli669
3ebea3cd4b
refactor(startup): use instance during profile import 2019-06-25 10:18:22 +02:00
jenli669
a7b4a09ccb
refactor(startup): handle autoLogin checkbox with signals 2019-06-25 10:18:20 +02:00
jenli669
8bc6fc9fd8
refactor(startup): condense and rename scanProfiles 2019-06-25 10:17:56 +02:00
jenli669
ac640bb4bd
refactor(startup): extract startup makeToxPortable logic
This facilitates later use without instantiating Settings object during startup
2019-06-25 10:17:53 +02:00
jenli669
68d24eec64
refactor(startup): remove unnecessary arg. passing in loadDatabase 2019-06-25 10:17:14 +02:00
jenli669
a7df4bfddb
refactor(startup): display last used profile when logging out 2019-06-25 10:17:14 +02:00
jenli669
b9876f3342
refactor(startup): check parser args with empty(), not size() 2019-06-25 10:17:14 +02:00
jenli669
ea2510157c
refactor(startup): decouple loginscreen from model 2019-06-25 10:17:07 +02:00
Mick Sayson
ed514d7166 refactor(chatform): Remove message handling logic from gui path
Functional changes
* Offline messages are still sent when the chat log is cleared
* Spinner now does not wait for history to be complete, just a receipt
  from our friend
* Export chat and load chat history are now available in group chats
* Merged save chat log and export chat log
  * Note that we lost the info messages in the process

NonFunctional Changes
* FileTransferWidget slots only called for correct file
* Settings::getEnableGroupChatsColor now embedded in
GenericChatForm::colorizeNames
  * Settings::setEnableGroupChatscolor now emits signal connected to
GenericChatForm::setColorizedNames to keep state in sync
* Chatlog history not reloaded on setPassword()
  * I am pretty sure this had no purpose
* Removed a lot of responsibility from ChatForm
  * History moved to ChatHistory implementation of IChatLog
  * OfflineMsgEngine moved to FriendMessageDispatcher
  * Export chat and load chat history moved to GenericChatLog
    * Backed by IChatLog so can be used generically
  * Message processing moved to FriendMessageDispatcher
  * The action of sending files to coreFile is still handled by
  ChatForm, but displaying of the sent messages is done through IChatLog
  -> GenericChatForm
  * Search moved to ChatHistory/SessionChatLog
  * All insertion of chat log elements should be handled by
  GenericChatForm now
* Removed overlapping responsibilities from GroupChatForm
  * Search and message sending goes through ichatlog/messagedispatcher
  too
  * Lots of search functionality pushed down into IChatLog
* Some of the file logic was moved into Widget. This is mostly to avoid
  scope increase of this PR even further.
* History APIs removed that were no longer used
2019-06-21 11:01:35 -07:00
Mick Sayson
e607e6ecb4 refactor(chatlog): Add a class to manage history through the IChatLog interface 2019-06-21 11:01:35 -07:00
Mick Sayson
71f8220925 refactor(chatlog): Add class to manage underlying chatlog state 2019-06-21 11:01:35 -07:00
Mick Sayson
c779d52aef refactor(messages): Replace QRegExp with QRegularExpression 2019-06-21 11:01:10 -07:00
Mick Sayson
fef89d70f9 fix(messages): Fix broken sanitized name for notifications/alert messages
* Note that this fix will not take effect until the message processor is
hooked up to widget and chatform
2019-06-21 11:01:10 -07:00
Mick Sayson
f0d840002a refactor(messages): Create class to manage sending/receiving group messages from core 2019-06-21 11:01:10 -07:00
Mick Sayson
3fd4ce5952 refactor(core): Remove length parameter from splitMessages
* From the archeology I managed, MAX_GROUP_MESSAGE_LEN was a workaround
for an old toxcore bug. Testing removal of this parameter and replacing it
with tox_max_message_length() seems to work fine.
2019-06-21 11:01:10 -07:00
Mick Sayson
22a4c38bfd refactor(messages): Create class to manage sending/receiving friend messages from core 2019-06-21 11:01:10 -07:00
Diadlo
678fc51c1b refactor: Use model in chatroom widgets 2019-06-19 12:34:08 +03:00
Diadlo
0b9b538601 refactor: Inject DialogsManager in chatrooms 2019-06-19 12:34:06 +03:00
Diadlo
ac36ed8180 refactor: Create interfaces for ContentDialog and ContenDialogManager 2019-06-19 12:34:03 +03:00
Mick Sayson
15b9f9ff54 refactor(strongtype): Add property types to strong types 2019-06-18 13:38:02 -07:00
sudden6
63e903f950
Merge pull request #5695
jenli669 (2):
      fix(group): set default group chat title when provided title is invalid
      fix(group): Condense invalid title handling logic, clang-format
2019-06-18 21:32:14 +02:00
sudden6
0a95f9fc1d
Merge pull request #5698
jenli669 (2):
      fix(group): always retain own name when updating group peer list
      fix(group): fix logic oversight and code style
2019-06-17 23:37:40 +02:00
jenli669
aeddf4822a
fix(group): Condense invalid title handling logic, clang-format
This commit ignores the possibility of invalid length error being thrown
by a title after we've already checked its size the first time. We also
assume that a group chat cannot cease existing while we iterate over the
retrieved groups.
2019-06-15 00:37:02 +02:00
jenli669
a1a3749700
fix(group): fix logic oversight and code style 2019-06-15 00:34:02 +02:00
jenli669
f77a062120
fix(group): set default group chat title when provided title is invalid
Add handling logic for when a group exists but has an invalid title.
Title is created using the first 8 hexadecimals of the group chat id.
2019-06-15 00:15:48 +02:00
jenli669
c772db3baa
fix(group): always retain own name when updating group peer list
Adds special case for updating our own PK in regeneratePeerList
Format according to format-code.sh

Fixes #5686
2019-06-14 23:46:41 +02:00
jenli669
85f90ab221
fix(audio): correctly loop incoming call sound
Reordered audioNotification play/loop calls.
Fixes #5680
2019-06-12 22:59:04 +02:00
Anthony Bilinski
8568a14c93
Merge pull request #5688
Mick Sayson (3):
      feat(offlinemsg): Force offline messages to always be enabled
      refactor(offlinemsg): Decouple OfflineMsgEngine from other components
      feat(offlinemsg): Enable offline messages with no history
2019-06-09 01:37:26 -07:00
sudden6
01a53789be
Merge pull request #5674
Monsterovich (8):
      fix(ui): Improved notifications
      fix(ui): Added option to hide message sender and contents
      fix(ui): minor fix
      fix(ui): don't forget to update UI
      fix(ui): apply requested changes
      fix(ui): revert CMakeLists.txt
      fix(ui): minor fix
      fix(ui): fix 2
2019-05-27 23:46:54 +02:00
Mick Sayson
2283d0c1b0 feat(offlinemsg): Enable offline messages with no history 2019-05-26 15:33:51 -07:00
Mick Sayson
e5016337bb refactor(offlinemsg): Decouple OfflineMsgEngine from other components 2019-05-26 15:33:51 -07:00
Mick Sayson
d934cf372b feat(offlinemsg): Force offline messages to always be enabled 2019-05-26 08:45:42 -07:00
Anthony Bilinski
74828c92e5
fix(settings): apply toxcore settings for encrypted profiles
Fix #5682
2019-05-24 14:37:45 -07:00
Monsterovich
1c02dc2d6b fix(ui): fix 2 2019-05-23 19:49:42 +02:00
Monsterovich
161a773dbb fix(ui): minor fix 2019-05-23 19:42:09 +02:00
Monsterovich
f8b54b39f3 fix(ui): apply requested changes 2019-05-23 15:30:31 +02:00
Monsterovich
84e41303ce fix(ui): don't forget to update UI 2019-05-23 01:42:20 +02:00
Monsterovich
4a6ebff63a fix(ui): minor fix 2019-05-23 00:50:04 +02:00
Monsterovich
3b305dd05a fix(ui): Added option to hide message sender and contents 2019-05-23 00:44:26 +02:00
Monsterovich
1bbe210c25 fix(ui): Improved notifications 2019-05-22 19:48:23 +02:00
sudden6
22362d2940
refactor(audio): Remove Audio singleton
This commit finally removes the Audio singleton and allocates the audio
backend in main.cpp.
2019-05-21 21:05:27 +02:00
Anthony Bilinski
17048c9cc4
feat(ui): add event icons for all statuses
Before we would alternate between status icon and online event icon.
Now each status has its own event version, so status doesn't appear to
alternate between online and the correct status.
2019-05-20 15:45:48 -07:00
Anthony Bilinski
c8b156b3a1
feat(settings): save friend list sorting mode 2019-05-17 10:33:47 -07:00
Anthony Bilinski
08a646e456
refactor(friendlist): deduplicate time category widget logic 2019-05-17 09:09:51 -07:00
Anthony Bilinski
d55332ee0a
fix(activity): change last activity time from QDate to QDateTime
* Allows for strict sorting based on last activity in the future
2019-05-17 09:09:51 -07:00
Anthony Bilinski
ca397aebbf
fix(chatlog): update timestamp when db is slower than ack
* cannot invoke non-slot function
2019-05-17 03:42:01 -07:00
Anthony Bilinski
5f40ed8d8c
fix(friendlist): don't update friend's last activity on every start
Fix #5035
2019-05-16 22:49:49 -07:00
Anthony Bilinski
3f922100af
fix(friendlist): don't skip half of friends when sorting by activity 2019-05-16 17:20:50 -07:00
Anthony Bilinski
316893ace9
test(db): add db schema upgrade test 2019-05-15 13:26:21 -07:00
Anthony Bilinski
87a53fad96
fix(ui): don't duplicate group peer name in tooltip 2019-05-15 12:00:50 -07:00
Anthony Bilinski
b7bd7c6215
refactor(group): move peer tracking logic to Group from GroupChatForm
* increase signal granularity
* reduce state in GroupChatForm
* remove differentiation of "joined" and "online" peers, it doesn't exist in toxcore and can't be tracked reliably in qTox
* add system message when peer name changes, even if due to alias
* add system message when self name changes, for clarity
2019-05-15 12:00:44 -07:00
Anthony Bilinski
ef554496fa
refactor(group): rename class members 2019-05-15 11:54:10 -07:00
Anthony Bilinski
04f1ccda35
fix(group): treat empty peer names like empty friend names, by showing pk
Fix #5660
2019-05-15 11:52:27 -07:00
Anthony Bilinski
08839b7052
refactor(group): remove redundant updatePeer API 2019-05-15 00:13:55 -07:00
Anthony Bilinski
6801298e96
fix(groups): don't add friend alias to groups they aren't in
Fix #5657
2019-05-13 23:58:24 -07:00
Anthony Bilinski
6522988e8c
fix(corefile): cancel file transfer when peer goes offline 2019-05-09 21:42:47 -07:00
Anthony Bilinski
1628d495d1
fix(corefile): handle empty avatar transfer in core 2019-05-09 14:43:30 -07:00
Anthony Bilinski
b1eefc3f23
fix(corefile): include file id in map when sending empty avatar 2019-05-09 14:43:29 -07:00
sudden6
cef773c4f6
fix(AVForm): don't load gain when device not ready
This fixes a problem when the audio backend is not yet ready, but we try
to access it's volume.
2019-05-09 12:39:50 +02:00
Anthony Bilinski
c12605db6d
fix(history): create file_transfers table in upgrade
* bug introduced in refactor 329172321d
2019-05-09 00:19:46 -07:00
Anthony Bilinski
e9f8795197
fix(ui): show empty status as placeholder instead of as status 2019-05-07 14:34:08 -07:00
Anthony Bilinski
329172321d
refactor(history): create db as part of schema upgrade
* update user_version as part of transaction, so that we rollback if update fails and don't increment version
* differentiate between two user_version 0 versions, to avoid the SQL error on new profile creation
* make table creation dependent on user_version, instead of creating tables if not exists every start
2019-05-05 14:52:32 -07:00
sudden6
e7e35642d7
refactor(audio): introduce IAudioSource interface and use it 2019-05-05 12:49:56 +02:00
Anthony Bilinski
2ccb1ec150
fix(history): save name to history for friend invite message
This avoids an extra alias table entry for the empty name. It is not possible to safely heal existing databases, since friend invite message is a normal action message making it hard to change the alias ID used by it, and the alias in the alias table could be used by any other messages if the user's name has ever truely been blank. Just avoid the incorrect alias entry for new chats.
2019-05-01 02:35:32 -07:00
sudden6
a8546fe8cb
refactor: use smart pointer instead of raw pointer 2019-04-26 16:26:57 +02:00
sudden6
47402fae90
refactor: run formatting script 2019-04-25 21:30:19 +02:00
sudden6
5b908184fc
refactor(audio): move audio output to new IAudioSink interface 2019-04-25 21:30:19 +02:00
sudden6
c61fcd1f2b
refactor(audio): create interface for audio sinks and sources 2019-04-25 21:30:19 +02:00
Anthony Bilinski
881aa3083a
fix(status): use enum as UI property instead of untranslated string
Translation of getStatusTitle introduced in 15d72a9610, breaking asset path from string.
2019-04-24 10:35:17 -07:00
Anthony Bilinski
e1876a2691
refactor(status): remove Status::getFromString and Status::getIconPixmap
getFromString is unused and incompatible with translated UI names, getIconPixmap is unused and completely generic.
2019-04-24 10:35:16 -07:00
Anthony Bilinski
dd007877a9
refactor(status): move Status out of Widget 2019-04-24 10:35:15 -07:00
Anthony Bilinski
e1f7edd298
chore(i18n): add pt_BR translation 2019-04-24 09:01:32 -07:00
Anthony Bilinski
0dc46cdc81
fix(ui): fix typo, add plural to translation 2019-04-21 20:06:34 -07:00
Diadlo
15d72a9610
fix: Call 'tr' in place, where text is accessible 2019-04-21 14:42:44 +03:00
sudden6
8e13d96aa6
Merge pull request #5627
TriKriSta (2):
      style: edit styles
      style: edit style for QSplitter
2019-04-20 23:31:03 +02:00
TriKriSta
504b9b2014 style: edit style for QSplitter 2019-04-19 02:04:41 +03:00
TriKriSta
00aac5f152 style: edit styles
add custom themes in AboutFriendForm
edit style for QSpinBox disable
edit palette color for dark theme and etc
2019-04-17 20:31:42 +03:00
Anthony Bilinski
c0fdc42e33
refactor(mime): store ToxPk and GroupId as mimedata 2019-04-16 00:51:35 -07:00
Anthony Bilinski
f7603c294b
refactor(id): use toxPk and groupId instead of core numbers
Allows creating classes for blocked friends which have toxPks but no
core number.
2019-04-16 00:44:16 -07:00
Anthony Bilinski
ec500b6673
refactor(status): add Blocked status, deduplicate status parsing
Blocked status will represent friends who are removed from Toxcore, but who still exist in UI and can be readded to Toxcore at a future time using their public key. Blocked friends are similar to offline friends, but have a different status icon and will be seperated in the friends list.
2019-04-14 13:35:46 -07:00
Anthony Bilinski
0f5ad725d7
fix(groups): fix assert on group invite accept 2019-04-14 05:01:00 -07:00
Anthony Bilinski
df62463e27
fix(widget): fix freeze on showMainGui
Don't use copied uninitialized shadowing Core* in Widget
2019-04-13 20:04:24 -07:00
Anthony Bilinski
97d05f9d67
refactor(id): make ContactId interface, implement GroupId
Precursor for group history, friend blocking
2019-04-13 12:58:25 -07:00
sudden6
229ca307cf
refactor: remove unused functions detected by cppcheck
Note: Some more functions were detected, but this are the ones I'm
pretty sure we don't need.
2019-04-13 11:48:16 +02:00
sudden6
0da72e22d3
refactor: remove dead code 2019-04-13 11:48:12 +02:00
Anthony Bilinski
9b6019390b
refactor(groups): create Group on group join, assert Group exists on callbacks 2019-04-12 09:13:14 -07:00
Anthony Bilinski
63ef6e3ff4
Merge pull request #5613
TriKriSta (1):
      feat: add border for qrcode
2019-04-12 01:49:09 -07:00
TriKriSta
191f89ffa4 feat: add border for qrcode 2019-04-10 23:26:48 +03:00
sudden6
a4ad8c71b8
refactor(core): make CoreFile its own independent class
This paves the way for better testability of Core as well as CoreFile.
2019-04-10 10:28:13 +02:00
sudden6
f03262e98b
refactor(core): remove duplicate code and checks 2019-04-10 10:28:13 +02:00
sudden6
b033b5095b
refactor(core): use mutable keyword instead of smart pointer 2019-04-10 10:28:13 +02:00
sudden6
66f72ee863
refactor(core): remove unused function
This function would always return true for any non destroyed Core
object.
2019-04-10 10:28:12 +02:00
sudden6
93a7fdfe03
refactor(core): cleanup Core public functions 2019-04-10 10:28:09 +02:00
Anthony Bilinski
216766061c
refactor(avatar): split up setAvatar function
Don't convert to QPixMap before saving. Allow for use of file without re-encoding once metadata stripping is available for PNGs.
2019-04-08 23:45:47 -07:00
Anthony Bilinski
dfec934ff0
fix(alias): allow clearing alias from chatformheader
Now has the same logic as FriendWidget. Before clearing the field would result in no change being made, instead of clearing the alias.
2019-04-08 04:42:14 -07:00
TriKriSta
db962690bd style: edit styles for myltiple windows 2019-03-31 19:54:12 +03:00
TriKriSta
d1715500f7 style: use css files for toxId 2019-03-31 17:57:17 +03:00
Anthony Bilinski
bef9d4b773
fix(settings): load personal settings before constructing core
Fix proxy settings not being passed to toxcore, bug present since
8574162949. Not present in any releases.
2019-03-30 02:40:51 -07:00
Anthony Bilinski
e7f523bc9a
refactor(messages): don't use receipt 0 as unsent, simplify class state 2019-03-26 19:28:29 -07:00
Anthony Bilinski
477950737f
fix(UI): update peer label's style after setting audio playing property 2019-03-24 17:41:28 -07:00
Anthony Bilinski
7f802f593e
fix(ui): update UI when leaving group call due to being last member 2019-03-24 17:39:55 -07:00
Anthony Bilinski
ca02dcefaa
Merge pull request #5584
TriKriSta (2):
      style: edit colors for transfer widget
      refactor: delete unused files
2019-03-24 15:14:51 -07:00
sudden6
cd50376c2f
fix(notification): implement review comments 2019-03-24 11:58:10 +01:00
sudden6
4cb00957f3
feat(notify): integrate desktop notifications into settings 2019-03-24 11:58:10 +01:00
sudden6
66e2c01029
feat(notify): add desktop notifications using snorenotify
This commit adds very basic support for desktop notifications on friend
request, group invites, friend messages and group messages.
2019-03-24 11:58:09 +01:00
TriKriSta
5ed1065230 style: edit colors for transfer widget 2019-03-23 14:58:44 +02:00
Anthony Bilinski
18b52ce568
fix: register RowId meta type for use in fileInserted signal 2019-03-21 14:00:59 -07:00
sudden6
b7b9b58d42
refactor: make ToxCall non-moveable
We don't need move functionality and the code for it is complex and
error prone.
2019-03-17 19:32:34 +01:00
Anthony Bilinski
e489168775
fix(groups): add peers if already playing audio when netcam created 2019-03-08 09:08:29 -08:00
Anthony Bilinski
7c13b8b7db
fix(groups): don't add peers to netcam view until they play audio
Fix #5536
2019-03-08 09:08:29 -08:00
sudden6
86415cb71c
Merge pull request #5564
TriKriSta (1):
      refactor: edit styles
2019-03-07 11:20:09 +01:00
sudden6
80f5cb5f7a
fix(audio): input device not closed under certain circumstances
fixes #3625

Input device was not closed after the following steps:
- Select "Disabled" for audio source
- Switch away from A/V settings
- Switch back to A/V settings
- Switch to some audio input device
- Switch away from A/V settings
-> audio input device still open, but unused
2019-03-04 23:20:36 +01:00
TriKriSta
f64bb48a92 refactor: edit styles
edit typing color and image,
move colors for background selected text and background searched text
in palette files
2019-03-02 01:58:58 +02:00
sudden6
acef759a58
feat: remove old boostrap nodes code
This commit replaces the bootstrap node list in the qtox.ini file with
the boostrapnodeupdater class.
2019-03-01 10:39:24 +01:00
sudden6
1f2bdf3a1b
feat: load bootstrap nodes directly from JSON
This allows us to easily update the list of bootstrap nodes.
2019-03-01 10:39:24 +01:00
sudden6
d6d433c617
Merge pull request #5558
TriKriSta (8):
      style: add dark style
      refactor: move palette colors in ini files
      feat: edit reload themes
      refactor: rename palette colors
      style: edit styles
      feat: add color for links in palette
      refactor: edit variables for themes
      fix: initialization theme
2019-02-26 18:20:28 +01:00
TriKriSta
d517c3a638 fix: initialization theme 2019-02-24 23:26:10 +02:00
TriKriSta
827e3b734c refactor: edit variables for themes 2019-02-24 16:22:59 +02:00
sudden6
4fe6addb04
Merge pull request #5532
TriKriSta (1):
      feat: show date in chat log
2019-02-24 11:59:14 +01:00
TriKriSta
d35dbcc870 feat: add color for links in palette 2019-02-23 19:40:59 +02:00
TriKriSta
9a82d8144f style: edit styles 2019-02-23 19:00:50 +02:00
TriKriSta
c6142e4287 refactor: rename palette colors 2019-02-22 18:01:43 +02:00
TriKriSta
e146c11f0f feat: edit reload themes 2019-02-21 15:53:31 +02:00
TriKriSta
5bc27b08bc refactor: move palette colors in ini files 2019-02-20 15:42:53 +02:00
sudden6
4e76084c6f
fix(ui): add tooltip to about friend window
This is to explain what the public key can be used for and that it's not
a ToxID.
2019-02-19 22:44:57 +01:00
TriKriSta
87d6883a0f style: add dark style 2019-02-19 16:21:44 +02:00
Ivan Sorokin
ea18b613ba
fix: fix uninitialized variable
undefined behavior sanitizer complained about uninitialized variable:
src/widget/form/chatform.cpp:781:9: runtime error: load of value 190, which is not a valid value for type 'bool'
2019-02-15 11:51:50 +01:00
Anthony Bilinski
d2508e7eac
fix(groups): check for label in timer audio playing timer callback
If peer quits the group and they were just playing audio, their label will be removed but their timer will still be running. Unguarded update of label causes segfault.

Fix #5511
2019-01-29 11:20:15 -08:00
Anthony Bilinski
13afbf7ec6
fix(groups): avoid having to lookup peer pk
Caused race where peer plays audio, then is removed from group, then we
process audio played signal and lookup their peerId in core where it
doesn't exist. Now Group will effectively contain the peer until the
peer list changed slot is processed.

Partial fix for #5511
2019-01-29 08:30:39 -08:00
TriKriSta
d0e8ba8b9c feat: show date in chat log 2019-01-28 21:15:52 +02:00
Anthony Bilinski
edf6b67313
refactor(core): strong type message receipt and row ID
Avoid implicit casting and invalid arithmetic.
2019-01-28 10:58:54 -08:00
Anthony Bilinski
8422c09f6a
fix(groups): don't invalidate all audio sources when peer list changes
Fix #5508
2019-01-27 23:13:11 -08:00
Anthony Bilinski
093962e3ec
fix(groups): don't freeze when opening AV settings during group call
Fix #5510
2019-01-27 17:55:24 -08:00
Anthony Bilinski
d6abf76a27
fix(groups): correctly show peers in the call after joining call
Fix #5506
2019-01-27 17:05:31 -08:00
Anthony Bilinski
ec07fd7291
feat(groups): show who is in a group call before joining
Fix #5507
2019-01-27 15:57:38 -08:00
Anthony Bilinski
5289c99962
feat(core): add send message error handling
remove unused sendMessageResult signal
2019-01-27 04:52:36 -08:00
sudden6
5afa78cd4d
refactor(ipc): cleanup and improve debug messages 2019-01-25 11:16:06 +01:00
sudden6
49507d76d8
Merge pull request #5500
crypto-universe (1):
      feat(chatfom): make magnet links clickable
2019-01-18 09:54:50 +01:00
crypto-universe
5b1bc7e523 feat(chatfom): make magnet links clickable
Add one more rergular expression that should match magnet links.
Unfortunately, magnet links may contain a lot of spaces, so
the message after the link may also be treated as a part of link.
2019-01-17 20:00:34 +01:00
sudden6
f5aa07f569
Merge pull request #5499
Teemu Ikonen (1):
      fix(ui): provide context when emitting friendWidgetRenamed()
2019-01-16 23:59:32 +01:00
sudden6
0f90abebdd
perf(smileys): create global regex object
This prevents recompiling the regex for every message
2019-01-16 15:53:33 +01:00
sudden6
58f8a14a48
perf(smileys): use one big regex instead of constructing many small ones 2019-01-16 15:53:23 +01:00
Teemu Ikonen
0b6d6d7715 fix(ui): provide context when emitting friendWidgetRenamed()
Qt5 documentation at http://doc.qt.io/qt-5/signalsandslots.html
explains:

"[...] we provide /this/ as context in the call to connect(). The
context object provides information about in which thread the receiver
should be executed. This is important, as providing the context ensures
that the receiver is executed in the context thread."

Fixes #5495.
2019-01-16 08:45:16 +02:00
Teemu Ikonen
4c42e0ea5b fix(video): support UYVY camera pixel format
Fixes #5479.
2019-01-15 13:36:09 +02:00
Anthony Bilinski
55ef1e0370
Merge pull request #5489
Teemu Ikonen (1):
      fix(ui): tighten idealSize() for chatlog Timestamps
2019-01-13 18:01:35 -08:00
sudden6
08f368da43
fix(widget): always force show window on activate event
fixes #5459
2019-01-13 23:59:34 +01:00
Teemu Ikonen
c9f3830bc2 fix(ui): tighten idealSize() for chatlog Timestamps
Make Text::idealSize() a virtual function and override it in the derived
class Timestamp. The idealSize() function for Timestamps now returns a
tighter size to enable better right-alignment of the timestamps in
chatlog.

Fixes #3957. Note that this change assumes that timestamps do not
contain RTL text.
2019-01-14 00:07:18 +02:00
Anthony Bilinski
92d3c959a1
fix(groups): only leave audio call if in a call
Removes debug log spam of leaving audio call every time someone joins a
text group.
2019-01-09 01:23:27 -08:00
Anthony Bilinski
51cf712a78
refactor(widget): call Settings::getInstance only once in Widget 2019-01-08 09:03:19 -08:00
Anthony Bilinski
8bf059bb2e
chore(ui): remove broken auto update
No need to keep it ifdef'd out in code, it can be re-added from git history instead once fixed.
2019-01-08 09:03:12 -08:00
Anthony Bilinski
6c9d7b59c1
feat(ui): add update notification enabled with -DUPDATE_CHECK
Fix #5335
2019-01-08 09:02:17 -08:00
Monsterovich
72bcc6acaf fix(core): if your username is empty, use toxPK instead in groups 2019-01-05 23:21:39 +02:00
Monsterovich
066bdc5cc1 fix(core): also print PKs in group userlist 2019-01-05 15:58:59 +02:00
Monsterovich
ee500703aa fix(core): this should resolve message handling in persistent groups 2019-01-05 15:50:06 +02:00
sudden6
aa83edf759
Merge pull request #5469
Monsterovich (10):
      feat(core): print a chat log entry when a user joins/leaves the group chat
      fix(core): fixed Timestamps
      fix(core): simplify the code
      fix(core): fix formatting
      fix(core): this fixes displaying nickname refreshes in groups
      fix(core): support user aliases
      fix(core): update group peerLists on local changes
      fix(core): fix for users without nicknames
      fix(core): ignore mentioning users with empty nicknames
      fix(core): fixed syntax
2019-01-04 14:56:55 +01:00
Monsterovich
7a437c7449 fix(core): fixed syntax 2018-12-27 12:48:04 +02:00
Diadlo
68bf26305c
style: Fix EOF, remove trailing space and add braces 2018-12-27 09:15:24 +03:00
Diadlo
3f5105d5c1
refactor: Connect ContentDialog::setStatusMessage to friend directly 2018-12-27 09:15:24 +03:00
Diadlo
52f8ba48c4
refactor: Remove using Manager from ContentDialog 2018-12-27 09:15:24 +03:00
Diadlo
65a5b5121d
refactor: Remove ContactInfo and it's usage 2018-12-27 09:15:24 +03:00
Diadlo
c11b3730c9
refactor: Rewrite isWidgetActive 2018-12-27 09:15:24 +03:00
Diadlo
4353468647
refactor: Rewrite update status message 2018-12-27 09:15:24 +03:00
Diadlo
8937f87f87
refactor: Rewrite update status 2018-12-27 09:15:24 +03:00
Diadlo
bb08d628fb
refactor: Rewrite getDialog 2018-12-27 09:15:24 +03:00
Diadlo
9129f256fa
refactor: Rewrite widget exists check 2018-12-27 09:15:24 +03:00
Diadlo
b806f9e7e3
refactor: Rewrite focus{Friend,Group} 2018-12-27 09:15:24 +03:00
Diadlo
2b3918b25e
refactor: Remove using of remove{Friend,Group} 2018-12-27 09:15:24 +03:00
Diadlo
ee5a7d8e94
refactor: Move some methods back to ContentDialog
Store in ContentDialog list of widgets and list of ContentDialogs in
ContentDialogManger
2018-12-27 09:15:24 +03:00
Diadlo
7ad8607c43
refactor: Create ContentDialogManager
Move all static methods from ContentDialog to ContentDialogManger. Make
if singletone for the first time. Also move some methods to avoid
compile errors.
2018-12-27 09:15:24 +03:00
Diadlo
a446d9b197
refactor: Remove ContentDialog::openNewDialog
It duplicates logic on Widget::openNewDialog
2018-12-27 09:15:24 +03:00
sudden6
e1d912bbeb
Merge pull request #5472
Diadlo (1):
      fix: Store groupId in D&D mime data
2018-12-26 23:37:35 +01:00
Monsterovich
96ad27f644 fix(core): ignore mentioning users with empty nicknames 2018-12-26 19:51:32 +02:00
Monsterovich
2000bf55f2 fix(core): fix for users without nicknames 2018-12-26 19:15:43 +02:00
Monsterovich
01f79b0d08 fix(core): update group peerLists on local changes 2018-12-26 19:15:37 +02:00
Monsterovich
feee0e767f fix(core): support user aliases 2018-12-26 19:15:30 +02:00
Monsterovich
9b261fd870 fix(core): this fixes displaying nickname refreshes in groups 2018-12-26 19:15:00 +02:00
Monsterovich
c136a17ff0 fix(core): fix formatting 2018-12-26 19:15:23 +02:00
Monsterovich
8c239c8ef6 fix(core): simplify the code 2018-12-26 19:15:17 +02:00
Monsterovich
6872ead850 fix(core): fixed Timestamps 2018-12-26 19:15:10 +02:00
Monsterovich
cabed6def3 feat(core): print a chat log entry when a user joins/leaves the group chat 2018-12-26 19:15:00 +02:00
Diadlo
8499a71092
fix: Store groupId in D&D mime data
Fix drag and drop for groups
2018-12-26 14:29:38 +03:00
TriKriSta
c3095ab150 fix: check valid date in getDateWhereFindPhrase 2018-12-22 00:36:38 +02:00
sudden6
ea9f429838
Merge pull request #5457
TriKriSta (4):
      refactor: edit default theme
      refactor: add colors to QTabBar
      refactor: rename a css file.
      style: add spaces in the resources file
2018-12-17 11:27:08 +01:00
Anthony Bilinski
f2e8567b21
Merge pull request #5366
Mick Sayson (2):
      fix(transfer): Accurately represent pause state in UI
      refactor(transfer): Remove unnecessary split for pause send/recv
2018-12-16 14:51:02 -08:00
Mick Sayson
3615425234 refactor(transfer): Remove unnecessary split for pause send/recv 2018-12-16 13:51:04 -08:00
Mick Sayson
293a1d615c fix(transfer): Accurately represent pause state in UI
Toxcore has a 3 state pause, us, them, or both. Currently our UI
messes up if both parties pause. This changeset changes our UI behavior
to show whether we're paused, or if we are waiting on the remote to
unpause.
2018-12-16 13:51:03 -08:00
TriKriSta
147cec3312 refactor: rename a css file. 2018-12-15 13:33:51 +02:00
Anthony Bilinski
8db744a505
feat(core): set group title for loaded groups
Replace double static_cast of pointer with reinterpret_cast.
reinterpret_cast in unsafe because the underlying data may be
meaningless in the new type, static cast to void then to a new pointer
type has exactly the same problem. This is our intention here.
2018-12-14 09:19:50 -08:00
Anthony Bilinski
cbf2a1801f
Merge pull request #5354
Anthony Bilinski (2):
      feat(db): add file hash to file history
      refactor(files): change ToxFile's fileName to QString

Mick Sayson (5):
      refactor(files): Refactor FileTransferWidget
      feat(db): Support schema version upgrades
      feat(db): Database support for file history
      feat(db): Hookup file history to the rest of the system
      feat(db): File transfer history review comments
2018-12-14 08:34:53 -08:00
Anthony Bilinski
84362244da
refactor(files): change ToxFile's fileName to QString 2018-12-14 00:33:27 -08:00
Anthony Bilinski
c8ffa1f921
fix(settings): repair saved invalid proxy type due to #5311 2018-12-09 15:10:21 -08:00
TriKriSta
61720c1591 refactor: edit default theme 2018-12-09 18:38:14 +02:00
Anthony Bilinski
e80dbe2d83
fix(db): use SQLCipher 3.x crypto even with SQLCipher 4.x
Fix #5451
2018-12-08 11:30:49 -08:00
Mick Sayson
25005c5c19 feat(db): File transfer history review comments 2018-12-05 21:15:14 -08:00
sudden6
2ff649e80d
Merge pull request #5449
yangfl (1):
      chore(cmake): let CMake choose which platform dependent code to compile
2018-12-04 18:38:58 +01:00
yangfl
6d0885f396 chore(cmake): let CMake choose which platform dependent code to compile
Macros can be hard to manipulate and vary among different compilers and
platforms. For example, GNU Hurd has `__MACH__` defined but not
`__APPLE__`.

Let CMake choose them during configuration.
2018-12-03 16:06:33 +08:00
Anthony Bilinski
8427be6678 feat(db): add file hash to file history
Not currently used, but there are plans to display if a transfered file
has been modified, which the file hash will be needed for. Adding file
hash at the same time as file history also saves a db schema update.
2018-12-02 14:40:54 -08:00
Mick Sayson
d9b39b3102 feat(db): Hookup file history to the rest of the system 2018-12-02 14:40:53 -08:00
Mick Sayson
567ddfb203 feat(db): Database support for file history 2018-12-02 14:35:18 -08:00
Mick Sayson
fb805b9cdb feat(db): Support schema version upgrades 2018-12-02 14:35:04 -08:00
Mick Sayson
157be30b11 refactor(files): Refactor FileTransferWidget
Rational here is that the current FileTransferWidget is quite
entangled with core logic. If we are going to instantiate the
FileTransferWidget without an active file transfer the widget needs to
behave sanely without getting messages from toxcore. This changeset is
an attempt to allow us to move from any FileTransferWidget state to any
other state without having to go through the appropriate state
transitions.
2018-12-02 14:35:04 -08:00
sudden6
f188409b8c
fix(autocomplete): don't auto-complete own nick
In the process also remove the dependency of the auto completer on Core.
2018-11-22 17:52:54 +01:00
sudden6
a82eb6f36e
feat(core): prepare qTox for groupchat saving
This change creates groups on startup of Core. We need this once
https://github.com/TokTok/c-toxcore/pull/1156 is merged to load existing
groups.
2018-11-22 08:11:18 +01:00
sudden6
c3363a1fea
feat: add class to retrieve bootstrap nodes from nodes.tox.chat
This is not yet hooked up to be actually used.
2018-11-19 16:52:02 +01:00
sudden6
562ef28ab0
refactor(friend): remove Core dependency 2018-11-15 10:33:37 +01:00
sudden6
6cce0dae83
fix(toxoptions): handle nullptr in parameters
Use the c-toxcore default settings in case we don't have own settings.
2018-11-14 15:06:43 +01:00
sudden6
c6a197feca
refactor: re-format and cleanup 2018-11-14 13:58:24 +01:00
sudden6
0ea409054a
fix(paths): fix bugs uncovered while developing test cases
There was one directory separator too much in the path. Also improved
the documentation.
2018-11-14 11:02:21 +01:00
sudden6
3ee8c665df
feat(paths): create class to combine all qTox managed paths
This will be the central location for all of qTox managed directories.
2018-11-14 11:02:17 +01:00
Anthony Bilinski
e1201f901f
chore(core): improve failed decryption error handling 2018-11-05 10:59:50 -08:00
sudden6
5c1fe52010
fix(video): correctly align data passed to toxcore
fixes #5402

c-toxcore requires each plane to be aligned at 1 byte boundaries.
Because of this bug we alligned it at 32 byte boundaries if the height
and width were a multiple of 8.
2018-11-03 15:14:15 +01:00
sudden6
9ecb6da051
Merge pull request #5415
Patrick (1):
      fix:(chatform): Issue 5115, use QSharedPointer for groupChatForms
2018-11-02 00:50:44 +01:00
sudden6
d93648c225
refactor: remove unneccessary Nexus includes 2018-11-01 10:22:36 +01:00
sudden6
acc7058e65
refactor: remove another function from Nexus 2018-11-01 10:22:20 +01:00
sudden6
de773efec7
refactor: remove another function from Nexus 2018-10-31 01:59:22 +01:00
sudden6
6097c3f94f
refactor: remove Nexus::quit() and replace with qApp->quit()
They are doing the same.
2018-10-31 01:51:20 +01:00
sudden6
a3344a127f
refactor: remove unneeded busy waiting code 2018-10-31 01:47:45 +01:00
sudden6
bc3d3b3b13
fix(main): register IPC handlers only after starting up 2018-10-31 01:46:33 +01:00
Patrick
37e5b6ce8b
fix:(chatform): Issue 5115, use QSharedPointer for groupChatForms 2018-10-31 00:02:19 +01:00
sudden6
a1a50b4bed
Merge pull request #5413
Mick Sayson (2):
      refactor(settings): Consolidate friendProp insert logic
      fix(settings): Add mutex locks for consistency
2018-10-29 23:05:40 +01:00
sudden6
eae3074aa7
Merge pull request #5404
Monsterovich (6):
      feat(ui): Added feature to generate colors for user names in tox groups
      fix(ui): groupcolors fix1
      fix(ui): groupcolors fix2
      fix(ui): fix anything
      fix(ui): oops
      fix(ui): remove useless variable
2018-10-29 00:04:16 +01:00
Mick Sayson
24f8bbf35a fix(settings): Add mutex locks for consistency
* Risk is low here since we use a recusrive mutex
2018-10-28 14:39:52 -07:00
Mick Sayson
4af88a3775 refactor(settings): Consolidate friendProp insert logic 2018-10-28 14:39:52 -07:00
sudden6
d776e6c34f
fix: fix memory leak in CoreAV and missuse of std::uniqe_ptr 2018-10-25 08:06:31 +02:00
sudden6
7fa2dfead5
refactor(coreav): move CoreAV to the factory pattern too
- clean up error handling during construction of the Core
- prevent leaks by using unique_ptr
2018-10-25 08:06:19 +02:00
sudden6
2ab081b4a9
refactor: remove support for c-toxcore < 0.2.0
This code is only a maintainance burden and not used anymore.
2018-10-25 07:48:21 +02:00
Monsterovich
2557f5e045 fix(ui): remove useless variable 2018-10-25 02:44:11 +02:00
Monsterovich
d54e21064c fix(ui): oops 2018-10-25 02:38:43 +02:00
Monsterovich
89cb24254d fix(ui): fix anything 2018-10-25 02:38:43 +02:00
Monsterovich
a4a8e361d0 fix(ui): groupcolors fix2 2018-10-25 02:38:43 +02:00
Monsterovich
ab89ca2d8e fix(ui): groupcolors fix1 2018-10-25 02:38:43 +02:00
Monsterovich
aaf5229ece feat(ui): Added feature to generate colors for user names in tox groups 2018-10-25 02:38:43 +02:00
Anthony Bilinski
dec90ad84d
fix(ui): allow adding friends with Tox URI
Fix #5385
2018-10-24 13:22:54 -07:00
sudden6
cc4a6e421e
refactor(chatform): remove unused macro 2018-10-24 14:04:12 +02:00
sudden6
133ac8def8
feat(themes): make themes follow standard paths 2018-10-24 14:04:12 +02:00
sudden6
5033fc3f5d
refactor: remove unused includes and don't set Tox as organization
Having "Tox" as Organization results in all standard paths being "Tox/
qTox" instead of "qTox". Since there is no such thing as "Tox"
organization I removed it.
2018-10-24 14:04:12 +02:00
Jimi Huotari
71d1fa6f24
refactor(themes): load css and images from themes folder
Original work by tox-user.

The default theme is now placed in a different path:
- C:\users\%username%\AppData\roaming\qtox\themes - for Windows
- ~/Library/Application Support/qtox/themes - for MacOS
- ~/.config/qtox/themes - for other Unix systems including GNU/Linux

Thanks to that it's no longer required to recompile the program to modify
the theme.

In addition to that the default theme is also included as a resource. If
the theme folder or some file inside it is missing, qTox will load it
from resource.
2018-10-24 14:04:03 +02:00
sudden6
10a4b249bb
fix(core): remove pgc code
This code was needed for the pgc implementation, but is not needed for
minipgc
2018-10-24 13:27:16 +02:00
sudden6
2408e76d0c
refactor: remove unused includes and format code 2018-10-16 23:35:36 +02:00
Anthony Bilinski
13b15a87d7
fix(ui): require . in www.url regex matching 2018-10-13 12:40:15 -07:00
Anthony Bilinski
109a4ffd43
fix(core): set username and status on new profile
Fix #5369
2018-10-13 11:11:13 -07:00
Anthony Bilinski
aa7542f729
fix(ui): re-sort friends list on friend rename
Fix #5387
2018-10-12 16:48:26 -07:00
Anthony Bilinski
2ecfbf7f28
Merge pull request #5373
Mick Sayson (2):
      refactor(files): clang-format generated whitespace changes
      feat(files): Add maximum size to autoaccept downloads
2018-10-12 14:28:11 -07:00
Mick Sayson
c8716e9c45 feat(files): Add maximum size to autoaccept downloads 2018-10-12 11:12:20 -07:00
Mick Sayson
939f2c865a refactor(files): clang-format generated whitespace changes 2018-10-12 11:12:20 -07:00
Anthony Bilinski
5f48fd4e10
fix(ui): only add chat message for call once
Fix #5370
2018-10-12 10:52:43 -07:00
sudden6
26206a35eb
fix(core): ensure QTimers are moved with the objects they belong to
We use the Qt parent/child model instead of unique_ptr to achieve this.
2018-10-07 20:12:33 +02:00
sudden6
48e722b535
Merge pull request #5355
sudden6 (2):
      fix(video): workaround for webcams that provide no fps value
      fix(video): don't pass invalid pixel format strings to ffmpeg
2018-10-05 08:38:21 +02:00
Jakie.OYMJ
e6d40be72e fix: add remove history prompt, clear log area after remove 2018-10-05 10:24:39 +08:00
TriKriSta
8808c630f2 fix: show the date every new day (fixes #5280) 2018-09-30 00:07:17 +03:00
sudden6
9de40e5a97
fix(video): don't pass invalid pixel format strings to ffmpeg 2018-09-29 18:43:48 +02:00
sudden6
3746bd13bc
fix(video): workaround for webcams that provide no fps value
fixes #5082
2018-09-29 18:42:31 +02:00
sudden6
39dc6dacb8
Merge pull request #5352
Mick Sayson (1):
      fix(core): Fix misuse of toxcore tox_file_send API
2018-09-24 18:06:51 +02:00
sudden6
a139a9933b
refactor(core): cleanup thread and timer destruction in Core and CoreAV 2018-09-24 16:57:53 +02:00
Mick Sayson
f988177a9b fix(core): Fix misuse of toxcore tox_file_send API 2018-09-23 20:51:34 -07:00
sudden6
5d65ab3876
fix(audio): specify format for sounds and make sounds follow it
This should reduce the problem that some sounds are very silent and some are loud.
2018-09-20 17:15:44 +02:00
Anthony Bilinski
064dccf8b4
fix(ui): avatar highlight on hover in profile 2018-09-17 11:34:34 -07:00
Anthony Bilinski
cc6df2c294
chore(core): use new toxcore enum typenames
Fix #5287
2018-09-17 10:40:07 -07:00
Anthony Bilinski
0c757356d3
fix(avatar): set friend to identicon on empty avatar receipt
*All friend avatar changes and removals go through Profile, so that Profile can manage identicons
*Split the concept of "changed" and "removed" into "changed", "set", and "removed"

Fixes #4724
2018-09-17 02:30:45 -07:00
Anthony Bilinski
91bdd40f10
fix(ui): remove focus window option, fixing alert() on Windows
Fix #4762
2018-09-14 11:08:19 -07:00
Anthony Bilinski
7839a26083
fix(settings): save settings early on Windows shutdown
Need to save before top level window is closed.

Fix #1969
2018-09-14 10:26:23 -07:00
iphydf
52a5951d26
chore: Use nullptr instead of 0 for NULL pointer constants. 2018-09-07 21:38:59 +00:00
Anthony Bilinski
d9e587e4f5
fix(chatform): don't attempt to send messages to offline friends
Stops critical error logs from toxcore.
2018-09-06 14:15:45 -07:00
Anthony Bilinski
dac1582b72
fix(ui): by default, don't grab focus on new message
Fix #5284
2018-09-06 11:47:58 -07:00
Anthony Bilinski
a2c44cbeda
fix(settings): set default proxy type to None, enabling UDP by default
Fix #5311
2018-08-28 20:36:03 -07:00
sudden6
5e9803eb4b
Merge pull request #5307
iphydf (1):
      refactor: Improve toxcore-originated log messages.
2018-08-28 10:01:40 +02:00
iphydf
31f54d4d1c
refactor: Improve toxcore-originated log messages.
This changes ToxLogger to behave as if `qDebug()` were used inside
toxcore itself, i.e. with the correct file/line/func.
2018-08-26 17:22:28 +00:00
Anthony Bilinski
dc7ddbebad
fix(ui): don't scale avatar to point of cropping in chat form header 2018-08-25 23:31:37 -07:00
Anthony Bilinski
11131fa083
fix(ui): Display most recent group member's name instead of <Empty>
Fix #5294
2018-08-22 23:00:20 -07:00
sudden6
8cfc1f0bbb
Merge pull request #5291
Jakie.OYMJ (1):
      fix(ui): fix the context menu enabled/disabled behaviors
2018-08-22 20:45:22 +02:00
TriKriSta
01281e87cb
Merge branch 'master' into search 2018-08-14 01:08:54 +03:00
TriKriSta
b6ab0ec2ca refactor: add SearchDirection 2018-08-14 01:06:28 +03:00
Jakie.OYMJ
bc69c8c919 fix(ui): fix the context menu enabled/disabled behaviors 2018-08-12 20:38:10 +08:00
TriKriSta
4253301c56 feat: add message if text not found 2018-07-28 01:36:07 +03:00
TriKriSta
eb92ce15f1 refactor: change text and icons in search forms 2018-07-27 21:39:14 +03:00
Anthony Bilinski
7c496d425b
chore(review): address remaining review comments from #5098
use QStringBuilder
replace "Not sent" with "Pending"
2018-07-22 21:54:40 -07:00
pkev
ee0d4bb880
fix: correct format log files
- correct format of "save chat log"
 - add date like in chat
 - correct type dialog for export dialog
2018-07-22 21:49:32 -07:00
TriKriSta
81587d0fbb refactor: add code for work in Qt5.5 2018-07-21 01:15:01 +03:00
sudden6
8741834b59
Merge pull request #5260
iphydf (1):
      refactor: Give ChatFormHeader an out-of-line destructor.
2018-07-20 10:19:51 +02:00
sudden6
6b68b4344a
Merge pull request #5259
iphydf (1):
      refactor: Remove unused lambda capture.
2018-07-20 10:19:06 +02:00
iphydf
4fa257bf66
refactor: Give ChatFormHeader an out-of-line destructor.
This makes the class more widely usable, since deallocating an object of
this class no longer needs to have the `CallConfirmWidget` definition
present. The header file forward-declares `CallConfirmWidget`, so it's
not a complete type if only `chatformheader.h` is included.
2018-07-19 21:17:24 +00:00
iphydf
945ed65ba7
refactor: Remove unused lambda capture. 2018-07-19 21:09:07 +00:00
Diadlo
8d10fe47ec
feat(ui): Add ui to setup spell checking 2018-07-19 20:31:57 +02:00
Diadlo
671b9456a8
feat: Add spell checking
Fix #1301

Spell checking implemented by KF5Sonnet
2018-07-19 20:31:52 +02:00
Pavel Karelin
0d54fae37b chore: Fix warnings: remove unused variables 2018-07-18 15:25:07 +03:00
Diadlo
66fe7f2852
refactor(groupwidget): Create GroupChatroom
And move some logic in 'FriendChatroom' from 'onContextMenuCalled'
2018-07-18 01:06:47 +03:00
TriKriSta
7977c80a52 refactor: use Settings, add const 2018-07-15 23:13:57 +03:00
TriKriSta
706822123f refactor: delete sqlite in travis, edit some functions 2018-07-14 00:58:35 +03:00
sudden6
291e86d9f9
fix(ui): don't emit filename change windows for every chat 2018-07-13 09:42:27 +02:00
Diadlo
059d0120be
refactor: Add FriendChatroom (model to FriendWidget) 2018-07-12 15:32:35 +03:00
sudden6
7a98ea2def
fix(logging): only log toxcore messages above TRACE level 2018-07-12 11:35:01 +02:00
sudden6
2e211d4201
Merge pull request #5222
ezavod (1):
      fix(chatform): mark message with triple click
2018-07-10 23:41:34 +02:00
ezavod
2cdff7e9ed
fix(chatform): mark message with triple click
Fixes #5211. Only trigger on triple clicks that are caused by the same
mouse button clicked successively.
2018-07-09 16:33:30 +02:00
TriKriSta
42f5ac67e7 refactor: edit generateFilterWordsOnly 2018-07-08 22:44:21 +03:00