Commit Graph

53 Commits

Author SHA1 Message Date
Rolando Guedes
4faf30e0a1 Fix Cli Test fails: JavaScript Standard Style 2016-05-12 15:31:28 +01:00
Rolando Guedes
ed1b27ede0 Increase/Decrease Sound with mouse wheel on video 2016-05-12 15:09:01 +01:00
DC
bde5dc14c3 Play unsupported files in VLC 2016-05-04 00:48:34 -07:00
DC
2693075f9f Keep all torrent files and poster images in app config folder
Fixes #402
2016-04-19 06:59:10 -07:00
grunjol
04318d7580 Add multiple subtitles support (#406)
* add multiple subtitles support

* cleanup and remove log
2016-04-14 21:47:50 -07:00
Feross Aboukhadijeh
af2ad46958 Only show CC icon for video (#412) 2016-04-14 19:42:13 -07:00
Feross Aboukhadijeh
432d7d4a56 Simplify play/pause handling (#410)
I found it awkward to listen to the video tags 'playing' and 'paused'
events, when we're controlling the state that defines what state it's
in in the first place.

This commit removes those listeners, in favor of just setting things to
the right state immediately when play(), pause(), or playPause() is
called.

Added play(), pause() methods for clarity.
2016-04-14 16:16:54 -07:00
Feross Aboukhadijeh
914d07df03 Show error when media format is unsupported (#409)
* fix error about pop

* location-history: add optional callbacks

* set handler on first tick

discovered by @dcposch

* Show error when media format is unsupported

Before this change, the player would just get stuck on the loading
screen forever without notifying the user.
2016-04-14 15:30:26 -07:00
Feross Aboukhadijeh
1a0a2b3658 Add subtitle support (via drag-n-drop) (#361)
* issue template

* cleanup closePlayer() and stopServer()

* Add subtitle support (via drag-n-drop)

Drag and drop a subtitles file (.srt or .vtt) onto the player (or the
app icon on OS X) to add subtitles to the currently playing video.

For #281

* add multiple subtitles structure

* add open subtitle dialog from cc player controls
2016-04-10 16:42:18 -07:00
Rémi Jouannet
457aca25ee add mute/unmute with the volume icon (#355) 2016-04-07 21:06:28 -07:00
grunjol
ae73ae29c4 add volume icon and slider (#330) 2016-04-07 14:24:23 -03:00
Feross Aboukhadijeh
8629fc956d clear cast interval when casting stops; naming
* fix ipc logs

* minWidth 425

So title "WebTorrent (BETA)" doesn't get cut off

* clear cast interval when casting stops; naming

Fix #300
2016-04-05 23:12:23 -07:00
Feross Aboukhadijeh
ef275b8888 Use Chromecast connected icon when applicable 2016-04-05 19:13:00 -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
grunjol
57e5eed47f fix DLNA icon, calls, remove unneeded depencendies in dlnacasts 2016-04-05 12:23:41 -03:00
grunjol
6aa7058184 add DLNA support 2016-04-05 12:23:40 -03:00
DC
af783e0532 Save audio metadata, after extraction
Fixes #260
2016-03-30 20:47:04 -07:00
DC
cc273e7312 Loading spinner for videos
Only worked for audio before
2016-03-29 00:41:42 -07:00
DC
f70cef2cee Loading spinner: center, text-overflow ellipsis 2016-03-28 22:36:45 -07:00
DC
dc2e2a82e7 Loading spinner: show download speed 2016-03-28 21:23:52 -07:00
DC
c70fef3feb Show spinner when audio/video is stalled
Fixes #243
2016-03-28 21:16:06 -07:00
DC
2341749074 Track progress for currently playing file. Fixes #244 2016-03-27 16:17:35 -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
grunjol
fc6d8e7b7d add volume management 2016-03-23 09:01:07 -03:00
DC
f56af6402c Audio metadata 2016-03-22 03:52:27 -07:00
DC
ebcc814ca7 WebTorrent can now play audio 2016-03-22 02:26:28 -07:00
DC
26dc1e82fd Airplay support. Nicer looking cast screen 2016-03-20 01:59:25 -07:00
DC
849bbed0ae Chromecast video controls 2016-03-19 01:21:52 -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
Nate Goldman
52fc2d88c9 Block "Power Saver" mode while video is playing
fix #106
2016-03-11 16:43:36 -08:00
Dan Flettre
b1678b71c6 ensure video is paused before hiding window 2016-03-11 01:10:39 -06:00
Liam Gray
9324765db9 Fix looping video 2016-03-08 17:36:20 -08:00
DC
4c03e98a19 Video controls: never hide when paused
Also simplifies CSS
2016-03-08 02:36:33 -08:00
Chris Morris
fa93891574 Prevent playback controls from hiding while the user is scrubbing
Fixes #64
2016-03-07 22:13:56 +11:00
Chris Morris
096e4bfd9b Double-click video to enter fullscreen 2016-03-07 21:42:36 +11:00
Feross Aboukhadijeh
52427dd183 Hide player controls when mouse is still, even when not fullscreened (fix #37) 2016-03-05 19:24:42 -08:00
Feross Aboukhadijeh
edb16a1bf1 Use single quotes in hyperx 2016-03-05 19:02:40 -08:00
DC
d1b61bdc07 Hide cursor after 2s in fullscreen 2016-03-05 17:01:20 -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
Feross Aboukhadijeh
ff1d5a6bb0 correct boolean attribute 2016-03-05 13:32:53 -08:00
Nate Goldman
82732aae11 fix #17 - autoresize window on play
function references in hyperx need to look like:

```
onloadedmetadata=${onLoadedMetadata}
```

and not:

```
onloadedmetadata="${onLoadedMetadata}"
```

also removed some unnecessary `torrent.ready` checks in the player.
2016-03-05 09:24:31 -08:00
DC
e4f2716d06 Video player polish
No header on Linux and OSX, just a back button on mouseover

ESC exits fullscreen, or if already not in fullscreen, goes back

More accurate scrub position

Removed the calc(100% -38x) hack, replaced with flexbox
2016-03-05 06:12:02 -08:00
DC
59b3bd04a9 Letterbox video. Hide toolbar in fullscreen
Cleaner-looking Chromecast and Airplay icons

Hide top bar in full screen mode
2016-03-05 05:14:24 -08:00
DC
1b630b5025 Playback controls: fix scrub ghosting 2016-03-05 02:13:04 -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