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

1290 Commits

Author SHA1 Message Date
tux3
542cae85d3
Give appropriately scary name to dangerous function
"isPathWritable" didn't convey really well the meaning of "let's try to open it, wipe everything the hell out, and see if it worked"
2015-04-26 17:39:39 +02:00
tux3
8786f9525e
Fix #1536
New friends must be added to the friend list before loading history, otherwise the history code won't find the friend in the friendlist, and the history will have blank names for the friend
2015-04-26 14:40:07 +02:00
tux3
200af0fd49
Better error messages for friend requests 2015-04-25 22:07:40 +02:00
tux3
d962148dd0
Fix more save corruption bugs
askProfiles is a really dangerous function. Awful things happen when the user closes that message box. We now prevent it from being closed in more places
2015-04-25 21:33:15 +02:00
tux3
7eb9370c0b
Disable the GUI until a profile is active
There are small instants on startup and while profile switching during which no profile is loaded but the GUI could still receive events, e.g. between two modal windows. Disable the GUI to prevent that.
2015-04-25 21:05:29 +02:00
tux3
e682dada3b
Fix save corruption bug
Don't just let the user close the profile select box and continue with an empty value. We would create a new profile and save it back on top of the previous encrypted profile
2015-04-25 20:20:53 +02:00
tux3
e74e29e4fb
Cleanly cancel broken file transfers 2015-04-25 19:18:46 +02:00
tux3
cdb2bad7c3
Signal broken file transfers 2015-04-25 17:12:49 +02:00
tux3
c6e60c4c77
Remove some CoreFile debug output 2015-04-25 16:59:29 +02:00
tux3
bd5eebbc2e
Cache avatar sending, fix image file preview
- Add AvatarBroadcaster, in charge of making sure our friends have our avatar without spamming file transfers

- Fix file sending code not closing the file after transfer, which prevented file previews, and make the QFile a shared_ptr to fix the obvious memory leak

Some small additions to Core to support AvatarBroadcaster
2015-04-25 16:51:58 +02:00
tux3
9ece486e22
Prevent possible uninitialized read of status
For unhandled values of Status, we want to return, not continue with an uninitialized value.
2015-04-25 02:28:57 +02:00
tux3
0e65d150e3
Don't show call buttons in text-only groupchats
I'm not sure why there are text-only groupchats in the first place, but that's fixed.
2015-04-25 01:50:35 +02:00
tux3
9d3d17d05e
Avatar sending on top of file transfers 2015-04-25 01:26:52 +02:00
tux3
cdf3d9f553
Change some tabs to space for consistency 2015-04-24 23:05:44 +02:00
tux3
8b6ef7ab9d
Merge branch 'pr1524' into back_in_the_game
Conflicts:
	src/widget/form/groupchatform.cpp
2015-04-24 23:04:11 +02:00
kushagra
0a7c82c2cf Right clicking anywhere wont unhighlight text, fixes #1517 2015-04-24 22:49:22 +02:00
tux3
1c51cd788b
Merge branch 'pr1509' into back_in_the_game 2015-04-24 22:37:01 +02:00
tux3
f8eb90f74d
Merge branch 'pr1498' into back_in_the_game 2015-04-24 22:34:21 +02:00
kushagra
b4f72b620d fixes action bugs
1) action received gets modified on restart
2) sender's name is written twice if action is sent using offline messaging
3) /me is written when action is sent in groupchat having one peer
4) /me is not saved in last message variable in friendd chat
2015-04-24 22:20:52 +02:00
tux3
110a6ca850
Fix typos in tooltips
transmit -> tranfer
2015-04-24 21:51:25 +02:00
PKEv
137d1ae2d5 Add tooltip in filetransferwidget
It is not clear what they are doing buttons
2015-04-24 21:50:05 +02:00
Yuri
11883bab85 Added Ctrl+Q shortcut. 2015-04-24 21:44:48 +02:00
tux3
5662120c51
Show Tox ID instead of blank names 2015-04-24 21:34:24 +02:00
tux3
42d7a7bcef
Assert profile locks before writing
This fixes the potential edge case where a frozen then unfrozen qTox instance could have its locks delete by a new qTox instance.

We now check that we still own our locks, restoring them if we can, before saving
2015-04-24 21:05:19 +02:00
tux3
694933d24b
Correctly rename and lock imported profiles
Imported profiles are legact 'data' and 'tox_save' files
2015-04-24 20:45:26 +02:00
tux3
05b6f1985d
Allow to start multiple instances with -p
Starting a new instance with the -p option will force it to start a new instance with the given profile instead of bringing an eventual existing instance to the foreground

Two instances can not run with the same profiles, the profile locking code will ensure that. A user who likes to live dangerously could manually delete the lock to force two instances on the same profile, but such an hypothetical user would be asking for it.

If a qTox instance starts and becomes owner of the IPC shared memory on its first try, it considers itself the only running freshly-started instance, and deletes any possibly stale lock before starting up. This should be fine in the vast majority of cases, but if an existing qTox instance freezes for a long enough time to lose ownership of the IPC and a new instance is started without first killing the frozen one, the frozen instance's lock will be deleted as stale by the new one. If the frozen instance subsequentely unfreezes, it will be running on a profile for which it doesn't have a lock, which could cause trouble. This is an intentionaly allowed edge case, the alternative being a stale lock staying forever until removed manually. A potential solution not yet implemented would be to check that the lock is still actually present before attempting any write.
2015-04-24 19:43:39 +02:00
tux3
0baba7abe2
qtox.ini shouldn't overwrite our current profile
If we're running on a given profile, reload the qtox.ini, and it has a diffeent value for the current profile, we don't overwrite our current value with whatever qtox.ini says anymore

It would cause current profile confusions when multiple qTox instances where using different instances but sharing the qtox.ini
2015-04-24 19:35:06 +02:00
tux3
ea417d3688
Update lock when renaming profile 2015-04-24 19:19:01 +02:00
tux3
bbf75aefb9
Profile locking 2015-04-24 18:53:19 +02:00
tux3
13d98da1bc
Correctly separate received actions from messages 2015-04-24 15:57:01 +02:00
Zetok Zalbavar
92f3b6a20f Code style improvements 2015-04-24 15:43:57 +02:00
tux3
66314bc38d
Fix nullptr dereference in IPC::isCurrentOwner
It would only trigger when multiple instances where running in parallel,
with one having enough privilege to block the other from accessing the shared memory (e.g. root)
2015-04-24 15:38:34 +02:00
tux3
9dedd22bb2
Port file transfers to the new API
Parallel, extremely large, and other edge case transfers have not been tested, but the common path should work well.
2015-04-24 15:31:30 +02:00
tux3
e4859efe18
Refactor Core
Refactor Core's file transfer callbacks into their CoreFile class and files

Move all core*.{h|cpp} into a core/ folder
2015-04-24 02:32:09 +02:00
tux3
a70721818e
Cleanup old commented-out code 2015-04-24 01:15:09 +02:00
tux3
4fc6632d78
Fix history-destroying use after free in Core::getSaltFromFile
We returned a shallow copy of the delete[]'d salt buffer

As a result the history consistently failed to decrypt and was removed as corrupted. This is now fixed.
2015-04-24 01:10:42 +02:00
tux3
fff2caa0e1
Fix Core::getSaltFromFile's error checking
tox_get_salt now returns a bool, not an int. So any error condition has to be inveted to check for 0 instead of -1.
2015-04-24 01:08:34 +02:00
tux3
e03d80392a
Fix GUI refresh when creating new profile
Previously the username/status, and the combobox in profileForm weren't refreshing themselves
2015-04-23 23:42:50 +02:00
tux3
3bf338e9ff
Fix profile reloading during switch
That'll get rid of the encryption warnings message boxes and per-user settings not reloading when switching between profiles
2015-04-23 23:01:12 +02:00
tux3
5df7d8a06c
Port profile encryption support to new API
Profile encryption should be fairly stable. History encryption was *NOT* tested yet and as such may not work, cause profile corruption, or invoke nasal daemons.
2015-04-23 22:59:12 +02:00
tux3
2d213b7616
Merge branch 'pr1527' into back_in_the_game 2015-04-20 12:00:53 +02:00
tux3
c82d671efe
Properly initialize tox_options 2015-04-20 11:59:52 +02:00
Zetok Zalbavar
33186e51dc
Some code style fixes 2015-04-20 08:58:06 +01:00
tux3
228398d5de
Initial porting to the new Tox API
Builds and runs, but some features will be missing, may crash with an assert, or silently fail with broken QObject connections

We're back in the game.
2015-04-19 23:12:44 +02:00
PKEv
55d33fbcc0 correct after CppCheck 2015-04-13 00:49:24 +03:00
Rohil Surana
fb97662b5d Added add friend on window on first start 2015-04-07 14:19:55 +05:30
quatrox
68f098e27d Make qTox build again
Without this #include, qWarning() cannot be streamed to (in Qt 5.4)
2015-04-02 20:56:45 +02:00
Rohil Surana
a5919dc767 Typing indicator shows up once typing is resumed 2015-03-31 02:57:52 +05:30
kushagra
07ba0c9ae0 Removes chat history of friend when removed, fixes #1486 2015-03-29 13:35:39 +05:30
Dubslow
885dc0638a
No more PRs shall be merged until the new_api branch in my repo is merged. Contributions are welcome.
This commit fixes some minor style issues with #1406
2015-03-27 17:36:35 -05:00
Dubslow
72e78ff6cd
Merge branch 'pr1480'
Conflicts:
	src/widget/form/addfriendform.cpp
2015-03-27 17:36:08 -05:00
Dubslow
2e388f03df
Merge branches 'pr1474', 'pr1406', 'pr1463' and 'pr1472' 2015-03-27 17:33:53 -05:00
Dubslow
5d129b471f
Possibly fix an old segfault that may or may not be a problem 2015-03-27 15:01:42 -05:00
Rohil Surana
b98af21456 On add friend clicked pastes Tox Id from clipboard if there is one 2015-03-27 22:13:25 +05:30
PKEv
4f650b3177 System menu translation 2015-03-26 23:02:08 +03:00
Rohil Surana
5a4443b7bb Set focus to toxId Line edit on add friend window 2015-03-26 16:53:20 +05:30
kushagra
b2481fc1d8 proper splitting in friends chat,fixes #1375
what happened was- When message exceeded TOX_MESSAGE_LENGTH, the whole message was inserted in sender's chatlog X times.
if length of message is N,
X = (N/TOX_MESSAGE_LENGTH) + 1

There is no bug in recieving end. Receving end gets X messages (splitted).
In the sample case provided, the message had whitespaces in the end, so the reciever thought the message is empty.
2015-03-26 11:15:05 +05:30
PKEv
9857f5b60b #1402 duplicate of the sender's name
set if interval more 5 minuts, sender name repet
not tested for group chats!!!
2015-03-26 00:31:39 +03:00
Dubslow
bab280a0ea
Change default datetime formats (d/m m/d agnostic), style fixes, removed unnecessary signals 2015-03-25 11:45:58 -05:00
Dubslow
14a565bc3a
Merge branch 'pr1393' 2015-03-25 11:32:05 -05:00
Dubslow
27f58c9ca6
Style fixes 2015-03-25 11:27:33 -05:00
kushagra
86bbe537bc autocomplete will work for : also,fixes #1377 2015-03-23 23:11:28 +05:30
zero-one
0b64235c69 Settings singleton no longer emits signal when groupchat position changes 2015-03-23 03:06:44 -07:00
zero-one
a1e228e60d style fixes to conform to Allman style 2015-03-23 02:38:24 -07:00
zero-one
c15cc60137 Merge branch 'master' into friend_list 2015-03-23 02:35:20 -07:00
zero-one
de8eb5293c Merge branch 'master' into friend_list
Conflicts:
	src/widget/form/settings/generalform.cpp
2015-03-23 02:34:12 -07:00
Dubslow
f55fd40ec6
Merge branches 'pr1452', 'pr1453', 'pr1456' and 'pr1457' 2015-03-22 16:17:00 -05:00
PKEv
72c45a65fa Correct #1448 2015-03-22 23:44:42 +03:00
Jookia
e3bdd6d221 Added option to disable notification sounds. 2015-03-23 07:27:44 +11:00
PKEv
becd923c09 #1441 correct 2015-03-22 02:26:17 +03:00
Dubslow
ff4b431e5e
Fix minor memleak 2015-03-21 15:58:26 -05:00
agilob
5f15bc8b75 iso date 2015-03-21 15:48:43 +00:00
agilob
77e333ab05 long time format 2015-03-21 15:47:09 +00:00
Zetok Zalbavar
f3aa3073b0
Fix coding style and add copyright header
* added copyright header to src/platform/statusnotifier/enums.c
* 'switch(' → 'switch ('
* use Allman style

----
for / if / while / switch () {
 ↓
for / if / while / switch ()
{
----

----
for / if / while ()
{
    1_line;
}
 ↓
for / if / while ()
    1_line;

----

----
for / if / while ()
    1_line;
line_out_of_loop;
 ↓
for / if / while ()
    1_line;

line_out_of_loop;
----
2015-03-21 08:59:28 +00:00
Zetok Zalbavar
f95291af3e
Some style fixes
"if(" → "if ("
"for(" → "for ("
"while(" → "while ("
2015-03-20 18:38:10 +00:00
agilob
a873bb571f
generalsettings: time and date format from qlocale 2015-03-20 08:17:18 +00:00
Dubslow
9079b334b9
Merge branches 'pr1433', 'pr1435', 'pr1436', 'pr1438' and 'pr1439' 2015-03-19 23:02:02 -05:00
PKEv
eabff1b8e4 Correct hearder file for windows 2015-03-20 00:13:56 +03:00
PKEv
e940459596 Correct for Maximized window 2015-03-19 22:41:31 +03:00
Dubslow
44662310da
Merge branches 'pr1429' and 'pr1431' 2015-03-19 11:03:37 -05:00
sudden6
df785e6608 Add some error handling in attempt to fix #1240
This should prevent the application from crashing, but there is still no
way to tell there is no webcam attached.
2015-03-19 13:30:19 +01:00
novist
a8cd541cb5 IPC improvements
* Removed waitUntilProcessed() because waitUntilAccepted() fits the job. They were nearly identical too so decreased code duplication
* Global events are set as processed only by instance that accepts them. Solves issue where global event would be consumed by first instance that saw it even if that instance ignored that event
* Fixed bug where running qtox instance would not properly exit after sending window activation event that was accepted by already running instance
2015-03-19 12:06:05 +02:00
kushagra
cb8d892724 fixed display of contact_dark.svg 2015-03-18 21:21:58 +05:30
Dubslow
6a43aa8680
Merge branches 'pr1419', 'pr1420', 'pr1421' and 'pr1424' 2015-03-18 08:21:19 -05:00
kushagra
41dc562b64 fixes #1091 2015-03-18 14:15:51 +05:30
kushagra
dc7cd7c027 fixes #1412 2015-03-18 12:40:23 +05:30
TheLastProject
6164426b13 Oops, forgot about groups 2015-03-18 00:51:22 +01:00
TheLastProject
ebf4af830d Fix #1204 2015-03-18 00:45:57 +01:00
isn0gud
de423571eb
add friend on enter key pressed #1404 2015-03-17 13:23:34 -05:00
Dubslow
99e8d71fca
Merge branch 'pr1400', with style fixes @agilob
Conflicts:
	src/widget/form/profileform.cpp
2015-03-17 13:18:47 -05:00
Dubslow
9d5b77aa61
Fix qr label wordwrap 2015-03-17 11:14:16 -05:00
Dubslow
42fe29e83d
Merge branch 'pr1397' 2015-03-16 17:53:00 -05:00
sudden6
0c4cc87ed0 fix #1394 2015-03-16 17:46:56 -05:00
Dubslow
fc720f570d
Merge branch 'pr1392' 2015-03-16 17:37:38 -05:00
Dubslow
4087778b88
Merge branch 'pr1378' 2015-03-16 16:47:12 -05:00
Dubslow
e96211199d
Check for writability for Qr saves 2015-03-16 16:41:59 -05:00
Dubslow
ad09980ce7
Less agressive tooltip 2015-03-16 16:15:34 -05:00
Dubslow
b908852e3b
Cleanup QR PR
Fix coding style, #include "" -> #include <>
Remove tooltip
Move "tox:" addition out of qr-related code

Conflicts:
	src/misc/qrwidget.cpp
2015-03-16 15:41:39 -05:00
Dubslow
01a4cdd07e
Merge branch 'pr1351' 2015-03-16 14:56:01 -05:00
agilob
f72a5b0d85
rm qrcodewindow 2015-03-16 19:38:05 +00:00
zero-one
21a7152316 Merge branch 'master' into friend_list
Conflicts:
	src/widget/form/settings/generalform.cpp
2015-03-16 11:10:28 -07:00
agilob
209f8a19ba
disable css interitance in setpassworddialog 2015-03-16 18:03:14 +00:00
Dubslow
3da818e35a
Merge branches 'pr1344' and 'pr1403' 2015-03-16 12:56:26 -05:00
kushagra
de8f4a60ad Resize notification only if theres lot of text 2015-03-16 12:07:19 +05:30
agilob
b60cfef749
closes tux3/qtox #1399
disabling scrolling on comboboxes in all settings forms
2015-03-15 20:29:23 +00:00
agilob
42133a3d00
copy image to clipboard 2015-03-15 18:53:10 +00:00
agilob
9d99007e2c
qrcode always visible, button to save 2015-03-15 15:45:28 +00:00
agilob
e4c51e2a29
text in the label dateformat 2015-03-14 20:22:28 +00:00
agilob
4cf62bdefa
closes tux3/qtox#1368 - settings to change dateformat 2015-03-14 20:15:56 +00:00
PKEv
e3946b4435 #1379 correct 2015-03-14 23:06:33 +03:00
tux3
ac9b327fe7
Merge branch 'pr1391' 2015-03-14 19:51:58 +01:00
tux3
2547029140
Merge branch 'pr1390' 2015-03-14 19:51:17 +01:00
tux3
c5a8a17e21
Merge branch 'pr1389' 2015-03-14 19:49:04 +01:00
tux3
48dd053d07
Merge branch 'pr1388' 2015-03-14 19:48:05 +01:00
Flakebi
3aca73e4b5 Align file bubbles better 2015-03-14 18:57:07 +01:00
Flakebi
ae9cf96631 Rename dialog buttons 2015-03-14 18:44:26 +01:00
Flakebi
b73c8bcce6 Add askQuestion with custom buttons 2015-03-14 18:44:26 +01:00
agilob
3ec5d30f35
UI fixes in general form:
disable light tray icon if system tray icon disabled (didn't work for
some reason)

disable emoticons combobox if emoticons disabled globally

prevent comoboxes and spinboxes stealing mouse scroll event while
scrolling in generalform, prevents from accidential language/timestamp
format/theme/skin changes while scrolling in the widget

disable passing CSS to qfiledialog in general form, qfiledialog will use
default system theme instead of not fully written from qwidget

fixed tab order in generalsettings
2015-03-14 17:01:59 +00:00
Flakebi
63150ab022 Reset activeChatroomWidget when switching to addFriendForm 2015-03-14 17:16:32 +01:00
Flakebi
53589df799 Disable call buttons in a lonely groupchat 2015-03-14 17:04:06 +01:00
Davor
200ae23de3 Update generalform.cpp 2015-03-14 16:34:12 +01:00
agilob
a501620d92
fixing conflict 2015-03-14 11:36:38 +00:00
Zetok Zalbavar
9ed4b3fb7d
Add missing comment for #1367 2015-03-14 08:12:42 +00:00
novist
c6312fd196 PNG images replaced with SVG
Closes #1050
2015-03-13 20:30:54 +02:00
Dubslow
b6175ac96f
Mark which peers are playing, styling is open to suggestions
closes #757
2015-03-13 01:04:37 -05:00
Dubslow
407ffef1b9
Merge branch 'pr1370' 2015-03-11 22:33:30 -05:00
Dubslow
6e751eaf83
Attempted fix for #1352 2015-03-11 22:02:10 -05:00
Dubslow
50c1e09a5c
Autofocus name edit in profileform
fixes #1364
2015-03-11 22:00:54 -05:00
Dubslow
561682645d
Slightly better error message 2015-03-11 21:37:26 -05:00
Dubslow
21780b9d31
remove duplicate code 2015-03-11 21:17:52 -05:00
Dubslow
e9babcee07
Filter audio checkbox has effect mid-call 2015-03-11 21:13:18 -05:00
zero-one
8b1de8e3f0 grammar correction 2015-03-11 17:50:28 -07:00
zero-one
2d186109c8 Adds a configuration option allowing users to choose whether they want
groupchats placed at the top of the friends list, or below the online
contacts.

-A checkbox was added to generalsettings.ui
-FriendListWidget's constructor was changed so that the friends list can
be initialized with the appropriate layout arrangement
2015-03-11 17:41:18 -07:00
zero-one
4a875ce8f5 Merges Away, Busy, and Online friend list layouts into a single layout.
Also comments out the debug output in
FriendListWidget::getFriendLayout() because hitting the default return
statement is no longer anomalous behavior.
2015-03-11 17:30:01 -07:00
zero-one
fdb4fef374 Adds functionality for sorting FriendWidgets alphabetically in the
friends list. Widgets are sorted upon being added to the friends list in
the first place, and re-sorted if a user changes their name, or if a
user is given an alias.

-Friend now inherits from QObject
-Friend objects now emit a signal when their display name is changed
-FriendListWidget::moveWidget() is now a slot
2015-03-11 17:23:22 -07:00
Dubslow
2f2e51fb6a
Merge branch 'master' of ssh://github.com/krepa098/qTox 2015-03-11 17:44:16 -05:00
novist
5554412a72 Window icon is set same as tray icon
Removed use of "qtox" theme icon as it is no longer relevant
2015-03-11 20:07:35 +02:00
Dubslow
4f0798bde7
Rename widget/form/settings/identitysettings.ui to widget/form/profileform.ui 2015-03-11 10:15:53 -05:00
Dubslow
d09a61e692
Merge branches 'pr1363', 'pr1365', 'pr1366' and 'pr1367' 2015-03-11 10:10:29 -05:00
Flakebi
804cd4f88a Inline funtion calls 2015-03-11 16:01:24 +01:00
agilob
1abef6c0c6
prevent segfault ;_; repaint only after changing alias 2015-03-11 11:20:27 +00:00
agilob
b489e7f712
probably closes tux3/qtox#1330 2015-03-11 11:12:08 +00:00
novist
95649f2476 Support for theming qTox tray and window icons
This patch adds ability to override qTox window and tray icons with ones from user's desktop theme. Some people prefer keeping tray icons consistent to achieve best looks.

Following theme icons used:
* qtox: general window icon which is also used in taskbar
* qtox-online, qtox-offline, qtox-busy, qtox-away, qtox-invisible, qtox-event: tray icons

If theme icon is not available then default built-in icon will be used.
2015-03-11 13:01:10 +02:00
Flakebi
4920f2a2d4 Allow writing messages in a lonely groupchat 2015-03-11 03:21:35 +01:00
Dubslow
fb63232318
Tidying new profile form
Fixing up Widget code for simplicity and consistency, add picture to form heading
2015-03-10 21:01:13 -05:00
Dubslow
114ddd8c50 Merge branch '1012-enhancement-quick-tox-id-access' of https://github.com/ovidiusabou/qTox into master 2015-03-10 17:34:51 -05:00
Dubslow
2ea3d73756
Merge branches 'pr1355' and 'pr1357' 2015-03-08 17:37:53 -05:00
Shane McKee
03329d8171
Issue #1119 fixed OS X fullscreen bug 2015-03-08 17:33:55 -05:00
TheLastProject
b659612bd4 Use QImage scaling and base64 encoding for sharper previews 2015-03-08 21:01:34 +01:00
kushagra
38f5c4f2dc solves issue 1309 2015-03-08 22:30:57 +05:30