Commit Graph

893 Commits

Author SHA1 Message Date
Miguel Jacq
273b893946
Don't show the IndividualFile History item if we are not in 'stay open' mode, or else 404 requests create History noise 2019-09-03 12:35:30 +10:00
Miguel Jacq
173b2d3f5e
Register a history item when an individual file is viewed that does not match a 'reserved' path 2019-09-02 18:01:56 +10:00
Micah Lee
877a73ab59
Remove the "Allow downloading individual files" setting altogether, and make it just automatically enabled if "Stop sharing..." is disabled 2019-09-01 21:22:59 -07:00
Micah Lee
1c465b40fe
Add new "Allow downloading of individual files" checkbox to share settings, and only allow it to be enabled when "Stop sharing after files have been sent" is unchecked 2019-09-01 20:15:30 -07:00
Micah Lee
e7959f9ae6
Add Web.generate_static_url_path back, so each share has its own static path 2019-09-01 16:03:57 -07:00
Micah Lee
973db941ec
Move all mode-specific code out of SendBaseModeWeb and into inherited methods in WebsiteModeWeb and ShareModeWeb 2019-09-01 18:44:44 -04:00
Micah Lee
d7441af368
If ONIONSHARE_HIDE_TOR_SETTINGS is set, hide Tor settings in the settings dialog 2019-09-01 13:16:00 -07:00
hiro
66e85497ef Revert "Generate a new static_url_path each time the server is stopped and started again"
This change creates problems with how website mode renders assets.
This reverts commit 50b2311409.
2019-06-13 22:56:48 +02:00
Micah Lee
50b2311409
Generate a new static_url_path each time the server is stopped and started again 2019-05-29 18:21:53 -07:00
Micah Lee
c53ecb0a03
Merge branch 'develop' into basic_auth_everywhere 2019-05-24 18:13:44 -07:00
hiro
f56b148ddb Resolve bugs from initial PR 2019-05-24 10:08:51 +02:00
Micah Lee
7d89f80f20
Rename "slug" to "password" 2019-05-20 22:18:49 -07:00
Micah Lee
b667fcc4f8
Fix onionshare URLs non-public mode is always http basic auth 2019-05-20 19:22:03 -07:00
Micah Lee
29abfd8f87
This should be an elif, not an if, because otherwise the share mode stop button says "Stop Receive Mode" 2019-05-20 19:14:04 -07:00
Micah Lee
79b87c3e30
Add an error 401 handler, and make it start counting invalid password guesses instead of 404 errors for rate limiting 2019-05-20 19:04:50 -07:00
Micah Lee
915ff0f4f3
Remove references to self.web.website_mode.download_filesize because that variable no longer exists 2019-05-10 14:57:41 -07:00
hiro
abc30b315c Clean code and fix UI bugs 2019-05-08 00:04:09 +02:00
hiro
357374c147 Fix merge conflicts with upstream 2019-04-23 16:20:33 +02:00
hiro
0c6dbe4c8a Clean ui, add strings, fix web listing logic 2019-04-23 16:11:14 +02:00
hiro
391c82f2a6 Add gui for website sharing and listing 2019-04-23 16:09:40 +02:00
Micah Lee
9471fb9781
Fix auto-start timer URL 2019-04-21 18:14:53 -07:00
Miguel Jacq
81108b06f3
Update the URL to the Auto-Start timer wiki page 2019-04-22 09:48:15 +10:00
Miguel Jacq
2c5a1d0365
Fix crash when clicking Help in Systray 2019-04-22 09:10:00 +10:00
Miguel Jacq
a7bbe818bf
Unlocalize CLI strings 2019-04-20 10:31:34 +10:00
Micah Lee
758c640561
Rename debug to verbose in all relevant places 2019-04-18 19:53:21 -07:00
Micah Lee
20ac3f005c
Update date format 2019-04-18 19:14:54 -07:00
Miguel Jacq
ee3a14a025
Standardise all startup_timer, scheduled_start attributes as 'autostart_timer' 2019-03-25 15:28:31 +11:00
Miguel Jacq
c411e8d61a
Standardise all shutdown_timer, shutdown_timeout, timeout attributes as 'autostop_timer' 2019-03-25 15:05:54 +11:00
Miguel Jacq
dae3e23652
Fix unsetting autostart timer after reloading settings 2019-03-24 18:16:29 +11:00
Miguel Jacq
2ebc22c5af
Fixes for displaying autostart timer countdown 2019-03-24 18:16:12 +11:00
Miguel Jacq
539be2ded3
Human-friendly autostart/autostop countdown timers on server button, tooltips 2019-03-24 17:53:13 +11:00
Miguel Jacq
281af5fc1a
Show the URL description label whenever we are showing the URL itself 2019-03-24 16:48:56 +11:00
Miguel Jacq
365798b12f
Various Startup Timer fixes for strings, bundled mode, stealth mode, startup/shutdown time clashes 2019-03-11 15:55:17 +11:00
Miguel Jacq
dc0fe4f7b1
Fix a minor corner case related to server status button when canceling a scheduled share. Leverage scheduled shares in order to test 'cancel' action in local mode for better test coverage 2019-03-08 11:03:37 +11:00
Miguel Jacq
00a8b88264
Prevent a scheduled share from starting after the scheduled time has passed. Add a test for this 2019-03-06 16:49:32 +11:00
Miguel Jacq
31c360b44d
Add a Startup Timer feature (scheduled start / dead man's switch) 2019-03-05 10:28:27 +11:00
Micah Lee
41f5800e0e
Merge pull request #906 from mig5/show_canceled_item_as_canceled
Update the GUI when the browser has canceled an upload in Receive Mode. Don't increment the completed counter
2019-02-17 10:07:34 -08:00
Miguel Jacq
8cf8aa201d
Use constants for history item status, to be consistent with other parts of the project 2019-02-17 17:42:25 +11:00
Miguel Jacq
759a0dc2a3
Set status attribute for ShareHistoryItems as well 2019-02-17 16:28:11 +11:00
Miguel Jacq
51e98f40e7
Update the GUI when the browser has canceled an upload in Receive Mode. Don't increment the completed counter 2019-02-17 15:49:37 +11:00
Miguel Jacq
9b35ca9bed
Don't clear in-progress transfers from the History list 2019-02-17 14:07:38 +11:00
Miguel Jacq
366509a75c
Re-order so persistence checkbox comes before legacy mode checkbox. Remove superfluous conditional 2019-02-11 16:23:47 +11:00
Miguel Jacq
7c71aef15b
Support persistent v3 onions 2019-02-11 11:36:18 +11:00
Micah Lee
2a949802d2
Separete onion settings into their own group, and remove css that was breaking the look of the "Copy HidServAuth" button 2019-01-28 20:30:05 -08:00
Micah Lee
b42f1c47b8
Fix crash that occurs when opening settings when both client authentication and persistence are enabled 2019-01-28 20:01:51 -08:00
Micah Lee
f4cd49e9dc
Merge branch 'develop' into 866_receive_mode_crash 2019-01-21 17:28:24 -08:00
Micah Lee
02538520a2
Skip updating or canceling items that haven't been added 2019-01-20 16:34:56 -08:00
Micah Lee
634b8ecebd
When canceling a receive mode transfer, display date range in the UI 2019-01-20 15:49:08 -08:00
Micah Lee
0ef0659e2f
Merge branch 'develop' into 866_receive_mode_crash 2019-01-20 15:42:09 -08:00
Micah Lee
4aa8a1d4c6
In SettingsDialog, rename downloads_layout to data_dir_layout 2019-01-20 15:33:33 -08:00
Micah Lee
b75757ee49
- Refactor the Web.ShareMode client_cancel variable to be Web.stop_q, a thread-safe queue that communicates to both share and receive mode when the user stops the server. In share mode this still stops sending the file. In receive mode, if there's a transfer in progress, it cancels it in the middle, and doesn't end up saving that file
- In receive mode, make the receive mode dir right before saving a file (so if it doesn't complete, don't make an empty dir)
- Minor UX tweak: resizing the window stretches the History widget first
2019-01-20 15:25:36 -08:00
Micah Lee
6e3b103ef5
Rename receive mode "downloads_dir" to the OnionShare "data_dir" 2019-01-20 11:46:20 -08:00
Micah Lee
b8f0d78954
Change many more strings to stop using 'download'/'upload' language 2019-01-19 20:56:09 -08:00
Micah Lee
3bbff7e85a
Finish removing web event REQUEST_CLOSE_SERVER, which used to be a receive mode feature to allow the Tor Browser user to close the server, but we removed 2019-01-19 20:43:25 -08:00
Micah Lee
a0c3a276ec
Fix bug in HistoryItem.get_finished_label_text 2019-01-19 19:33:36 -08:00
Micah Lee
862a0dc067
Rename images to remove upload/download references, and update more strings 2019-01-19 19:00:41 -08:00
Micah Lee
3ae1e04c0a
Updated language on key share/receive mode strings to remove the confusing upload and download words 2019-01-19 18:30:13 -08:00
Micah Lee
6c0de01f99
Merge pull request #853 from micahflee/847_fix_mac_css
Make settings dialog checkboxes line up in macOS
2018-12-21 10:38:38 -08:00
Micah Lee
c87e688d4c
Merge branch 'develop' of https://github.com/irykoon/onionshare into irykoon-develop 2018-12-20 14:07:47 -08:00
Micah Lee
e501bb4de8
Make settings dialog checkboxes line up in macOS 2018-12-20 14:02:52 -08:00
Micah Lee
043237bc20
Merge branch 'develop' into 406_osx_sandbox 2018-12-16 17:11:18 -08:00
Micah Lee
300434e5ec
Update settings dialog tests to use an OnionStub instead of an Onion, and test different states of tor (authenticate and not, supports v3 and not) 2018-12-05 23:05:25 -08:00
Micah Lee
16e301af8d
Don't actually check the 'Use legacy addresses' checkbox when it's hidden 2018-12-05 20:53:03 -08:00
Micah Lee
1d1efb7e54
Require tor 0.4.0.0 for v3 onion services (will change in the future). And update settings dialog so if the connected version of tor doesn't support v3 onions, then always show legacy options. If it does support v3 onions, allow 'Use legacy addresses' 2018-12-05 20:33:45 -08:00
Micah Lee
aadb2a01f0
Only show onion settings if there is a Tor connection 2018-12-05 20:14:52 -08:00
Micah Lee
c7ef1bba39
Merge pull request #752 from mig5/receiver-mode-gui-hold-timeout-share-open-til-upload-finished
Hold a share open if its timer has expired but a file is still uploading.
2018-12-05 09:13:54 -08:00
Miguel Jacq
d15e00061a
Keep the upload running in the GUI if the timer has run out 2018-12-05 18:19:35 +11:00
Micah Lee
3a0c8dc323
In macOS, split "Add" button into "Add Files" and "Add Folder" buttons 2018-11-27 12:10:16 -08:00
Micah Lee
6bfe9d4476
Merge pull request #763 from mig5/open_folder_uploads_macos_windows
Open folder containing uploads with the file selected, in macOS and Windows
2018-11-26 18:03:52 -08:00
Miguel Jacq
8182d24d55
Remove obsolete Download/Upload code that crept back in via an earlier merge 2018-11-27 10:50:11 +11:00
Miguel Jacq
d3b5e1e256
Merge develop branch and fix conflicts 2018-11-13 14:45:40 +11:00
Micah Lee
65b4afeba3
Communicate the receive mode dir to the GUI, so clicking the open folder button opens the file manager to the correct directory 2018-10-25 21:38:20 -07:00
Micah Lee
6233487ecd
Receive mode puts files in a directory based on the timestamp of the upload 2018-10-25 21:13:16 -07:00
Micah Lee
9812e75495
Merge pull request #810 from mig5/fix_timer_alert
Fix call to Alert() when an autostop timer has run out before starting the share
2018-10-16 22:16:35 -07:00
Miguel Jacq
386a8c5a2d
Fix call to Alert() when an autostop timer has run out before starting the share 2018-10-17 10:47:55 +11:00
Miguel Jacq
325980eede
Remove second arg from two calls to strings() 2018-10-15 17:33:21 +11:00
Miguel Jacq
86b537a4a6
Fix conflicts 2018-10-11 13:04:48 +11:00
Micah Lee
235fb84dfc
Fix various bugs so local GUI tests pass again after merges 2018-10-10 18:45:55 -07:00
Micah Lee
ac10b8899f
Merge branch '780_improved_ui' into 690_language_dropdown 2018-10-10 18:32:01 -07:00
Micah Lee
c541288227
Merge branch 'develop' into 690_language_dropdown 2018-10-10 18:25:28 -07:00
Micah Lee
753380663b
Final few tweaks to make this look perfect in macOS 2018-10-10 18:16:08 -07:00
Miguel Jacq
beda37df06
Remove commented out obsolete code 2018-10-10 18:09:43 +11:00
Miguel Jacq
85de803fda
Raise minimumHeight again to account for overlap issues on MacOS caused by Mac's Qt widget padding 2018-10-10 16:49:42 +11:00
Micah Lee
56e5c8b908
Add "download started" date/time to download history progress bars 2018-10-09 22:21:03 -07:00
Micah Lee
18f83589aa
Merge in develop 2018-10-09 21:32:28 -07:00
Micah Lee
90172c913b
Stop hiding the share mode info label when tor breaks 2018-10-09 21:18:26 -07:00
Micah Lee
b982a9a248
Actually, the window needs to be taller 2018-10-09 21:15:42 -07:00
Micah Lee
6227c6cbc5
Set min width and height so everything always looks good, and change onion address to monospace font 2018-10-09 20:51:10 -07:00
Micah Lee
9aa982563b
Remove one more reference to resize_window 2018-10-07 22:09:57 -07:00
Micah Lee
5a2ca669a1
Rip out all of the adjust size logic and let Qt just handle it 2018-10-07 22:07:19 -07:00
Micah Lee
50c0d91c57
Missing imports 2018-10-07 21:57:45 -07:00
Miguel Jacq
49e371d503
adjust widget sizes when switching mode 2018-10-07 21:47:28 -07:00
Micah Lee
bc8759bc77
Properly close items inside the item list, instead of just hiding them 2018-10-07 21:46:16 -07:00
Micah Lee
656784dfa9
Remove obsolete ReceiveModeInfo file 2018-10-07 21:28:10 -07:00
Micah Lee
c9beb694f2
Update ReceiveMode to use History directly, and now all GUI tests pass 2018-10-07 21:14:20 -07:00
Micah Lee
38e62d8528
The History header is now only shown if there are items again, and the clear history button resets everything. Also, reset hides individual items because, for some reason, they still show up otherwise. 2018-10-07 18:20:32 -07:00
Micah Lee
bc573209d9
Delete Info widget, and move completed and in progress widgets into the header of history 2018-10-07 18:09:02 -07:00
Micah Lee
484c33902f
Make ShareMode just use a History object directly, instead of defining its own Downloads class 2018-10-07 17:35:15 -07:00
Micah Lee
5a8cb2ac9d
In ShareMode, remove the ShareModeInfo widget and replace with a customized ToggleHistory widget 2018-10-07 15:20:22 -07:00
Micah Lee
801d8b965c
Move ShareMode and ReceiveMode into Mode module 2018-10-07 14:54:51 -07:00
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