Commit Graph

355 Commits

Author SHA1 Message Date
Micah Lee
24ccb3995f
Fix UpdateChecker and UpdateThread to work with refactor, now it pops up an update reminder 2017-05-16 17:29:02 -07:00
Micah Lee
010bddb066
When saving settings, if Tor settings changed or if Tor isn't connected, reboot the Onion object, so that it's always connected to Tor when using the app 2017-05-16 16:50:33 -07:00
Micah Lee
eb708973c8
Disable settings while an OnionShare server is active 2017-05-16 15:41:35 -07:00
Micah Lee
3e3d669a49
Remove the menu bar, and replace it with a settings button owned by the OnionShareGui object 2017-05-16 15:24:14 -07:00
Micah Lee
22fb34d50d
Fixed signal/slot/thread issue in TorConnectionDialog and TorConnectionThread, and updated the language of bundled Tor error messages 2017-05-16 13:09:27 -07:00
Micah Lee
f90d49fa4b
Added debug logging to OnionShareGui, SettingsDialog, TorConnectionDialog, and Alert objects 2017-05-16 11:31:52 -07:00
Micah Lee
7003349873
Add log() method to onionshare.common, which logs to stdout if in debug mode 2017-05-16 11:12:55 -07:00
Micah Lee
1591888863
Renamed onionshare.helpers module to onionshare.common 2017-05-16 11:05:48 -07:00
Micah Lee
219c4351e1
Pass debug into the Onion and OnionShareGUI objects 2017-05-16 10:57:59 -07:00
Micah Lee
a9e822b222
Make UpdateChecker use the shared Onion object instead of creating a new one 2017-05-14 19:54:12 -07:00
Micah Lee
58f70b1d9b
Now when you cancel connecting to Tor, it prompts you if you want to quit or open settings 2017-05-14 19:21:33 -07:00
Micah Lee
ad2c5e94b4
OnionShare connects fine when connection_type isn't bundled_tor, and it now displays errors and opens Settings when it can't connect to Tor 2017-05-14 18:46:54 -07:00
Micah Lee
2ca92c52db
Move owernship of the TorConnetionDialog objection from __init__.py into the OnionShareGUI class, and make it so when the Tor connection gets canceled, OnionShare quits 2017-05-14 18:30:45 -07:00
Micah Lee
dc23946fe8
Fixed various issues introduced by creating an singleton Onion object and passing it into the OnionShare object 2017-05-14 17:21:13 -07:00
Micah Lee
18ad436ee2 Move OnionShareGui into its own file, so __init__ is just GUI logic 2017-04-17 19:36:02 -07:00
Micah Lee
db052ce85f
Moved onionshare and onionshare_gui logic directly into __init__.py files 2017-01-06 19:00:08 -08:00
Micah Lee
f8005a63ea
Change GPL copyright from 2016 to 2017 2017-01-06 18:58:15 -08:00
Micah Lee
0ab29ff8af
When a share is active, disable the full advanced options group, not just the stealth checkbox 2016-12-29 14:35:57 -08:00
Micah Lee
cd63dc37f1
Remove the alert function, replace it with the Alert class 2016-12-29 14:23:19 -08:00
Micah Lee
a0abab3653
Make automatic settings work with with Tor Browser 6.0.8 2016-12-29 12:57:58 -08:00
Micah Lee
fa7bec2fae
Handle new Tor controller errors in GUI 2016-12-29 10:34:40 -08:00
Micah Lee
00b0ce443c
Add a menu bar, with a stub for Settings, and Quit 2016-12-28 15:55:31 -08:00
Sigma
4f9016ff51 Fix for zipprogress bar qwidget access from a thread, which is invalid as qwidgets are neither reentrant nor thread safe. Fixes issue #334 2016-12-26 12:57:18 -08:00
Micah Lee
6eed7258a7
Properly handle errors for using stealth onion services in the GUI, instead of crashing in the background (#144) 2016-12-23 19:08:18 -08:00
Micah Lee
286573bda5
Added support for stealth onion services in the GUI version 2016-12-22 17:47:05 -08:00
Micah Lee
eb00a29ca7
Merge branch 'master' of https://github.com/eightnoteight/onionshare into eightnoteight-master
Conflicts:
	onionshare/web.py
	onionshare_gui/onionshare_gui.py
	resources/locale/cs.json
	resources/locale/eo.json
	resources/locale/nl.json

This merge required quite a bit of refactoring because.
2016-12-22 16:00:06 -08:00
Micah Lee
4bafd1eb2a
Hide downloads progress bars until download starts, and improve the look of progress bar display 2016-12-22 15:15:37 -08:00
Micah Lee
28df4e40c5
Merge branch 'wrap-progress-bar' of https://github.com/choltz95/onionshare into choltz95-wrap-progress-bar 2016-12-22 14:43:03 -08:00
Micah Lee
373f24e64b
Sleep between launching threads in onionshare-gui, preventing a cx_Freeze crash related to loading the same modules in multiple threads while they're locked 2016-09-06 13:27:59 -07:00
Micah Lee
7a46336149
Enable stdout in Windows, OSX CLI versions (#305) 2016-09-06 12:09:10 -07:00
Micah Lee
590edc5d6d Make onionshare GUI use separate thread for starting onion service with await_publication=True, to avoid non-responsive window 2016-09-05 12:29:58 -07:00
Micah Lee
b7d1a7339c
Refactor onionshare GUI to use await_publication=True when using ephemeral onion services 2016-09-05 11:36:41 -07:00
Micah Lee
1372239ed7
Renamed hs to onion 2016-09-05 11:16:54 -07:00
Micah Lee
bba46e088f
Merge branch 'master' into cx_Freeze 2016-09-04 17:23:27 -07:00
Micah Lee
dbf4af02ac Pass helpers into strings.load_strings instead of importing it, so fix issue with cx_Freeze in Windows 2016-09-04 20:09:18 -07:00
Micah Lee
310d861ce0
Stop saying 'hidden service', start saying 'onion service' 2016-09-04 17:23:06 -07:00
Srinivas Devaki
3b11f4d382 small refactoring 2016-08-24 02:15:58 +05:30
Srinivas Devaki
c570d7ea77 added progress bar for zipping files 2016-08-24 01:43:21 +05:30
choltz95
6379ca5e48 very poor auto scrolling 2016-08-02 23:46:13 -04:00
choltz95
d0f085f756 reorganize, add comment 2016-08-02 16:43:40 +00:00
choltz95
b1dd45a94b wrap progress bar 2016-08-02 01:43:17 -04:00
Micah Lee
d35b5a9acd Added rate-limiting to GUI. After 20 404 errors, server automatically stops (#238) 2016-04-12 16:49:46 -07:00
Micah Lee
e81f809882 Move all resources (locale, images, html, version.txt) into central resources dir, and clean up logic to find absolute paths to resources 2016-04-12 15:14:02 -07:00
Micah Lee
229603eb7d Localize quit confirm button text (#264) 2016-04-11 10:08:24 -07:00
Micah Lee
cb3d39fb4f Confirm when user tries to close the GUI window (fixes #264) 2016-04-10 19:28:22 -07:00
Micah Lee
7b8e9e1e6f Closing the GUI window causes any current download to stop immediately (fixes #262) 2016-04-10 17:43:37 -07:00
Micah Lee
683610e962 Update copyright year to 2016 2016-02-15 22:37:28 -08:00
Micah Lee
deac54db92 Made sure switch to python3 and Qt5 works in OSX (#261). Updated OSX instructions in BUILD.md. 2016-02-12 15:45:26 -08:00
Micah Lee
62c69c4c0b Porting onionshare GUI from python2 to python3, and also from PyQt4 to PyQt5 (#261). This commit ports onionshare_gui. 2016-02-12 15:12:27 -08:00
Micah Lee
e199946a8d Display version string automatically in CLI, and in the status bar in GUI (#251) 2016-02-12 11:00:35 -08:00
Micah Lee
3c3ea6faf3 Merge branch 'eta' of https://github.com/garrettr/onionshare into garrettr-eta 2016-02-12 08:36:46 -08:00
Micah Lee
4c40b89faf Merge pull request #245 from garrettr/wait-for-ephemeral-hs
Revert to using wait_for_hs for ephemeral HS
2016-01-05 18:37:44 -08:00
Garrett Robinson
ea47e80f14 Add estimated time remaining to progress indicator
Estimates the time remaining for each download and displays it in the
progress bar. Waits for 10 seconds before showing the progress bar to
allow the download rate to stabilize, which prevents the estimated time
remaining from jumping all over the place at the start of the download
(a.k.a the "Windows copy dialog experience"). If your download takes
less than 10 seconds, you don't really need to see an ETA anyway.

This commit also refactors the Downloads class, splitting out the
download-specific functionality into a new Download class, providing
better encapsulation. As a result, I was able to simplify the call to
`update_download` because it was no longer necessary to pass the
`total_bytes` (which don't change after the download has begun).

Tested on Mac OS 10.9.
2015-12-23 01:05:30 -05:00
Garrett Robinson
9d5ba9b4f6 Revert to using wait_for_hs for ephemeral HS
Using `await_publication = True` blocks inside stem until the hidden
service is published, which makes OnionShare appear to hang. This is a
quick fix that reverts to using `wait_for_hs` for ephemeral hidden
services (as well as non-ephemeral hidden services), which avoids
blocking OnionShare.
2015-12-22 23:09:30 -05:00
Garrett Robinson
a54443084c Remove unnecessary status_bar.showMessage
status_bar.showMessage is already called with the same message at the
beginning of start_server, so there is no reason to call it again in the
try block.
2015-12-22 22:03:29 -05:00
Micah Lee
4cfffbf847 Don't access self.hs when using --local-only in GUI 2015-12-04 13:19:21 -08:00
Micah Lee
f4780813d6 Decorator is expecting argument to be named slug_candidate, not shutdown_slug_candidate (#200) 2015-12-04 13:17:45 -08:00
Micah Lee
ce79633eec "Stop sharing automatically" checkbox respected in GUI when toggled before the server is started (fixes #223) 2015-11-20 13:43:19 -08:00
Micah Lee
dc58921187 Add docstrings to all classes and methods (fix #198) 2015-11-15 19:01:20 -08:00
Micah Lee
fd39f84bff Merge branch 'master' into ephemeral
Conflicts:
	onionshare/helpers.py
	onionshare/onionshare.py
2015-11-15 15:35:59 -08:00
Micah Lee
ecb8128f91 Merge pull request #217 from effigies/ctrlq
Clean up and exit on Ctrl-Q
2015-11-08 12:52:12 -08:00
Christopher J. Markiewicz
89c363d247 Clean up and exit on Ctrl-Q 2015-11-06 20:43:37 -05:00
Micah Lee
55c4c0fac1 Updated onionshare-gui to support ephemeral hidden services 2015-09-08 18:12:24 -07:00
Micah Lee
bbee1599c5 Updated copyright year to 2015 2015-09-07 21:48:49 -07:00
Micah Lee
5d37d9b7b2 Removed all of the Tails-specific code. If we use ephemeral hidden services, we no longer need to touch the filesystem, and hopefully no longer need root in Tails. 2015-09-07 21:44:29 -07:00
Lazlo Westerhof
7446cee655 Fix some codestyle issues according to pep8. 2015-06-26 19:38:22 +02:00
Micah Lee
3073ec8a76 must load the window_icon before validation, because alert() requires it 2015-06-16 10:54:18 -07:00
Micah Lee
a86cda4549 Ripping out dmg code, replacing pyinstaller with py2app for OSX -- still in progress (#151) 2015-05-15 16:56:22 -07:00
Micah Lee
669750be37 specify types in all str.format() calls (fixes #169) 2015-05-15 12:26:58 -07:00
Thomas Waldmann
aa2b59ec5d pep8: 2 spaces before inline comments 2014-11-18 18:37:17 +01:00
Thomas Waldmann
63965fd2d9 pep8: blank after comma and colon 2014-11-18 18:35:09 +01:00
Thomas Waldmann
179eefae29 pep8: fix empty line counts
top level: 2, else 1

I also advice to not put "pass" into empty classes, but rather a docstring instead of "pass".
2014-11-18 18:29:32 +01:00
Micah Lee
f5ddd23b70 handles canceled downloads properly (fixes #81) 2014-09-22 20:22:30 +00:00
Micah Lee
43a24a19d2 split starting server status message into three verbose chunks 2014-09-22 19:19:24 +00:00
Micah Lee
4f6cff6503 warns about sending large files in GUI (#123) 2014-09-18 01:35:30 +00:00
Micah Lee
89581b0a03 encode one way for CLI, encode another for GUI (#141) 2014-09-16 02:09:37 +00:00
Micah Lee
3c071ce500 don't try stopping the web app if it hasn't started 2014-09-03 17:56:10 -07:00
Micah Lee
d00b296c47 moving image files into /usr/share instead of /usr/lib (fixes #126) 2014-09-03 17:50:06 -07:00
Micah Lee
8d01ad7ec6 moved images to subfolder (#126) 2014-09-03 17:36:03 -07:00
Lazlo Westerhof
7c9dbb0caf Fix missing window icon 2014-09-03 20:56:46 +02:00
Micah Lee
2c1534979e squash bug in closing Flask web server (fixes #131) 2014-09-03 00:11:25 -07:00
Micah Lee
4edcce9ece add utf-8 encoding to all .py files 2014-09-02 17:30:01 -07:00
Micah Lee
a6e99fcc21 added GPLv3 license to each source file 2014-09-02 12:10:42 -07:00
Micah Lee
c49cc75a55 fixed Tails bug where if you stopped server in GUI, you could not start a new server again 2014-08-30 01:42:17 +00:00
Micah Lee
cf52c2dcd0 fix bug caused by refactoring that made Tails launch infinite onionshare processes (oops) 2014-08-30 01:10:58 +00:00
Micah Lee
0858366e31 remove gui_mode from web app, because it is no longer useful 2014-08-29 16:06:13 -07:00
Micah Lee
e90d90b7d5 keep some status bar messages around for longer 2014-08-29 15:57:44 -07:00
Micah Lee
d1cd3c83ab added status bar to GUI, populated it with useful status messages 2014-08-29 15:43:07 -07:00
Micah Lee
6688ced698 waits for hs to be ready in GUI too (#116) 2014-08-29 14:35:25 -07:00
Micah Lee
846b10b755 waits for hidden service before displaying URL. fixes #116 2014-08-29 14:32:19 -07:00
Micah Lee
9ed128938f does starting server work in a separate thread to keep GUI responsive 2014-08-28 16:16:41 -07:00
Micah Lee
2da38ce775 catches exception when Tor is not open and trying to close server when it's not running 2014-08-28 00:01:55 -07:00
Micah Lee
fcdcfd7c39 added download progress bars to GUI, and made close automatically act as stop server automatically 2014-08-27 23:52:56 -07:00
Micah Lee
5325b7b173 made it so clicking Start Server actually starts the server, and made the URL fields hide/show appropriately, and the Copy URL button work 2014-08-27 19:07:15 -07:00
Micah Lee
349ca67cc9 server can be started and stopped from the GUI 2014-08-27 17:52:45 -07:00
Micah Lee
9cb1871b02 close automatically checkbox respects --stay-open argument again 2014-08-27 17:27:54 -07:00
Micah Lee
49eac35196 FileSelection and ServerStatus interact together, disabling buttons when appropriate 2014-08-27 17:24:44 -07:00
Micah Lee
db6600cb71 beginning Options layout 2014-08-27 16:46:19 -07:00
Micah Lee
e7af77b3f7 beginning Downloads layout 2014-08-27 16:43:18 -07:00
Micah Lee
d519e62b93 beginning ServerStatus layout 2014-08-27 16:11:43 -07:00
Micah Lee
78f6c31061 beginning to refactor onionshare_gui to work with multiple files (#66) 2014-08-27 14:21:08 -07:00
Micah Lee
eebcdfb81e refactored onionshare_gui to work with new refactored onionshare 2014-08-26 19:04:39 -07:00
Micah Lee
805522be36 Merge branch 'master' of https://github.com/canerbasaran/onionshare into canerbasaran-master
Conflicts:
	onionshare_gui/onionshare_gui.py
2014-08-26 16:59:48 -07:00
Micah Lee
0bc778437d refactored cleanup handlers to use a queue, so they will work with the GUI 2014-08-26 15:44:44 -07:00
Micah Lee
ab9e69b573 Merge pull request #111 from lazlolazlolazlo/localhost
Fix displaying of local host
2014-08-26 15:19:44 -07:00
Lazlo Westerhof
fe92ca4311 Fix displaying of local host 2014-08-23 00:01:44 +02:00
Lazlo Westerhof
1366d45e65 Fix close automatically 2014-08-22 23:07:39 +02:00
Micah Lee
4284476902 moved several english strings into strings.json for translation 2014-08-20 14:45:24 -07:00
Micah Lee
6617063143 in Tails, root stuff is launched in separate process in GUI (#96) 2014-08-20 21:30:28 +00:00
Lazlo Westerhof
141707785f First working version of native qt app 2014-08-14 16:37:33 +02:00
brn
85c72f1980 Solved Issue #80 UnicodeEncodeError 2014-08-01 20:04:17 +03:00
Micah Lee
2edde2eb1f Encoded strings passed to constant_time_compare as ascii, because it was
throwing errors in OSX. Also added --debug to command line version, and made onionshare server
log errors as well as the GUI.
2014-07-07 17:01:51 -07:00
Micah Lee
126200c9c1 Merge pull request #62 from enotodden/master
Add new norwegian strings and  fix unicode issues.
2014-06-26 16:05:21 -07:00
Micah Lee
6503f2afa1 implemeted debug mode. fixes #50 2014-06-26 19:02:59 -04:00
Espen Kåsa Notodden
4e5eb62dca Merge branch 'master' of https://github.com/micahflee/onionshare 2014-06-26 22:51:20 +02:00
Espen Kåsa Notodden
10f8600e54 use the translated() function in onionshare_gui 2014-06-26 22:37:25 +02:00
Micah Lee
5f627dc9e4 passing webapp the debug flag (#50) 2014-06-26 14:56:29 -04:00
Micah Lee
d0d4cebbff fixed bug where hidden service still closed even if "close automatically" unchecked in GUI (#58) 2014-06-26 14:45:18 -04:00
Micah Lee
8fce3adeb5 made --stay-open work in GUI (#58) 2014-06-26 14:31:29 -04:00
Micah Lee
c74e259fb4 made --local-only work in GUI (#58) 2014-06-26 14:26:41 -04:00
Micah Lee
2b8be2781c adding argparse to GUI (#58, also #50) 2014-06-26 14:22:32 -04:00
Micah Lee
9db3ca59c8 made pyinstaller work for OSX (#43) 2014-06-25 14:42:39 -07:00
Micah Lee
272092f877 can now run onionshare_gui.py without building (fixes #51) 2014-06-22 00:54:44 -04:00
Micah Lee
ce15a79302 window icon works now. fixes #49 2014-06-20 21:15:46 -04:00
Micah Lee
ef1767f350 adding window icon (#49) 2014-06-20 20:57:32 -04:00
Micah Lee
38f073b6c7 start QApplication before doing other Qt stuff 2014-06-19 21:13:55 -07:00
Micah Lee
f0e170913a set Qt.AA_X11InitThreads in Linux, to prevent horrible thread-related crashes 2014-06-19 23:00:36 -04:00
Micah Lee
9ff94d3ca4 resort to static height, to put the scrollbar in the right place 2014-06-19 22:39:48 -04:00
Micah Lee
4c80591cc0 clean up onionshare_gui to be more Qt-ish 2014-06-19 21:46:22 -04:00
Micah Lee
800a4edb6e start the webapp thread in a QThread instead of using threading 2014-06-19 21:16:22 -04:00
Micah Lee
5865fd60ea set window title, resize window by default 2014-06-19 20:28:55 -04:00
Micah Lee
f18543d7c7 changed css to fit any window size 2014-06-19 17:51:17 -04:00
Micah Lee
03d2053eff ported alert to Qt 2014-06-19 16:51:40 -04:00
Micah Lee
ff7791939b ported select_file to Qt 2014-06-19 16:36:49 -04:00
Micah Lee
1c59072a2b beginning to rip out gtk and replace with Qt 2014-06-19 16:19:46 -04:00
Micah Lee
e72f66b73a added filename to title bar (fixes #45) 2014-06-11 21:33:52 -04:00
Micah Lee
86d835f291 onionshare closes automatically (if box is checked) when download finishes. fixes #36 2014-06-11 20:53:19 -04:00
Micah Lee
7902a3857d open the webapp port on tails as well (#42) 2014-06-10 22:10:40 +00:00
Micah Lee
a44216428f onionshare-gui forces root in Tails now too, and file chooser defaults to ~/ (#42) 2014-06-10 22:07:53 +00:00
Micah Lee
6603f3be39 remaking the GUI 2014-06-08 13:15:39 -04:00
Micah Lee
67ea5b5c2c refactored GUI to use a second flask server for communication 2014-06-06 21:20:57 -04:00
Micah Lee
9daa475cc0 removed #! lines, since onionshare_gui.py and webgui.py aren't executable 2014-06-06 18:05:29 -04:00
Micah Lee
1a6f08a846 waiting slightly longer for webkit to initialize, because sometimes it's not ready after 0.1 sec 2014-05-31 20:16:03 -04:00
Micah Lee
cebdb27a0d default to not printing debug data 2014-05-30 23:17:15 -04:00
Micah Lee
906eeccb54 running async startup work in a separate thread, and design tweaks 2014-05-30 23:12:52 -04:00
Micah Lee
23f9a577fe made a "Copy URL" button, and improved design 2014-05-30 22:29:07 -04:00
Micah Lee
6ad85f3e64 onionshare-gui automatically copies URL to clipboard 2014-05-30 21:43:04 -04:00
Micah Lee
4868a9155b started web server in separate thread. organized file info, so it can be set from both cli and gui. 2014-05-30 21:25:26 -04:00
Micah Lee
837533e9c6 gui now handles NoTor successfully, and cleaned up business logic in both cli and gui 2014-05-30 21:03:53 -04:00
Micah Lee
90244d18f2 added ability for onionshare_gui to alert messages, and made selecting filename less brittle 2014-05-30 20:46:24 -04:00
Micah Lee
fa433b6144 removed unused my_quit_wrapper function, and run tails shutdown code 2014-05-29 23:27:40 -04:00
Micah Lee
9d7689f578 starting to build onionshare functionality into GUI 2014-05-29 23:23:40 -04:00
Micah Lee
3deab0dc40 rearranged onionshare_gui files, made it work better with packaging 2014-05-29 22:53:35 -04:00
Micah Lee
d3c4bb3e93 created a working web gui with message passing 2014-05-29 22:31:28 -04:00
Micah Lee
0f53d45489 making a webkit GUI, roughly based on http://www.aclevername.com/articles/python-webgui/ 2014-05-29 21:05:30 -04:00