Commit graph

1355 commits

Author SHA1 Message Date
Jordan Eldredge
d60bd99355 [WIP] Experiment with new way to clear canvas 2020-01-13 20:37:00 -08:00
Jordan Eldredge
98d6d890af Dummy viz 2020-01-13 20:37:00 -08:00
Jordan Eldredge
cad005e175 Use type not interface 2020-01-13 20:37:00 -08:00
Jordan Eldredge
961f204496 Pull visualizers out into hooks 2020-01-13 20:37:00 -08:00
Jordan Eldredge
5f8ca7f45e Finally convert visualizer to function component 2020-01-13 20:37:00 -08:00
Jordan Eldredge
89164dd3c1 Extract setStyle 2020-01-13 20:37:00 -08:00
Jordan Eldredge
e705766081 Derive buffer length 2020-01-13 20:37:00 -08:00
Jordan Eldredge
a8f2dcb40e Pull peak arrays out to functional component 2020-01-13 20:37:00 -08:00
Jordan Eldredge
782e53b460 Pull out barCanvas into the functional component 2020-01-13 20:37:00 -08:00
Jordan Eldredge
17bba20ce4 Extract some props into a functional version of Visualizer
This is a step toward making the whole component functional
2020-01-13 20:37:00 -08:00
Jordan Eldredge
acfc2e5079 Move printBarFrame into visualizerUtils 2020-01-13 20:37:00 -08:00
Jordan Eldredge
17cfd0cb29 Start extracting (and typing) visualizer render methods 2020-01-13 20:37:00 -08:00
Jordan Eldredge
1d66ee3961 Split out visualizerUtils
This is partially an attempt to allow me to focus on the Visualizer component so I can convert it to a functional component, but also an attempt to iteratively type this code
2020-01-13 20:37:00 -08:00
Jordan Eldredge
efabd18745 Remove unused prop from type 2019-12-23 20:09:08 -08:00
Jordan Eldredge
0a8e213df6 Make ListMenu a functional component 2019-12-23 20:08:59 -08:00
Jordan Eldredge
a7e32f15ce Make PresetOverlay a functional component 2019-12-23 20:08:40 -08:00
Jordan Eldredge
49633c7615 Replace some instances of connect with hooks 2019-12-23 19:01:28 -08:00
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
af4990d5af Convert EQGraph to use hooks and be typed 2019-12-23 10:47:50 -08:00
Jordan Eldredge
1fce48befb Rewrite WindowManager to use hooks 2019-12-23 00:55:56 -08:00
Jordan Eldredge
30ed04c3f7 Don't leak teardowns 2019-12-20 15:30:12 -08:00
Jordan Eldredge
318489a74c We are Webamp not Winamp 2019-12-20 15:29:56 -08:00
Jordan Eldredge
e8c225e8f5 Refactor context menu components to use hooks 2019-12-19 06:48:55 -08:00
Jordan Eldredge
e4713beb00 Convert convext menu wrapper to use hooks 2019-12-19 06:48:55 -08:00
Jordan Eldredge
77823a07fe Make App a functional component
This also fixes a bug where after resizing the browser and closing Webamp the icon would be unclickable.

Clearing style.right by setting it to "none" was wrong. "auto" is the right value to unset it.
2019-12-06 21:22:25 -08:00
Jordan Eldredge
abc1495d9b Make Playlist Shade a functional component 2019-12-06 07:09:23 -08:00
Jordan Eldredge
610dfa61dc Use functional component for TrackCells 2019-12-06 07:01:53 -08:00
Jordan Eldredge
89c7ee4759 Use functional component for PlaylistWindow 2019-12-06 06:51:25 -08:00
Jordan Eldredge
cc18d9336a Use functional component 2019-12-06 06:42:37 -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
7650554be9 Memoize some components 2019-12-06 06:22:31 -08:00
Jordan Eldredge
8f78e54fd6 Use hooks or scrollbar 2019-12-05 23:08:48 -08:00
Jordan Eldredge
fe4101763b Refactor TrackList to use hooks 2019-12-05 22:58:32 -08:00
Jordan Eldredge
e351feb9dc Refactor ResizeTarget to use hooks 2019-12-05 22:38:29 -08:00
Jordan Eldredge
75d1420ae4 Extract useOnClickAway 2019-12-05 22:15:36 -08:00
Jordan Eldredge
e815d62f6e Extract useIsHovered hook from PlaystMenuEntry 2019-12-05 21:51:18 -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
1e0a9114dd Upgrade ts (#952)
* Upgrade Typescript

* Upgrade prettier

* Upgrade eslint-typescript

* Don't abide extra else

* Remove eslint plugin that we don't use any more

* Remove unused Webpack plugin

* Remove eslint rule that we don't really need

* Remove unused Jest plugin

* Remove redundant package

* Prettier fixes
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
53de63160b Handle case where there are no windows and thus no sensible bounding box
Resolves Sentry issue WINAMP2-JS-PROD-GC
2019-11-30 13:42:53 -08:00
Jordan Eldredge
4a49bcfd03 Fix snapshots to work with new version of rc-slider 2019-11-30 13:42:53 -08:00
Jordan Eldredge
10c6dfed85 Upgrade rc-slider and lift React.StrictMode
rc-slider was preventing us from enabling this more broadly. With https://github.com/react-component/slider/pull/591 merged and released, we can make more of the app strict
2019-11-30 13:42:53 -08:00
Jordan Eldredge
ffc2423629 Refactor portals to use hooks rather than deprecated lifecycle methods 2019-11-30 13:42:53 -08:00
Jordan Eldredge
646753526b Fix lints 2019-11-30 13:42:53 -08:00
Jordan Eldredge
be2ab37809 Fix typing for Desktop 2019-11-30 13:42:53 -08:00
Jordan Eldredge
60c0ad1e16 Actually use useDispatch 2019-11-30 13:42:53 -08:00
Jordan Eldredge
e79520dbdd Don't allow global access to all of window
We had a bug where `stop()` was undefined but it fell back to the function on window which was inplicitly in the global scope.

This should reduce that kind of thing.
2019-11-30 13:42:53 -08:00
Jordan Eldredge
0472033fba Make Desktop a functional component with hooks 2019-11-30 13:42:53 -08:00