Commit Graph

335 Commits

Author SHA1 Message Date
Micah Lee
dd7d97dbbb
Allow changing downloads_dir from SettingsDialog 2018-04-25 08:43:40 -07:00
Micah Lee
b6b61f753d
Update GPL copyright year 2018-04-24 10:07:59 -07:00
Micah Lee
2ee7e74236
Remove the desktop notification setting -- everyone gets them now 2018-04-24 09:26:06 -07:00
Micah Lee
1d7ec585ee
Move the share-related event logic from OnionShareGui.event_callback into ShareMode methods, and other various bugfixes related to the refactor 2018-04-24 09:21:23 -07:00
Micah Lee
a232cfdbde
Hide Receive Files button while share server is active 2018-04-24 08:51:39 -07:00
Micah Lee
bda82bc7a0
Fix crash when canceling while compressing files, and also prevent canceled share from starting when compressing finishes 2018-04-24 08:48:17 -07:00
Micah Lee
9b2b815525
Moving more of the logic into ShareMode, but still have much more testing to do 2018-04-23 22:08:51 -07:00
Micah Lee
ac67f6be6a
Move a lot of code from OnionShareGui into ShareMode, but none of it runs yet 2018-04-23 21:34:29 -07:00
Micah Lee
b349471c30
Add empty ShareMode and ReceiveMode widgets, and show and hide them when switching modes 2018-04-23 21:24:12 -07:00
Micah Lee
ac13790673
Flip between modes when clicking mode buttons, and some css 2018-04-23 21:15:30 -07:00
Micah Lee
b4c31573ba
Remove the margin from the mode switcher 2018-04-23 21:08:03 -07:00
Micah Lee
6c91d8977a
Begin to add the mode switcher (between "Share Files" and "Receive Files", with the settings button) 2018-04-23 19:51:51 -07:00
Micah Lee
91536ea571
Fix a few bugs that I missed when merging in develop 2018-04-22 17:46:14 -07:00
Micah Lee
8c89a05fd9
Merge branch 'develop' into receiver-mode 2018-04-22 17:38:28 -07:00
Micah Lee
1201205dee
Merge branch 'hide_primary_action_on_tor_disconnection' of https://github.com/mig5/onionshare into develop 2018-04-22 16:09:32 -07:00
Micah Lee
3584e57c5d
Merge branch 'local_only_gui' of https://github.com/mig5/onionshare into mig5-local_only_gui 2018-04-22 15:41:10 -07:00
Micah Lee
359bd59828
Merge branch 'downloads_window' of https://github.com/mig5/onionshare into mig5-downloads_window 2018-04-22 14:48:57 -07:00
Miguel Jacq
b1b28f4fa5
Hide the primary_action when Tor gets disconnected 2018-03-14 18:31:07 +11:00
Micah Lee
76d299a6c9
Move settings into the Common object, so the settings are available to all objects (including Web, which is required for receive mode) 2018-03-13 03:28:47 -07:00
Micah Lee
50409167d4
Completely refactor common to make a Common class, and pass that class down into all parts of the program 2018-03-08 10:18:31 -08:00
Micah Lee
49e352d131
Rename close_after_seconds class to ShutdownTimer 2018-03-08 05:50:23 -08:00
Miguel Jacq
46a9a2a0a1
#662 Allow local-only mode in GUI 2018-03-07 16:13:22 +11:00
Micah Lee
4a0c6e8dcd
Refactor OnionShareGui to use new Web class 2018-03-06 00:56:40 -08:00
Baccount
9da1b82e5a
Update onionshare_gui.py 2018-03-02 18:45:36 -08:00
Miguel Jacq
fa9e5748a3
Make downloads window scrollable again. Reset to original size when starting a fresh share 2018-02-28 09:48:23 +11:00
Miguel Jacq
fffc420cb1
re-show the 'No downloads yet' label when resetting the counters (e.g starting a new share) 2018-02-27 18:20:05 +11:00
Miguel Jacq
ee5c35d502
Move downloads into their own window that can be toggled on/off 2018-02-27 17:59:46 +11:00
Micah Lee
49fa2805e7
Merge branch 'cancel_share' of https://github.com/mig5/onionshare into mig5-cancel_share 2018-02-25 16:14:59 -08:00
Miguel Jacq
096c202362
Add ability to cancel a share 2018-02-25 17:44:27 +11:00
Micah Lee
3797e9e203
When using <img>, put the src in quotes. Otherwise the filename is likely to have spaces in it, and the <img> src will break. Also, in Windows use backslashes for local resources instead of forward slashes 2018-02-24 18:38:40 -08:00
Micah Lee
f41ad976ea
Rename in_progress_download to in_progress_downloads (plural) everywhere, to be consistent with completed_downloads 2018-02-24 18:37:19 -08:00
Miguel Jacq
cff267c09c Revert the cancel feature that causes issues at least on macOS (#637) 2018-02-25 12:31:32 +11:00
Miguel Jacq
9f0adc0fb9 Revert "Fix updating primary action and re-enabling drag-n-drop when a share is canceled"
This reverts commit 9da3e2d8b0.
2018-02-25 12:27:20 +11:00
Micah Lee
928de64171
Give settings button a fixed width to avoid it getting squished in macOS 2018-02-24 12:34:46 -08:00
Miguel Jacq
7e175cb7e3
Re-work the UI widgets to make it smaller on Macbook Pro and other smaller screens 2018-02-24 15:38:45 +11:00
Miguel Jacq
21b08252d3
Use the QListWidgetItems for building lists of filenames. Set, but avoid displaying, the QString from Qt.DisplayRole which is necessary for correct sorting in the list 2018-02-21 15:19:18 +11:00
Micah Lee
6ac4584d2a
Merge branch 'info_widget_visibility_fixes' of https://github.com/mig5/onionshare into mig5-info_widget_visibility_fixes 2018-02-20 17:48:50 -08:00
Miguel Jacq
2dd1d13957
Make the appearance of the download status icons occur consistently with the file info label 2018-02-20 15:30:55 +11:00
Miguel Jacq
9da3e2d8b0
Fix updating primary action and re-enabling drag-n-drop when a share is canceled 2018-02-20 14:49:17 +11:00
Micah Lee
cb69ae89fc
Merge branch 'info_widgets_download_info' of https://github.com/mig5/onionshare into mig5-info_widgets_download_info 2018-02-19 17:55:03 -08:00
Miguel Jacq
b7df7f8dc9
merge ux-update in, and fix conflict 2018-02-20 07:47:21 +11:00
Miguel Jacq
20c0ca02d3
Add download status widgets to info bar 2018-02-19 08:33:47 +11:00
Micah Lee
127d097e96
Merge branch 'clear_messages_on_server_button_click' of https://github.com/mig5/onionshare into mig5-clear_messages_on_server_button_click 2018-02-13 17:28:03 -08:00
Micah Lee
6903e9bad6
Merge branch 'copy_urls_moved_to_desktop_notifications' of https://github.com/mig5/onionshare into mig5-copy_urls_moved_to_desktop_notifications 2018-02-13 17:21:40 -08:00
Miguel Jacq
b8cf692cd8
actually show those messages in the system tray, not still in the statusbar, and with the mandatory titles 2018-02-11 17:52:14 +11:00
Miguel Jacq
5e4a4f6613
Move the copy URL/HidServAuth notifications to desktop notifications instead of statusbar 2018-02-11 17:42:07 +11:00
Miguel Jacq
14ece50807
Clear statusBar messages when the server button is clicked 2018-02-11 17:32:45 +11:00
Miguel Jacq
afc9568f30
Adjust width of window to fit status bar messages, unwrapped, to avoid squishing widgets.
Add pluralisation of filemanager total file(s)

Use 'timer expired' rather than 'timeout reached'
2018-02-11 17:16:59 +11:00
Miguel Jacq
ed179922d4
Merge branch 'ux-update' of https://github.com/micahflee/onionshare into ux_update_fix_shutdown_timer 2018-02-11 17:15:52 +11:00
Miguel Jacq
ef994ea012
Use just one share status QLabel widget and update the text accordingly 2018-02-11 09:54:22 +11:00
Micah Lee
fe24c543cc
Added an info label to file selection, to show the total count and size 2018-02-10 11:48:14 -08:00
Micah Lee
532d5d5cf0
Instead of disabling the settings button when share is active, hide it, and show it again when the share stops 2018-02-10 10:59:01 -08:00
Miguel Jacq
39954c6ee8
Allow the user to cancel a share that is still starting up 2018-02-09 18:43:57 +11:00
Miguel Jacq
bc2417c65e
Set the URL label to explicitly mention when persistent. Remove older Persistence warning to save clutter. Add ToolTip to explain what Persistence means 2018-02-09 07:55:22 +11:00
Miguel Jacq
3e5d51a858
Make status bar styling consistent 2018-02-08 12:25:30 +11:00
Miguel Jacq
749ca6312d
Fix shutdown timer and insert larger messages as word-wrapped widgets into the Status Bar 2018-02-08 11:32:34 +11:00
Micah Lee
05633673fc
Move auto-stop timer into settings, so its UI does not show up unless the user specifically enables that feature 2018-02-07 09:55:55 -08:00
Miguel Jacq
cf6d11816f
Call update_primary_action when server is stopped. Because it runs adjustSize(), it will shrink the window back down to a sane size once the URL label widgets get hidden, instead of growing the FileList widget to fill up the space 2018-02-07 16:00:48 +11:00
Micah Lee
f93ed86283
Move server status indicator to the status bar at the bottom 2018-02-06 19:31:02 -08:00
Micah Lee
69fe7f0d98
Move version label into settings dialog 2018-02-06 19:05:02 -08:00
Micah Lee
a1aa25c792
Start with a narrower width 2018-02-06 18:35:35 -08:00
Micah Lee
8f77603182
Improve the UI of the quit warning 2018-02-06 17:47:05 -08:00
Micah Lee
ab1d6a65dd
Update color and style of progress bars 2018-02-06 17:10:42 -08:00
Micah Lee
5ca4bb0157
Give server button rounded corners. Change style of persistent URL label 2018-02-06 16:14:56 -08:00
Micah Lee
2a23b02f98
Increase minimum width, and remove word wrap, to fix QLabel squishing problem 2018-02-06 16:11:48 -08:00
Micah Lee
24a672dac9
Make the server button and URL display much nicer, and replace string "URL" with "address" for usability 2018-02-06 16:01:59 -08:00
Micah Lee
5dad0e81a3
Increase minimum window width 2018-02-05 09:46:22 -08:00
Micah Lee
5328a6f7f6
Resize the window when adding new files 2018-02-05 09:33:31 -08:00
Micah Lee
83c9cd4e00
Show or hide primary action layout section the first time, in case filenames are passed in from the cli 2018-02-05 09:26:05 -08:00
Micah Lee
cf1ff97ce9
Create a "primary action" layout, and only show it when there are files in the file list 2018-02-05 09:24:43 -08:00
Miguel Jacq
3e7d4c64ff
Save the slug when using a persistent private key 2018-01-15 10:01:34 +11:00
Miguel Jacq
448f6af796
Resolve conflict with upstream's onion.py 2018-01-14 18:49:49 +11:00
Miguel Jacq
9aef3cdbb3
Add a 'persistent URL' label when re-using a private key 2018-01-14 18:41:54 +11:00
Micah Lee
6ab6ea564a
Create the timer before the TorConnectionDialog dialog, but start it after. This way if you cancel the dialog, then click save in the settings, OnionShareGui.timer will already exist, even though though TorConnectionDialog hasn't closed yet 2018-01-13 22:46:57 -08:00
Micah Lee
8f585db127
Don't start the check_for_requests timer until after connected to Tor, and remove OnionShareGui.tor_con and TorConnectionDialog.t as class variables, making them local variables instead 2018-01-13 22:42:27 -08:00
Micah Lee
ebbe490a65
Merge branch '493_500_detect_broken_tor_connection' of https://github.com/mig5/onionshare into mig5-493_500_detect_broken_tor_connection 2018-01-13 16:32:56 -08:00
Micah Lee
04d2f0c0e1
Merge branch '495_clear_status_bar_early' of https://github.com/mig5/onionshare into mig5-495_clear_status_bar_early 2018-01-13 16:09:11 -08:00
Micah Lee
d42369a0f9
Merge branch '453_catch_oserror_on_crunching_files' of https://github.com/mig5/onionshare into mig5-453_catch_oserror_on_crunching_files 2018-01-13 15:58:15 -08:00
Miguel Jacq
e90908c5b0
Move the saving of private key into the SettingsDialog and Onion objects entirely (no QPushButton to save it) 2018-01-13 20:58:24 +11:00
Miguel Jacq
0a5bd45dfe
Add systray notification when Tor connection is lost, thanks @Baccount 2017-12-27 09:29:45 +11:00
Miguel Jacq
2cd61d76e0
Disable the 'Start Sharing' button if the connection to Tor has been lost. Re-enable it if we've subsequently reconnected to Tor via Settings dialog 2017-12-24 14:07:20 +11:00
Miguel Jacq
5c84c277da
Don't show alert dialogs when Tor disconnects - just display in statusbar and stop any active share. 2017-12-23 16:43:58 +11:00
Miguel Jacq
6f4d7f7f44
Fixes for the edge case where Tor connection dialog is canceled, but the Tor process remains open in the background, which was causing onion.is_authenticated() to True. Remove excessive alerts 2017-12-21 14:08:13 +11:00
Miguel Jacq
b442b5d41b
Ensure we don't consider the Tor connection 'lost' if we're still in the connection dialog process (wait for that thread to finish).
Also various implementations of onion.is_authenticated() for a more robust check than onion.connected_to_tor,
which seemed to help some corner cases
2017-12-21 12:15:23 +11:00
Miguel Jacq
bcd4363769
#493, #500 - detect if the Tor connection (bundled, TorBrowser or otherwise) has been lost while the app is open. Stop a running share if so 2017-12-21 09:22:53 +11:00
Miguel Jacq
95f7b0d8df
Clear the status bar messages earlier when starting a new share 2017-12-20 07:39:55 +11:00
Miguel Jacq
4f768e8b77
Catch OSError when preparing the zip file during server start. Fixes #453 2017-12-12 17:02:11 +11:00
Miguel Jacq
a12f9ed4d8
cleanup the ephemeral hidden service when GUI server is stopped, but don't disconnect from Tor 2017-12-07 16:10:52 +11:00
Miguel Jacq
e7dd78dba7
cleanup the ephemeral hidden service when GUI server is stopped, but don't disconnect from Tor 2017-12-07 16:08:03 +11:00
Miguel Jacq
d69e93a5ba
emit to the status bar when the private key is saved to disk 2017-12-07 13:02:56 +11:00
Miguel Jacq
3a056803a9
Optionally save the private key of a running share to settings for reuse 2017-12-07 12:45:34 +11:00
Micah Lee
ed2c55c097
Merge branch 'no_available_port_error' of https://github.com/mig5/onionshare into mig5-no_available_port_error 2017-12-06 16:14:21 -08:00
Miguel Jacq
0aacfae925
Raise an error if we were unable to obtain a random port 2017-12-07 08:49:10 +11:00
Miguel Jacq
d500069398
Actually still uncheck the timer when the server stops, but *only* when it stops 2017-12-06 10:21:39 +11:00
Miguel Jacq
eaa37206e5
Let the timer stop the share if there were no downloads, or all downloads are done 2017-12-05 11:18:26 +11:00
Miguel Jacq
91a0c60189
Better fix for preventing timeout firing if a download is not yet done (works for CLI as well as GUI) 2017-12-04 15:03:28 +11:00
Miguel Jacq
2eb7bca242
Merge master branch and fix conflicts 2017-12-03 17:06:33 +11:00
Miguel Jacq
3b52f584a1
Don't auto-stop the share if a download is still in progress 2017-12-03 13:21:25 +11:00
Miguel Jacq
6ad2737d08
Properly stop the server when the timeout is reached (and reset the interface so we can share again) 2017-12-02 14:53:38 +11:00
Miguel Jacq
882057eafc
only prevent the share from starting when the timeout has expired, if the timeout feature was even set at all 2017-11-09 18:23:11 +11:00