Commit Graph

49 Commits

Author SHA1 Message Date
DC
28c386d916 Fix file list enabled/disabled logic
* Files that are either 100% downloaded OR streamble should be enabled
* Disabled files should not be clickable

This fixes both bugs.
2016-04-06 02:55:41 -07:00
DC
aac862cddf Only show play button for torrents that are playable 2016-04-06 02:55:40 -07:00
DC
85b6ca0639 Fix player flakiness
* No more pause icon in the file list
* Reset state.playng completely after each play
* Fixes #318: false "cannot add dupe torrent" error
2016-04-06 00:58:34 -07:00
DC
6447966e91 Hide DL status on paused torrents
Fixes #309
2016-04-05 19:27:39 -07:00
DC
db9e3e90c5 WebTorrent process
* Separate hidden window, with its own renderer process, for WebTorrent
  (Must be a window. You cannot run WebRTC at all in a Web Worker, and you can't
   run it well in a node process like the electron main process.)

* Disabled the create-torrent-modal for now. That gives us a consistent UX
  regardless of whether the user dragged files or folders onto the app or opened
  the Create New Torrent menu item.

* Main process routes all messages between the main and webtorrent windows.

* The renderer index.js is smaller now (but still too big), with the WebTorrent
  interface moved to webtorrent.js / it's own process.

* The UI should be faster now, and should not lag under load.
2016-04-05 15:36:26 -07:00
DC
15242666ce UI: Pending torrent is not necessarily from magnet link 2016-04-01 03:54:17 -07:00
DC
742061183b Show new files immediately when seeding
Fixes #208
2016-03-31 08:07:55 -07:00
DC
3617c17300 Memoize event handlers
Stop virtualdom from swapping out every event handler on every update
2016-03-27 02:58:26 -07:00
Feross Aboukhadijeh
eb59c11f85 Resolve posterURL and torrentPath at runtime
Fixes bug where posters and torrent files can’t be found in the built
app.
2016-03-27 02:10:58 -07:00
Feross Aboukhadijeh
c7ee0aab01 Merge pull request #233 from Flet/torrent-context-menu
add context menu with share/save actions
2016-03-27 00:39:15 -07:00
DC
906da4d977 Speed up init() by >= 2x
Lazy load the WebTorrent, Chromecast, and Airplay modules
2016-03-26 23:31:32 -07:00
Dan Flettre
6c07c4763d add context menu with share/save actions 2016-03-26 23:10:27 -05:00
DC
ebcc814ca7 WebTorrent can now play audio 2016-03-22 02:26:28 -07:00
DC
78f1d4c8eb Add tooltips 2016-03-21 16:51:45 -07:00
DC
1c2cd5f49e Fix default torrents
Big Buck Bunny playable now, files show correctly even before the user starts torrenting
2016-03-21 02:34:52 -07:00
DC
b02f236428 Show files even when torrent isn't torrenting 2016-03-21 02:25:41 -07:00
DC
91680cb53d Fix Windows packaging
* Work around a Chrome bug by avoiding Windows-specific backslash paths
* Change the name of the program from "Streaming torrent client" to "WebTorrent"
2016-03-19 03:27:48 -07:00
DC
dd04b4ab62 Fix chromecast button
Next step: Chromecast and Airplay play/pause, scrub, and state management

When casting, the correct cast button should be lit up and the video should be replaced with a title image and text
2016-03-14 09:53:01 -07:00
DC
8108c407d3 Torrent details
Show file list, open folder containing downloaded files, open individual files, play/pause individual videos
2016-03-14 09:18:20 -07:00
DC
e8cc7ac269 Torrent list: fix % complete bug 2016-03-13 17:51:39 -07:00
DC
ca2236da84 Torrent list bug: don't [un]select torrent when clicking download or play button 2016-03-11 16:06:11 -08:00
DC
cf433ddf16 File details 2016-03-11 08:49:58 -08:00
DC
9c8478dbe4 Torrent selection 2016-03-10 23:46:35 -08:00
Feross Aboukhadijeh
6946ab3507 style improvements
- make torrent placeholder the exact size of a normal torrent
- make torrent list window minimum size of two torrents
- make window start out sized for 4 torrents
- increase font size responsively
2016-03-08 15:39:39 -08:00
Feross Aboukhadijeh
9fce4d9741 Merge pull request #93 from Flet/even-prettier-bytes
switch to prettier-bytes
2016-03-08 12:41:58 -08:00
Dan Flettre
302d485bc8 switch to prettier-bytes 2016-03-08 10:45:55 -06:00
DC
ff56d818f6 Torrent list styling
* Download button is a lot easier to read: white down arrow when off, animated and pulsating green down arrow when downloading, solid green up arrow when seeding

* Play button shows a spinner if you click play before a torrent is ready, then an exclamation point if the torrent still isn't ready after 10 seconds

* Drop target shows up always, not just when the torrent list is empty. Lights up when you drag something

* Fixed alignment, the Xs to delete torrents are now aligned with the + to add a new torrent
2016-03-08 04:20:37 -08:00
Feross Aboukhadijeh
1681b8980b Merge pull request #81 from Flet/prettier-bytes
prettier bytes: drop fractional number if integer side is more than one digit
2016-03-07 22:47:51 -08:00
DC
4b890ee9f6 Show Blender Foundation videos by default
* Finishes the saved torrents feature!
* Torrents load and save correctly. Poster is autogenerated only once.
* Torrents can be paused and restarted
* Download button indicates state:
 - White means paused
 - Pulsating green means downloading
 - Solid green means finished downloading, only seeding
2016-03-07 22:15:47 -08:00
Dan Flettre
6a596fdde5 prettier bytes: drop fractional number if integer side is more than one digit 2016-03-07 23:48:32 -06:00
Nate Goldman
96fa5747a7 add empty list state 2016-03-07 15:28:19 -08:00
DC
713c391c05 Add download button
Doesn't do anything yet
2016-03-07 00:01:32 -08:00
Feross Aboukhadijeh
8b1b21c1ee Unsquash the UI when window is small
Fix #44
2016-03-06 01:03:20 -08:00
Feross Aboukhadijeh
1a7b69a19d fix mistake 2016-03-05 21:14:17 -08:00
Feross Aboukhadijeh
1b269189b7 no need for '|| 0' 2016-03-05 19:20:17 -08:00
Feross Aboukhadijeh
edb16a1bf1 Use single quotes in hyperx 2016-03-05 19:02:40 -08:00
Nate Goldman
2a52dbb600 improve progress percent & bytes display 2016-03-05 18:41:20 -08:00
Feross Aboukhadijeh
a38b27876b state.client.torrents will always exist 2016-03-05 16:26:05 -08:00
DC
098827ec78 State: put temp state directly in state, saved in state.saved 2016-03-05 16:00:41 -08:00
DC
5b383d3ed0 Split state into temp and saved
Also stop using IPC to calculate window width

Add default torrents--the Blender Foundation videos--not displayed yet
2016-03-05 15:51:43 -08:00
Nate Goldman
86f4ad29a6 fix renderering errors
giving prettyBytes anything but a number causes the torrent-list render to fail
2016-03-05 11:43:25 -08:00
Nate Goldman
4a4d5cc4ed better approximation of byte progress 2016-03-05 11:13:08 -08:00
Nate Goldman
90a1094073 improve torrent metadata display 2016-03-05 10:50:59 -08:00
DC
b7b30ed7c4 Cast buttons and fullscreen in player controls 2016-03-05 01:09:34 -08:00
Feross Aboukhadijeh
1475e5f95e Use html "class" property
As of this PR (https://github.com/substack/hyperx/pull/22) to hyperx,
attributes are automatically converted to properties for the few cases
where they’re different: class, for, and http-equiv.
2016-03-04 23:21:52 -08:00
Nate Goldman
b913997fad use fancier className notation everywhere 2016-03-04 19:06:40 -08:00
Nate Goldman
4e1de57f55 update class notation 2016-03-04 19:00:10 -08:00
Nate Goldman
b5561f13b4 try hyperx 2016-03-04 18:11:06 -08:00
Nate Goldman
9a0f361e14 separation of concerns 2016-03-04 13:14:22 -08:00