Commit Graph

43 Commits

Author SHA1 Message Date
Sergey Bargamon
8af4f42c42 Add additional video player keyboard shortcuts (#275)
*  Skip forward 10 seconds ((CMD OR CTRL) ALT right)
 Skip back 10 seconds ((CMD OR CTRL) ALT left)
 Increase video speed ((CMD OR CTRL) +)
 Decrease video speed ((CMD OR CTRL) -)

* Codestyle fix

* The 'steps' should be implemented in base2, standard players use 1x, 2x, 4x, 8x, 16x

fixed bug with shift + "=" which is "+"

* resolve conflicts

* remove ide specific data
make playback rate more granular
add to menu skip and speed entries

* intendation fix

* conflict resolve

* rename setPlaybackRate to changePlaybackRate
setRate return boolean depending on whether this cast target supports setting the playback rate.
if setRate returns false - don`t change state
redundant else if statement in changePlaybackRate function
2016-05-23 00:15:57 -07:00
DC
d4e6c84279 Automatically add subtitle tracks
Currently, add all .SRT and .VTT subtitle files in the same torrent as a video file
2016-05-16 08:03:21 -07:00
DC
9731d85ca3 Simplify subtitles code 2016-05-16 03:41:27 -07:00
Feross Aboukhadijeh
72f917a744 OS X: Make controls use full window in fullscreen
This bug was subtle. Basically, on OS X only, we use
window.setAspectRatio() to make the player window match the video size.

But this is maintained even in fullscreen mode, which makes the window
actually not use up the fullscreen, and there are black bars above and
below the video player controls, which looks really weird.

Unset the aspect ratio in fullscreen mode, then set it again upon
leaving fullscreen mode.
2016-05-12 17:09:10 -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
Feross Aboukhadijeh
969c784df4 Windows Portable App (#417)
* packager: call callbacks consistently

Before this, the callbacks would not being called, which would lead to
an incomplete build on non-OS X platforms when trying to build all for
all platforms.

* packager: Always produce OS X update file regardless of --package option

This makes it consistent with how the windows build always produces the
.nupkg autoupdate files

* packager: fix duplicate npm install

Move "npm prune && npm dedupe" into the release script. Remove an extra
"npm install"

* Make Windows portable app

When a folder named "Portable Settings" exists in same folder as
WebTorrent.exe, then use it instead of the default application config
path.

Closes #358

* packager: remove redundant signing warning

* cross platform zip function

* Set config file path to match config.CONFIG_PATH

* portable app: make electron settings portable

* portable: fix poster/torrent paths

* use cross-zip

* portable app: default download folder inside 'Portable Settings'
2016-04-16 04:18:21 -07:00
Feross Aboukhadijeh
ae168ae885 add default torrent: The WIRED CD (#401)
* add default torrent: The WIRED CD

* remove additional unneeded files
2016-04-13 00:24:16 -07:00
Feross Aboukhadijeh
b10f8c5bed Fix app.getPath API 2016-04-10 23:10:42 -07:00
Feross Aboukhadijeh
f6b9dbbbc4 Use Electron API to get 'Downloads' folder (#382)
Fixes #359 and #349.
2016-04-10 21:46:24 -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
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
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
af783e0532 Save audio metadata, after extraction
Fixes #260
2016-03-30 20:47:04 -07:00
DC
630e8611ba Add Cosmos Laundromat as a default torrent 2016-03-29 00:41:48 -07:00
DC
c70fef3feb Show spinner when audio/video is stalled
Fixes #243
2016-03-28 21:16:06 -07:00
DC
86069a7173 Linux update notifications
Fixes #257
2016-03-28 16:16:43 -07:00
DC
ac7431292e Show filename in window title. Fix #245
Also fix error popover z index
2016-03-27 16:17:35 -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
b9c012a587 Make right click -> "copy magnet uri" work for default torrents
For #233
2016-03-27 01:06:36 -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
DC
3928564314 Add (BETA) to window title
Also fix a bug: fix relative paths to the default torrents.
2016-03-26 18:11:40 -07:00
DC
0d5ff2d964 Use relative paths for default torrents
This keeps them working if a user opens the app from DMG, then installs it to a different path and opens it again
2016-03-26 16:15:24 -07:00
DC
ebcc814ca7 WebTorrent can now play audio 2016-03-22 02:26:28 -07:00
Feross Aboukhadijeh
ce6d0e3255 add config.ROOT_PATH 2016-03-21 20:21:36 -07:00
DC
15e3e49aa4 Fix #176: close window on OSX 2016-03-21 04:06:54 -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
Feross Aboukhadijeh
ce2a9ceb11 Implement back/forward buttons (fix #180) 2016-03-20 22:54:51 -07:00
Feross Aboukhadijeh
684fa7dee7 Write poster images into "$CONFIG_PATH/posters" (fix #155) 2016-03-19 16:19:15 -07:00
DC
32a57e79a1 Error popover, no more alert()s 2016-03-19 01:55:24 -07:00
DC
849bbed0ae Chromecast video controls 2016-03-19 01:21:52 -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
9c8478dbe4 Torrent selection 2016-03-10 23:46:35 -08:00
Feross Aboukhadijeh
7282865bc7 restructure folders 2016-03-10 14:52:49 -08:00
Feross Aboukhadijeh
adf53bb7cc Fix scroll bar goes under header bar (fix #101) 2016-03-08 19:29:30 -08:00
Feross Aboukhadijeh
67217bdc7e Lighter window background
Native windows get lighter when they’re backgrounded so they stand out
less (at least on OS X). Let’s do this too.

Even the Spotify app, which has dozens of developers gets this wrong.
We’re so awesome :)

Also:

- Renamed a bunch of state variables (next time will make separate
commit, sry)
- All window-related variables (e.g. isFullScreen, isFocused, etc.)
live in `state.window` now
- Remove negative class name, use CSS :not() instead
2016-03-08 17:18:31 -08:00
Feross Aboukhadijeh
8ab2a1415b update player window title to torrent name (Windows, Linux)
This also moves all the state “diffing” for purposes of updating the
app’s window via Electron APIs into one function updateElectron().
2016-03-07 22:20:39 -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
Feross Aboukhadijeh
2a423a8cb3 Use config.APP_NAME throughout 2016-03-07 15:48:22 -08:00
DC
61a99508ae Clean up and document index.js 2016-03-06 21:41:16 -08:00
Nate Goldman
045f38089c add persistent app config
resolves #24
2016-03-05 22:27:47 -08:00
Feross Aboukhadijeh
530db50adc disable non-working torrents 2016-03-05 22:16:17 -08:00
Feross Aboukhadijeh
376d656407 use web seeded sintel file 2016-03-05 21:14:25 -08:00
Feross Aboukhadijeh
c01fb66bae move renderer state into new file 2016-03-05 19:52:16 -08:00