Commit graph

64 commits

Author SHA1 Message Date
Jordan Eldredge
33cd6a5c27 Use hooks in App.tsx 2019-12-23 18:13:08 -08:00
Jordan Eldredge
7bd8c702ac Make the Skin component use hooks and type it
This also abstracts some generic utility components
2019-12-23 17:06:36 -08:00
Jordan Eldredge
d24b86e189
Rm media library (#957)
* Remove CSS

* Remove LibraryButton

* Remove Sidebar

* Remove LibraryTable

* Remove MediaLibrary components

* Clean up skin stuff and some odds and ends

* Clean up constants

* Remove Media Library from compiled CSS
2019-12-06 06:24:21 -08:00
Jordan Eldredge
8f78e54fd6 Use hooks or scrollbar 2019-12-05 23:08:48 -08:00
Jordan Eldredge
005880a052 Add optional chaining and nullish coalescing (#953)
* Support nullish-coalescing-operator

* Support optional chaining
2019-11-30 13:42:53 -08:00
Jordan Eldredge
fb395c39c2 Upgrade prettier 2019-11-30 13:42:53 -08:00
Jordan Eldredge
2e83920ca1 Handle case where EQ images are missing 2019-11-30 13:42:53 -08:00
Jordan Eldredge
567ad29a76 Use react-redux hooks for MainWindow/index
This is the last main window component still using the HOC!
2019-11-30 13:42:53 -08:00
Jordan Eldredge
81b5bcfdfd Use react-redux hooks in Time 2019-11-30 13:42:53 -08:00
Jordan Eldredge
f51e51eea2 Use hooks for main context window 2019-11-30 13:42:53 -08:00
Jordan Eldredge
e345d07e41 Use react-redux hooks for Marquee 2019-11-30 13:42:53 -08:00
Jordan Eldredge
443392dadb Memoize getting track display name 2019-11-30 13:42:53 -08:00
Jordan Eldredge
2dca07ff0a Make a best effort to prewarm the images needed for the eq graph 2019-05-09 07:59:54 -07:00
Jordan Eldredge
5ee1a4f7b0 Order windows based upon which one was last clicked 2019-05-02 17:46:02 -07:00
Jordan Eldredge
c75214dcd7 Improve reliance on selector caching 2019-05-02 07:23:41 -07:00
Jordan Eldredge
4322aade4b Improve selector memoization and ordering 2019-05-01 22:42:16 -07:00
Jordan Eldredge
e89aa26612 Avoid uneeded renders 2019-05-01 22:38:17 -07:00
Jordan Eldredge
6132acdf2c Make focus nullable 2019-05-01 22:29:10 -07:00
Jordan Eldredge
4a3929a2b5 Fix bug where we could not progress to the next track
This was because we would go into stopped mode, and once in stopped mode, going to the next track was disabled.
2019-03-27 23:56:31 -07:00
Jordan Eldredge
c4282817db Add more methods to Webamp
Replaces #660
2019-03-24 21:51:52 -07:00
Jordan Eldredge
bd5fa82c99 Trailing commas! 2019-03-19 06:55:24 -07:00
Jordan Eldredge
c634cd8b94 Fix off by one error when converting .eqf values
Validated that this was correct by looking at the output in `winamp-eqf`'s snapshot tests. A .eqf generated by real winamp with all the bands set at the midpoint outputs values of 33.

Fixes #749
2019-03-15 07:33:13 -07:00
Jordan Eldredge
a4e64aa131 Make impossible states impossible 2019-03-13 21:28:18 -07:00
Jordan Eldredge
e41fb3d9b4 Test initial track selection 2019-03-13 21:28:18 -07:00
Jordan Eldredge
41e0ad4563 Support preset cycling 2019-03-13 21:28:18 -07:00
Jordan Eldredge
97076f9cd1 Remove disused import 2019-03-13 21:28:18 -07:00
Jordan Eldredge
fbd4a08972 Improve architecture of Milkdrop code 2019-03-13 21:28:18 -07:00
Jordan Eldredge
d1cfc707ff [WIP] Milkdrop rewrite 2019-03-13 21:28:18 -07:00
Jordan Eldredge
5a4fcf47a9 Rewrite visualizer to use hooks 2019-03-13 21:28:18 -07:00
Jordan Eldredge
59666b8699 [WIP] 2019-03-13 21:28:18 -07:00
Jordan Eldredge
05801a1197 Move initial preset into thunk 2019-03-13 21:28:18 -07:00
Jordan Eldredge
3ab29aba84 Move presets to state 2019-03-13 21:28:18 -07:00
Jordan Eldredge
1fdbbb844a Don't add *** to nonlooping marquee text
Fixes #726
2019-02-17 14:58:54 -08:00
Jordan Eldredge
a59a471f8d Change how Milkdrop fits into visualization optionsNow: If the Milkdrop window is open, it's always enabled. Otherwise, the current value in the cycle is used. 2019-01-02 21:04:02 -08:00
Jordan Eldredge
54a267efbd Move Milkdrop desktop mode to Redux 2018-12-31 15:12:48 -08:00
Jordan Eldredge
15b3fa7c74 Upgrade prettier 2018-12-30 15:34:30 -08:00
Jordan Eldredge
b16fb3a2ae Move file specific media info to the track
Fixes #712
2018-12-29 16:06:51 -08:00
Jordan Eldredge
b4b8e3cfbf Make debug data a selector 2018-10-17 19:03:25 -07:00
Jordan Eldredge
30f668b871 Type Marquee 2018-10-13 17:33:43 -07:00
Jordan Eldredge
934d70320e Add an overly optimized way to filter 2018-10-10 22:15:08 -07:00
Jordan Eldredge
01f3b1a0ea First stab at media library 2018-10-10 22:15:08 -07:00
Jordan Eldredge
7e7f7e6877 Move tracks into their own reducer 2018-10-10 20:59:16 -07:00
Jordan Eldredge
1f7a448b0b Store selected tracks as a Set rather than a property on the track
This will allow us to move tracks into their  own reducer which we'll need for the Media Library
2018-10-10 00:53:40 -07:00
Jordan Eldredge
f94cb4a7ab Revert "Revert "Serialize to indexdb" (#664)"
This reverts commit a053818c5e.
2018-10-05 21:31:05 -07:00
Jordan Eldredge
a053818c5e
Revert "Serialize to indexdb" (#664)
* Revert "Don't re-center windows when loading from serialized state"

This reverts commit d778c03f61.

* Revert "Clean up comment"

This reverts commit 8253093a2b.

* Revert "Fix spelling of IndexedDB"

This reverts commit b34d90e998.

* Revert "Add a few more generic assertions about serialized state"

This reverts commit a8267581d0.

* Revert "Refactor debounce and throttle"

This reverts commit 6ecc5142b5.

* Revert "Double check that the serialized state we generated equals the one we have saved"

This reverts commit 82a81bf584.

* Revert "Add many tests for serialization"

This reverts commit 55603346c2.

* Revert "Split serialized state types into their own file"

This reverts commit 4c9c5b99d3.

* Revert "Refactor how we manage window positions"

This reverts commit d6a1baece3.

* Revert "Fix export"

This reverts commit 462cf4b42d.

* Revert "Clean up selectors file"

This reverts commit cdfa99383a.

* Revert "Mark serialization methods priviate for now"

This reverts commit fc79c77451.

* Revert "Add types for WindowManager"

This reverts commit 0a7f258b64.

* Revert "Export Box"

This reverts commit e94cdef100.

* Revert "Use browserSize from state. Make it non-optional"

This reverts commit 53481ba892.

* Revert "Add back resetWindowLayout"

This reverts commit 35f4004caa.

* Revert "Begin tracking window size"

This reverts commit 96ed2b353c.

* Revert "Use namespaced Utils for webamplazy"

This reverts commit 949a2bc771.

* Revert "Use namespaced Utils"

This reverts commit 3049350701.

* Revert "Add initial approach of recovering from bad window positions"

This reverts commit 1791babf1a.

* Revert "Move centerWindowsIfNeeded to an action creatorThis forces us to type it, as a nice side benefit"

This reverts commit 40e31f0577.

* Revert "Make state serialization opt-in (for now)"

This reverts commit bef421ebed.

* Revert "Persist focus, and handle bad focus"

This reverts commit 3f1861d4f8.

* Revert "Handle the case where `positions` might be an empty object to begin with"

This reverts commit f8544ed126.

* Revert "Don't center windows when restoring from serialized state"

This reverts commit ca1cfe3dc6.

* Revert "Center windows correctly, even if the windows don't start at 0,0"

This reverts commit 777d482e73.

* Revert "Make hotkeys a function not a singleton class that has side effects when you construct it"

This reverts commit 87ca43ba45.

* Revert "Move global file input out of NPM module"

This reverts commit 9f726899c7.

* Revert "Don't exclude generic windows"

This reverts commit 245dd166a2.

* Revert "Serialize window position as well"

This reverts commit b71e09284e.

* Revert "Persist window states (exept position)"

This reverts commit 690f650e4c.

* Revert "Serialize media state, and apply equalizer state to on deserialize"

This reverts commit 94e105b104.

* Revert "Add a flag to clear IndexDB state"

This reverts commit 364ddb7411.

* Revert "Serialize state to indexdb"

This reverts commit 60429b280a.
2018-10-01 12:50:43 -07:00
Jordan Eldredge
d778c03f61 Don't re-center windows when loading from serialized state 2018-09-30 22:04:04 -07:00
Jordan Eldredge
55603346c2 Add many tests for serialization 2018-09-30 22:04:04 -07:00
Jordan Eldredge
4c9c5b99d3 Split serialized state types into their own file 2018-09-30 22:04:04 -07:00
Jordan Eldredge
d6a1baece3 Refactor how we manage window positions 2018-09-30 22:04:04 -07:00
Jordan Eldredge
cdfa99383a Clean up selectors file 2018-09-30 22:04:04 -07:00