Commit Graph

893 Commits

Author SHA1 Message Date
Micah Lee
7c61483ae9
Move Mode module into its own folder 2018-10-07 14:48:15 -07:00
Miguel Jacq
3f32db2cca
Fix logic for handling an upload still in progress when timer runs out. Show thankyou page for last uploader post-timer expiry 2018-10-01 18:42:53 +10:00
Miguel Jacq
f653e8cc04
Merge develop in and fix upload/timer functionality so that it works as described. Still needs fixing to not throw a connection error to the lucky last uploader after their upload completes and server stops due to expiry having passed 2018-10-01 16:42:54 +10:00
Miguel Jacq
7e8a76be8a
Load default settings before parsing for any alternate config. Reload strings if an alternate config was passed in after 2018-10-01 15:32:53 +10:00
Miguel Jacq
9aa9dc39a1
Move Alert dialog about restart into the conditional that fires only if locale was changed 2018-10-01 13:32:09 +10:00
Miguel Jacq
c43d882a65
Explicitly set true/false values for settings that need it 2018-10-01 12:53:10 +10:00
Micah Lee
a1f5b5964a
Remove the useless gui=True arg getting passed intro strings._ all over the place 2018-09-30 17:47:10 -07:00
Micah Lee
c4f776c42a
Set OnionShare language based on the locale stored in settings, and prompt user to restart OnionShare after changing their language 2018-09-30 17:06:29 -07:00
Micah Lee
23c55bc95b
Change how language selection setting looks 2018-09-30 16:23:46 -07:00
Micah Lee
9a19a7aecd
Allow switching locales from the settings dialog 2018-09-30 16:14:14 -07:00
Miguel Jacq
4ffc0ddb82
Ignore attribute error when optimistically trying to cancel compression (we may have no ZipWriter object yet) 2018-09-30 16:52:48 +10:00
Micah Lee
39dd0862d4
Increase minimum window with to 460, and store it in a variable to stop repeating myself 2018-09-29 15:12:05 -07:00
Micah Lee
8ca34fadd9
Fix crash when clicking Help from the systray 2018-09-29 14:49:06 -07:00
Micah Lee
b4de634b7a
Fix indicator label display for receive mode 2018-09-29 14:43:13 -07:00
Micah Lee
4b3a68bb65
Got the indicator label to display in the correct location for share mode 2018-09-29 14:40:55 -07:00
Micah Lee
fa4ebbf263
Convert Uploads to a QScrollArea also 2018-09-29 13:47:00 -07:00
Micah Lee
d87115d21e
Fix Downloads scroll area so internal widget is always the right size 2018-09-29 13:41:12 -07:00
Micah Lee
ffad77930f
Switch Downloads from QListWidget to QScrollArea 2018-09-29 12:19:01 -07:00
Micah Lee
4aed7c0f9d
Use correct variable name for Downloads 2018-09-29 12:00:22 -07:00
Micah Lee
709eeeac5f
Starting to implement the new Uploads UI, but not done 2018-09-28 22:03:48 -07:00
Micah Lee
e87263353f
Added an indicator count for share mode 2018-09-28 19:54:46 -07:00
Micah Lee
9a05eef494
Slightly improve Downloads progress bar style, but still needs spacing 2018-09-28 19:05:26 -07:00
Micah Lee
71149c2937
Refactor Downloads to use an internal QListWidget to list the progess bars 2018-09-28 18:48:12 -07:00
Micah Lee
a5b549770a
Got empty Downloads looking good 2018-09-28 18:30:32 -07:00
Micah Lee
c0e6968b2b
Attempting to redesign Downloads 2018-09-28 17:01:48 -07:00
Micah Lee
08ac4137c7
Process Qt events once more, to prevent weird size issues before adjusting size 2018-09-28 16:06:14 -07:00
Micah Lee
35065106ef
Refactor receive mode into using an info widget too 2018-09-28 16:00:22 -07:00
Micah Lee
f056ce576e
Refactor share mode info widget into its own file and custom class, and run .show_more() and .show_less() instead of .show() and .hide() 2018-09-28 15:47:49 -07:00
Micah Lee
cddc8c06d4
Modes now get to choose a new minimum window width when resizing 2018-09-28 15:30:37 -07:00
Micah Lee
e29bb99f16
OnionShareGui.adjust_size now recursively runs adjustSize() on all widgets 2018-09-28 15:05:43 -07:00
Micah Lee
4bec79f494
Toggle showing uploads and downloads for both share and receive modes 2018-09-28 13:43:10 -07:00
Micah Lee
edbbe9377c
Add a toggle downloads button to share mode, and add new toggle upload and download images 2018-09-28 13:24:44 -07:00
Micah Lee
ddcbed451c
Hide the uploads and downloads by default, and make the mode switcher hide before showing, to prevent weird window resizing 2018-09-28 13:18:18 -07:00
Micah Lee
fc1902c1ee
Refactor how Mode layouts work, so the downstream Mode has more control over the UI 2018-09-28 12:51:30 -07:00
Micah Lee
8b4ef277b5
Merge branch 'gui_tests' of https://github.com/mig5/onionshare into mig5-gui_tests 2018-09-27 16:44:06 -07:00
Miguel Jacq
201f351279
Pass --local-only down to the ServerStatus and Mode so that we can set shorter timeouts for local GUI tests. Update the tests to use a very short timeout 2018-09-27 15:43:59 +10:00
Micah Lee
d3410e7843
Merge pull request #789 from mig5/show_v3_onion_support
Show whether Tor version supports next-gen onion support
2018-09-26 17:09:34 -07:00
Miguel Jacq
3ed04bf5ec
Show whether Tor version supports next-gen onion support 2018-09-25 15:26:19 +10:00
Miguel Jacq
d34364530d
Analyse the right file size to determine if the download has finished in the UI (in order to decide whether to stop server yet) 2018-09-25 14:40:10 +10:00
Micah Lee
017a4ebe31
Merge branch 'develop' into 663_zip_away 2018-09-21 16:23:49 -07:00
Micah Lee
09ccbf4a60
Dynamically figure out the total size of the download based on the whether or not the client making the http request accepts gzip 2018-09-21 16:22:37 -07:00
Micah Lee
2a309af680
If only sharing one file, compress it with gzip, and serve it with gzip compression if the browser supports it 2018-09-21 12:29:23 -07:00
Micah Lee
28fd67cbcc
Move more mode-specific logic out of the Web class and into the approprate mode web classes 2018-09-21 11:36:19 -07:00
Micah Lee
cc9f646f8b
Refactor web even more to all of the share and receive web logic into ShareModeWeb and ReceiveModeWeb classes 2018-09-21 11:14:32 -07:00
Micah Lee
81fa5e052c
Only add the download_filename to cleanup_filenames (which get deleted) if the file is zipped up. Otherwise, OnionShare deletes the original file 2018-09-20 23:18:17 -07:00
Micah Lee
5bc8e0a5e5
Smoothly quit when Ctrl-C is pressed 2018-09-20 23:09:14 -07:00
Micah Lee
ea938e2439
Change more references to web.zip_filesize to be refer to web.download_filesize 2018-09-20 12:25:07 -07:00
Micah Lee
324538bdd3
When there is only 1 file being shared, don't zip it 2018-09-20 09:14:56 -07:00
Micah Lee
5a96bcc77b
Remove adjustSize that was causing issues 2018-09-19 20:17:23 -07:00
Micah Lee
beeebce631
Set minimum width for whole application 2018-09-19 19:39:59 -07:00
Micah Lee
871135cc75
Only add a stretch at the bottom of the layout in receive mode, not share mode 2018-09-19 19:38:29 -07:00
Micah Lee
1314ddf1be
Remove upload/download toggle buttons 2018-09-19 19:36:16 -07:00
Micah Lee
499f7b1638
Always show uploads and downloads 2018-09-19 19:00:12 -07:00
Micah Lee
59003635a2
Add a horizontal layout wrapper around the vertical layout, in order to optionally add horizontal widgets to Modes 2018-09-19 18:50:42 -07:00
Micah Lee
2b9791e07f
Merge branch 'develop' of github.com:micahflee/onionshare into develop 2018-09-19 18:40:14 -07:00
Micah Lee
286979952a
Merge branch 'send_public_mode_arg_to_web_start' of https://github.com/mig5/onionshare into mig5-send_public_mode_arg_to_web_start 2018-09-19 18:39:07 -07:00
Micah Lee
093cf9bd85
Merge pull request #766 from mig5/clear_history_button
Add 'clear history' button to downloads and uploads windows
2018-09-19 18:36:50 -07:00
Micah Lee
d0d4d61008
Merge pull request #762 from mig5/textwrap_upload_filename_widget
#704 wrap the upload filename label if too long
2018-09-19 18:33:30 -07:00
Micah Lee
fc7afecb7b
Choose a port *before* starting the web service 2018-09-19 18:14:42 -07:00
Miguel Jacq
8b704a0070
Start the WebThread earlier than the Onion service. This gives it a chance to generate its slug before the Onion Service finishes starting up, which can otherwise lead to a crash 2018-09-19 15:07:04 +10:00
Miguel Jacq
20c97a61ab
Send the public_mode argument to web.start in the WebThread 2018-09-19 14:40:30 +10:00
Miguel Jacq
28674bf023
Add 'clear history' button to downloads and uploads windows 2018-09-19 14:37:07 +10:00
Miguel Jacq
f45eae5768
Fix syntax for opening explorer and selecting the filename. Fix a bug in the downloads_dir for Windows (need to use a backslash) 2018-09-19 12:12:18 +10:00
Miguel Jacq
388f968556
fix function name for windows 2018-09-19 11:27:36 +10:00
Miguel Jacq
41b4cea673
Open folder containing uploads with the file selected, in macOS and Windows 2018-09-19 11:24:19 +10:00
Miguel Jacq
62804dfdce
Merge pull request #758 from micahflee/665_cancel_compression
Fix zip progress bar not canceling problem
2018-09-19 10:59:11 +10:00
Micah Lee
3743a1b0ec
Merge pull request #756 from mig5/reset_uploads_on_share_restart
Close the upload widget on reset so that it properly disappears from the Uploads window
2018-09-18 17:58:25 -07:00
Miguel Jacq
c08f6f3db1
#704 wrap the upload filename label if too long 2018-09-19 10:57:12 +10:00
Micah Lee
6ac1ca3784
Merge pull request #755 from mig5/upload_icon_updating
Increment/decrement the upload counters
2018-09-18 17:50:39 -07:00
Micah Lee
d63808f419
Import onion exceptions that were missing 2018-09-18 17:44:54 -07:00
Micah Lee
72f76bf659
We shouldn't call CompressThread.cancel() there because it's already called in a signal 2018-09-18 13:39:09 -07:00
Micah Lee
174de57405
Refactor all of the threading.Threads into QThreads, and quit them all when canceling the server. When canceling the compression thread, specifically mass a cancel message into the Web and ZipWriter objects to make the bail out on compression early 2018-09-17 20:55:54 -07:00
Miguel Jacq
d54b52691c
Fix the auto-scrolling to bottom of Download and Upload windows 2018-09-18 12:59:01 +10:00
Miguel Jacq
bf6de202b0
Close the upload widget on reset so that it properly disappears from the Uploads window. 2018-09-18 11:51:32 +10:00
Miguel Jacq
c8fd40c3b0
Increment/decrement the upload counters 2018-09-18 11:19:20 +10:00
Miguel Jacq
c3755389dd
Fix conflict 2018-09-18 10:26:16 +10:00
Micah Lee
359e470383
Make what's this links use the same string, and change their style 2018-09-17 16:11:52 -07:00
Micah Lee
cddc7f8c57
Merge branch 'prop224_receiver_mode' of https://github.com/mig5/onionshare into mig5-prop224_receiver_mode 2018-09-17 15:57:15 -07:00
Miguel Jacq
7e875e021a
Remove unnecessary loop. Remove the Close route/setting which can DoS another running upload. Fix detecting whether any uploads are still in progress before terminating the service after timer expires. Don't register 404s for uploads after expiry has finished (throw a 403 instead)" 2018-09-18 08:36:07 +10:00
Miguel Jacq
953727419c
Use the term 'upload' rather than 'download' in the Receive mode tooltip icons 2018-09-17 18:48:22 +10:00
Miguel Jacq
b06fd8af26
Hold a share open if its timer hsa expired but a file is still uploading. Don't allow other uploads during this time 2018-09-17 17:42:04 +10:00
Miguel Jacq
6ed5c94df7
Hide the legacy settings if legacy mode is not enabled. Fix unrelated bug regarding displaying the HidServAuth copy button/label 2018-09-17 09:12:13 +10:00
Miguel Jacq
6c01d7a2da
Add 'what's this' labels to each General Setting 2018-09-17 09:01:30 +10:00
Miguel Jacq
7c55f0adae
Reorder the general settings 2018-09-17 08:44:56 +10:00
Micah Lee
4777c45ad8
Fix suppressing the shutdown_slug message 2018-09-16 13:50:30 -07:00
Miguel Jacq
7bd897d19e
Don't show the Flash shutdown slug route in the status bar as if it were an unexpected 404 route 2018-09-16 15:15:40 +10:00
Miguel Jacq
026322b458
Fix margins on HBoxLayouts in settings 2018-09-16 14:06:55 +10:00
Miguel Jacq
95f097eae3
Move the hyperlink labels into HBox layouts with the checkboxes 2018-09-16 14:00:41 +10:00
Miguel Jacq
d8566c2d78
Move stealth to general options, and add hyperlinks for more info for this and legacy addresses 2018-09-16 13:54:47 +10:00
Miguel Jacq
3a7ae401af
Fix conflicts 2018-09-16 13:37:22 +10:00
Miguel Jacq
30ee2290d7
Fix bug where lack of stealth mode re-enabled v2 legacy checkbox even if persistence was still enabled 2018-09-15 16:07:08 +10:00
Miguel Jacq
8bb75cc530
Fix conflict in tests 2018-09-15 12:07:01 +10:00
Micah Lee
8312058fcc
Merge branch 'develop' into receiver-mode-gui 2018-09-14 18:59:36 -07:00
Micah Lee
db63b4c9c3
Merge branch 'fix_help_systray_slot' of https://github.com/mig5/onionshare into develop 2018-09-14 18:43:25 -07:00
Micah Lee
2605967011
Merge branch '685_use_dist_socks' of https://github.com/mig5/onionshare into mig5-685_use_dist_socks 2018-09-14 18:40:26 -07:00
Micah Lee
fbb55e36dc
Merge branch 'upload_widget_overlap' of https://github.com/mig5/onionshare into mig5-upload_widget_overlap 2018-09-14 18:33:51 -07:00
Micah Lee
4c87393550
Merge branch 'fix_invalid_version_alert' of https://github.com/mig5/onionshare into mig5-fix_invalid_version_alert 2018-09-14 18:32:32 -07:00
Miguel Jacq
85fa44a01f
Pass self to help_clicked function in systray, so we can use self.common 2018-09-04 14:49:56 +10:00
Miguel Jacq
45a5a2ae63
Use the distribution's PySocks module instead of our custom version 2018-09-04 14:26:47 +10:00
Miguel Jacq
11bf059015
Fix conflict from receiver-mode-gui branch 2018-09-04 11:48:39 +10:00
Miguel Jacq
45d6a94d38
Fix conflict from develop branch 2018-09-04 11:43:35 +10:00
Micah Lee
eb0419f2d9
Merge branch 'fix_spelling_grammar_receiver_mode' of https://github.com/mig5/onionshare into mig5-fix_spelling_grammar_receiver_mode 2018-09-02 22:59:06 -07:00
Micah Lee
e1976fdca0
Merge branch '707_fix_receive_mode_on_tor_disconnect' of https://github.com/mig5/onionshare into mig5-707_fix_receive_mode_on_tor_disconnect 2018-09-02 22:56:39 -07:00
Micah Lee
52c82f9b16
Merge branch 'lingering_object_naming_issues' of https://github.com/mig5/onionshare into mig5-lingering_object_naming_issues 2018-09-02 13:33:35 -07:00
Miguel Jacq
808c5a3333
Truncate the length of the uploaded file name if it is longer than the width of the Upload window 2018-09-01 09:20:50 +10:00
Miguel Jacq
2fd2cf3e2e
Fix the passing of the latest version returned to the UI if it is an invalid version 2018-08-30 15:18:29 +10:00
Miguel Jacq
7879697ec6
Only wrap the v3 onion if the window is too small to show it unwrapped 2018-08-28 09:33:49 +10:00
Miguel Jacq
47fc55aac1
Don't try and parse Tor version in order whether or not to show v2-only features. Just note in the QLabel what is v2-only. Still force v2 legacy mode on when using persistence or stealth. 2018-08-23 11:02:28 +10:00
Miguel Jacq
5c8b0d7796
Rather than hide persistence/stealth mode altogether if the Tor version is high enough for v3, give the user the option to 'use legacy v2 onions' in Settings dialog, so that they may continue to use persistence etc 2018-08-22 11:45:08 +10:00
Miguel Jacq
2de9359629
Introduce v3 onion support 2018-08-21 19:31:02 +10:00
Miguel Jacq
3b45f93dbe
Expand 'public mode' (optional slugs) to be possible for sharing too, not just receiving, with no rate-limiting/self-destruct on invalid routes. 2018-07-21 17:06:11 +10:00
Miguel Jacq
a830eb57fe
#691 remove meek_lite Amazon 2018-07-21 15:52:11 +10:00
Miguel Jacq
f6b031bc2c
Fix another two places where Alert was called without passing the common object 2018-07-21 15:50:37 +10:00
Miguel Jacq
69ae29272c
Fix minor spelling/grammar issues 2018-07-14 16:43:21 +10:00
Miguel Jacq
89e341c8ec
#707 Hide/show the primary action in Receive Mode when tor connection is lost/regained 2018-07-14 16:19:16 +10:00
Miguel Jacq
a4f0b5e8f8
Remove duplicate line 2018-07-13 15:50:17 +10:00
irykoon
09ce97147a
Merge branch 'develop' of https://github.com/micahflee/onionshare into develop 2018-07-12 06:31:49 +00:00
Micah Lee
1ad68c46d4
Merge branch 'license' into develop 2018-06-18 19:29:03 -07:00
Micah Lee
9344fbd274
Update OnionShare copyright year to 2018 2018-06-17 16:53:44 -07:00
Miguel Jacq
7e7611bc34
Fix some lingering attribute/module references that had not been updated to use their new names/paths 2018-05-28 15:52:43 +10:00
Micah Lee
4fd93636da
Remove TODO comment 2018-05-20 15:33:13 -07:00
Micah Lee
f5ce069031
Make it so the open folder button works in Linux, with nautilus 2018-05-20 14:40:27 -07:00
Micah Lee
b20ba6fc86
Rename uploaded files 2018-05-20 14:12:53 -07:00
Micah Lee
451e07269f
Fixed "RuntimeError: dictionary changed size during iteration" exception while updating upload progress 2018-05-20 14:05:34 -07:00
Micah Lee
18573ba49c
Remove REQUEST_UPLOAD_NEW_FILE_STARTED event, because it's not actually needed 2018-05-20 12:07:15 -07:00
Micah Lee
8939d279e3
Only show other_page_loaded message on actual 404s 2018-05-20 11:04:45 -07:00
Micah Lee
7a571764ef
Allow file uploads to finish, and improve uploads styling 2018-05-19 22:58:55 -07:00
Micah Lee
ee9c0d0abb
Refactor uploads GUI so that each upload POST has one progess bar, and a list of files, with partial styling 2018-05-19 22:36:08 -07:00
Micah Lee
db7d5a6552
Move downloads_dir validation into the /upload request in Web, and display an error in both CLI and GUI 2018-05-19 21:11:57 -07:00
Micah Lee
a787a5af1e
Start building File/Upload/Uploads GUI 2018-05-08 14:28:02 -07:00
Micah Lee
eb3d6f2171
Start making Web events actually put Upload objects into Uploads 2018-05-07 23:07:11 -07:00
Micah Lee
9d557d4aa0
Renamed Mode.handle_request_download to handle_request_started 2018-05-07 22:16:45 -07:00
Micah Lee
591e97a57a
Make receive mode events just like share mode, and rename REQUEST_DOWNLOAD to REQUEST_SHARE 2018-05-07 22:15:29 -07:00
Micah Lee
996f6c0725
Create an Upload class within Uploads, and add methods to Uploads to add, update, cancel, and reset 2018-05-07 16:38:29 -07:00
Micah Lee
4d5f1a34cd
Move all stylesheets definitions into Common, so now we no longer have blocks of css spread across the GUI code, and it's easier to re-use stylesheets 2018-05-07 16:21:22 -07:00
Micah Lee
23821ebae6
Make ReceiveMode start using Uploads 2018-05-07 15:44:04 -07:00
Micah Lee
a0db6d0ee7
Rename Downloads method names to remove the word "download" 2018-05-04 18:08:23 -07:00
Micah Lee
be36f3a4b6
Rename some images to reuse in ReceiveMode, and make new upload window button images 2018-05-04 17:57:30 -07:00
Micah Lee
3f624a4a27
Refactor ShareMode and Downloads to remove the Downloads container widget, and make Downloads itself the QScrollArea 2018-05-04 16:57:17 -07:00
Micah Lee
7b25ae1d6b
Remove --shutdown-timeout as an option for onionshare_gui, since GUI options are set in the settings dialog. Also fixed a bug where --local-only and --shutdown-timeout were not compatible in onionshare CLI 2018-05-04 16:43:30 -07:00
Micah Lee
e32e850548
Fix stay_open regression bug. Before, it was closing automatically even when the setting wasn't set. Also, remove the --stay-open option from the GUI, since GUI settings are set in the settings dialog not cli args 2018-05-04 16:35:32 -07:00
Micah Lee
dcea459580
Start building Uploads widget 2018-05-04 16:26:54 -07:00
Micah Lee
30c9f50d2e
Refactor ReceiveMode and Downloads, to push more download-related logic into Downloads 2018-05-04 16:06:24 -07:00
Micah Lee
ed28fdf123
Make receive mode info widget show when server is stated, hide when it is not started 2018-05-04 15:53:34 -07:00
Micah Lee
07152ad969
Start creating the information widget for receive mode, and refactor for share mode 2018-05-03 09:29:54 -07:00
Micah Lee
65dff32702
Make clicking the mode switcher buttons properly adjust the size of the window 2018-05-03 09:14:16 -07:00
Micah Lee
9a076635c5
Make the "download page loaded" and "upload page loaded" messages displayed as systray notifications instead of in the status bar, and make it work for Receive Mode 2018-04-29 16:41:05 -07:00
Micah Lee
4f89082f18
Add support for receive mode's "public mode", which doesn't use a slug. Still needs more testing 2018-04-29 16:33:48 -07:00
Micah Lee
6cfb7026da
Display desktop notification to the user when the receiver closes the server, and finish up closing the server 2018-04-29 15:49:18 -07:00
Micah Lee
6632a4b426
Add two new receive mode settings: receive_allow_receiver_shutdown and receive_public_mode 2018-04-28 21:08:53 -07:00
Micah Lee
2a7f6e0d5a
Make the quit warning work in receive mode, and use a different warning string 2018-04-28 15:23:57 -07:00
Micah Lee
1a4aaa70fa
Fix a race condition where the URL was sometimes getting copied to the clipboard before it was actually generated, causing a crash 2018-04-28 15:00:23 -07:00
Micah Lee
1456361566
Generalize the handling of Tor exceptions, more logging in Web 2018-04-28 13:59:36 -07:00
Micah Lee
5d037a78fa
Remove a log line that prints each timer_callback that I missed 2018-04-28 13:48:31 -07:00
Micah Lee
c1413ad7da
ReceiveMode was overloading timer_callback instead of timer_callback_custom 2018-04-28 13:41:15 -07:00
Micah Lee
74a799f0c1
Work in progress commit, moving the timer_callback logic from ShareMode into Mode so ReceiveMode can use it as well 2018-04-28 12:03:10 -07:00
Micah Lee
406515085e
Fixed crash when starting recieve mode server 2018-04-27 23:19:46 -07:00
Micah Lee
0996e8c064
Change the URL description in receive mode 2018-04-27 23:02:04 -07:00
Micah Lee
2e4db9eb31
Connect the right signals and slots for recieve mode, and now the receive mode server starts 2018-04-27 22:32:20 -07:00
Micah Lee
87d93c097f
Fix server status indicator 2018-04-27 22:20:12 -07:00
Micah Lee
ff55d7df75
Make OnionShareGui use the proper web object 2018-04-26 10:59:38 -07:00
Micah Lee
9e9f65572b
Instead of creating a Web object and passing it into OnionShareGui, now each mode creates its own separate Web object, instantiated in its own way 2018-04-26 09:30:53 -07:00
Micah Lee
4050977899
When you start receive mode, it now runs OnionShareGui.set_server_active, to hide the appropriate mode switchers buttons 2018-04-25 23:03:57 -07:00
Micah Lee
4c6b379889
Split out customization of Mode into _custom() functions, and implement those customizations in ShareMode 2018-04-25 22:59:26 -07:00
Micah Lee
4a1995ef55
Move a lot of logic from ShareMode into generic Mode 2018-04-25 22:14:23 -07:00
Micah Lee
691db6343d
Make ShareMode and ReceiveMode inherit from the same class, Mode 2018-04-25 21:54:28 -07:00
Micah Lee
df346ad0ab
Add receive mode warning 2018-04-25 20:50:56 -07:00
Micah Lee
81382318dc
Forgot to change args passed into ServerStatus 2018-04-25 20:22:29 -07:00
Micah Lee
996f1d3a81
Make different strings for start server button for different modes 2018-04-25 20:14:27 -07:00
Micah Lee
2fc4330ee4
Add ServerStatus to ReceiveMode, and update the server status indicator to have receive statuses too 2018-04-25 09:46:49 -07:00
Micah Lee
10581b1421
Bugfix, settings was throwing an error and quitting when Tor was authenticated, not when it was not authenticated 2018-04-25 09:13:05 -07:00
Micah Lee
edd5d4f78c
Bugfix, TorConnectionDialog was getting instatiated with the wrong arguements 2018-04-25 09:08:50 -07:00
Micah Lee
f149530834
Move more logic from OnionShareGui into ShareMode, when reloading settings 2018-04-25 08:49:43 -07:00
Micah Lee
dd7d97dbbb
Allow changing downloads_dir from SettingsDialog 2018-04-25 08:43:40 -07:00
Micah Lee
a017af0748
Make ShareMode and ReceiveMode directories, and move ShareMode modules into its dir 2018-04-24 17:26:54 -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
86fa0215d8
Fix small --local-only bug that causes a crash when canceling settings 2018-04-23 21:16:10 -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
4af80de17b
Merge branch 'develop' into receiver-mode 2018-04-23 08:52:48 -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
a53d3188dd
Put test Tor button in a so it can be left-aligned 2018-04-22 17:20:58 -07:00
Micah Lee
87d29a9171
Rearrange some widgets in the settings dialog, specifically move the bridge options above the test Tor settings button 2018-04-22 17:15:15 -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
aaa860921a
Merge branch '657_meek_warning' of https://github.com/mig5/onionshare into mig5-657_meek_warning 2018-04-22 15:31:45 -07:00
Micah Lee
16eab5e850
Add a stretch at the bottom of the downloads window, so that progess bars are always lined up at the top 2018-04-22 15:25:28 -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
irykoon
ebd0416f1d
Support meek_lite Pluggable Transports on Windows and Mac
According to https://lists.torproject.org/pipermail/tor-announce/2018-March/000153.html: Tor Browser 7.5.1 includes obfs4proxy (0.0.7), which supports meek_lite Pluggable Transports.

Therefore, undo: https://github.com/micahflee/onionshare/pull/649
2018-03-14 16:16:56 +00:00
Micah Lee
929ad58ebd
Fix bug with validating filenames from args in GUI 2018-03-14 08:34:43 -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
Micah Lee
0cec696055
Refactor web.py to move all the web logic into the Web class, and refactor onionshare (cli) to work with it -- but onionshare_gui is currently broken 2018-03-05 11:06:59 -08:00
Micah Lee
cd1a1d9638
Web needs to know about receive mode, not the OnionShare object 2018-03-05 08:48:04 -08:00
Micah Lee
18ac830a9e
Add command line flag for receive mode 2018-03-05 07:45:10 -08:00
Miguel Jacq
a71786d024
Warn about the costs of using meek_lite bridges 2018-03-05 13:52:50 +11: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
Miguel Jacq
022ed03287
Uninstantiated system variable 2018-02-26 14:02:15 +11:00
Miguel Jacq
b513c59542
Hide the meek_lite options on macOS and Windows, as the obfs4proxy binary in TorBrowser is too old to support it 2018-02-26 13:48:28 +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
fce26c4286
Add ability to abort but not exit SettingsDialog/reconnect to Tor, on invalid settings. Do this for invalid bridges 2018-02-25 19:42:38 +11: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
b75237dcea
Fix typo bug that is only triggered if obfs4proxy binary is not found 2018-02-24 14:09:42 -08:00
Miguel Jacq
dface51dd0
Merge pull request #588 from micahflee/ux-update
Major user experience update
2018-02-25 08:27:46 +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
Micah Lee
7bf9c5adfd
Change how FileSelection.update tells if items are selected to correctly show and hide the delete button 2018-02-23 14:18:57 -08:00
Micah Lee
a83a920051
Merge branch '523_try_update_check_via_v3_onion' of https://github.com/mig5/onionshare into mig5-523_try_update_check_via_v3_onion 2018-02-23 11:53:55 -08:00
Miguel Jacq
161e7e380b
Fix get_num_files() to count the items in the QListWidget, not in the FileSelection QVBoxLayout widget 2018-02-23 12:46:18 +11:00
Miguel Jacq
ade9a452a3
Remove our custom stylesheeting, and just trim long names, allowing them to untrim as the window resizes 2018-02-23 10:49:43 +11:00
Micah Lee
1967d50707
Make the item-info boxes have an obvious style 2018-02-22 10:02:52 -08:00
Micah Lee
22c301fd9c
Stop trimming filenames, and instead create item info with a white background 2018-02-22 09:55:04 -08:00
Miguel Jacq
6998aec50a
Force a scrollbar on the file list widget. Not pretty but avoids weird text disappearance on resize when scrollbar otherwise activates 2018-02-22 14:44:00 +11:00
Miguel Jacq
9215651582
Remove the item_name QLabel widget and just let the QListWidgetItem text() display as title. Trim super-long filenames 2018-02-22 14:37:31 +11:00
Miguel Jacq
6815665f1d
Instantiate empty filenames list 2018-02-21 15:47:21 +11:00
Miguel Jacq
fd4bc51ec2
fix appending of filenames when checking that a file hasn't already been added to the list 2018-02-21 15:29:56 +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
irykoon
53510bf43e
Take care of custom vanilla bridges
Thank you @mig5 for pointing this out.
2018-02-20 03:25:43 +00:00
Micah Lee
3d1c0eabc4
Merge branch 'develop' into mig5-info_widgets_download_info 2018-02-19 18:02:51 -08: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
Micah Lee
0eef5cdba0
Merge branch 'increase_file_list_minimum_height' of https://github.com/mig5/onionshare into mig5-increase_file_list_minimum_height 2018-02-19 17:39:47 -08:00
irykoon
d03ad0ab30
Adopt a more robust RE for custom obfs4 IPV6 bridges 2018-02-20 01:33:58 +00:00
irykoon
2cdfcea241
Adopt a more robust RE for custom obfs4 bridges 2018-02-20 01:26:02 +00:00
irykoon
02c16ce179
Add meek_lite support for custom bridges 2018-02-20 01:24:44 +00: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
Miguel Jacq
f0b3c25ce4
Increase the MinimumHeight of the FileList widget to avoid disappearing icons 2018-02-18 16:22:04 +11:00