Commit Graph

60 Commits

Author SHA1 Message Date
DC
327c95d754 Show video position on circular progress bars 2016-05-23 00:33:17 -07:00
DC
6e969e5d07 Cleaner look for the torrent file list 2016-05-23 00:33:17 -07:00
Feross Aboukhadijeh
ff6ff8db00 Fewer click handlers (#552)
One more bit of cleanup for PR #529.

We can register `handleClick` once on the `<tr>` tag and just have the
onclick handler on `col-select` too. Because dispatcher calls
`event.stopPropagation()` we don't need to worry about event bubbling
up to the `<tr>`.
2016-05-21 16:50:18 -07:00
DC
454491572a Remove cursor:pointer
Apparently that's only for websites & we want to feel native
2016-05-17 21:25:31 -07:00
DC
6518a1535c Allow selecting individual files to torrent
Saves bandwidth and disk space when a torrent contains extra files you don't need

Fixes #360
2016-05-17 07:13:38 -07:00
Feross Aboukhadijeh
744d38259e Put peers before speeds, to reduce bouncing
When speed goes to zero, it disappears, which looks weird when it's not
the last item on the status line.
2016-05-12 16:50:58 -07:00
Feross Aboukhadijeh
252443a529 UX: Improve torrent status line
The goal of this commit is to merge the two torrent status lines onto a
single, concise line which has high signal and information density.

- Hide download speed, upload speed, and number of peers when 0,
because that's just noise.
- Remove number of files, because that information can be found by
expanding the torrent.

This also allowed the further reduction of the torrent item height from
110px to 100px.
2016-05-11 21:29:46 +02:00
Feross Aboukhadijeh
0b1872fa28 UI: Reduce font size, list item height
- Reduce torrent list item from 120px to 110px height
- Vertically center torrent list buttons
- Reduce font sizes (torrent list, modal labels)
2016-05-11 20:49:41 +02:00
Feross Aboukhadijeh
facb07cbb1 Add "Show in Folder" to context menu
Based on @watson's PR #463.

Differences:

- Remove the "Open Folder" link from expanded torrent view.
- Use showItemInFolder instead of openItem electron API
- Add a separator
- Use IPC to invoke electron.shell.showItemInFolder from main process
2016-05-09 01:34:35 +02:00
DC
2693075f9f Keep all torrent files and poster images in app config folder
Fixes #402
2016-04-19 06:59:10 -07:00
DC
85e49dea6d Button styles (#414) 2016-04-15 19:02:38 -07:00
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