Commit graph

2151 commits

Author SHA1 Message Date
Jordan Eldredge
dd0d60743f Update tests to reflect new focus management style 2019-05-01 22:09:22 -07:00
Jordan Eldredge
465a24a253 Clean up types 2019-05-01 22:09:22 -07:00
Jordan Eldredge
c786adf696 Trap focus 2019-05-01 22:09:22 -07:00
Jordan Eldredge
84beff4d5b Clear focus when bluring out of app 2019-05-01 22:09:22 -07:00
Jordan Eldredge
f68257d5cc Simplify focus Target 2019-05-01 22:09:22 -07:00
Jordan Eldredge
c3225653f9 Don't prevent text selection with preventDefault
We should use `user-select: none;` for this.

I think all places are already doing this.
2019-05-01 22:09:22 -07:00
Jordan Eldredge
360f596385 Make focus nullable 2019-05-01 22:09:22 -07:00
Jordan Eldredge
626a50f103 Upgrade react-redux! 2019-05-01 22:09:22 -07:00
Jordan Eldredge
4dc72ae0e0 Clean up arrayEquals 2019-05-01 22:09:22 -07:00
Jordan Eldredge
07dd6adeff Use native event handling for keydown
This allows us to stopPropogation and actually prevent global hotkeys
2019-05-01 22:09:22 -07:00
Jordan Eldredge
1f9bcdb052 Make easter egg handling more efficient 2019-05-01 22:09:22 -07:00
Jordan Eldredge
0601cbf0fa Extract focus management to a component 2019-05-01 22:09:22 -07:00
Jordan Eldredge
c106ac2a52 Change how actions are typed
If we want to use the new version of react-redux we need to be compatible with their types.

Sadly it does not seem to be possible to create a Dispatchable type which can be eiher a plain action or a thunk and still be compatible with react-redux's types becuase they use redux's Store type under the hood which assumes you have an object with a string type property.
2019-05-01 22:09:22 -07:00
Jordan Eldredge
9c7d6e2bda Stick with old versions of node 2019-05-01 22:05:54 -07:00
Jordan Eldredge
f1696fd7e6 Type getGenExColors 2019-05-01 22:05:42 -07:00
Jordan Eldredge
cb0e328ec7 Type getPlaylistStyle 2019-05-01 22:05:42 -07:00
Jordan Eldredge
4dfc19a527 Type getCursorFromFilename 2019-05-01 22:05:42 -07:00
Jordan Eldredge
b873e0df31 Type getSpriteUrisFromFilename 2019-05-01 22:05:42 -07:00
Jordan Eldredge
f56e707a16 Type getImgFromFilename 2019-05-01 22:05:42 -07:00
Jordan Eldredge
8b49b5fa6a Move getFileExtension to skinparserutils 2019-05-01 22:05:42 -07:00
Jordan Eldredge
3547256e5a Redirect webamp.net to webamp.org 2019-04-29 09:54:26 -07:00
Jordan Eldredge
2de880a917 Type getFileFromZip 2019-04-29 06:22:22 -07:00
Jordan Eldredge
3c97b2668f Type getSpriteUrisFromImg 2019-04-25 07:29:25 -07:00
Jordan Eldredge
a1495cfd16 Start pulling parts of skinParser out into a TypeScript utils file
This will let us gradually type this file
2019-04-25 06:57:10 -07:00
Jordan Eldredge
fb35324ab6 Always parse skins as blobs
This avoids converting the skin to an arrayBuffer for no reason
2019-04-25 06:49:56 -07:00
Jordan Eldredge
7913048e41 Send users to the GitHub page via webamp.org
At some point in the future github may not be the canonical URL for
webamp. However, people are integrating Webamp all the time and very
likely won't ever upgrade.

It's better if the url baked into the binary we distribute is under our
control so that it can be pointed somewhere else in the future.

It's also an open question if GitHub is the best place to send users.
Non technical users may get very confused.
2019-04-12 16:50:47 -07:00
Jordan Eldredge
904ccbc203 Fix bug when reviewing skins 2019-04-12 16:06:03 -07:00
Jordan Eldredge
235ac53519 Use Window's real default background color 2019-04-12 16:06:03 -07:00
Jordan Eldredge
c352b1ceaa Don't show the about icons if we are loaded as a webapp 2019-04-12 08:17:54 -07:00
Jordan Eldredge
80f34157dd Notate some places where we have known bugs 2019-04-07 12:37:03 -07:00
Jordan Eldredge
282cd6444e Unused args 2019-04-05 07:38:37 -07:00
Jordan Eldredge
4310d5475d Prettier 2019-04-05 07:36:59 -07:00
Jordan Eldredge
cce7928f4e Accept the reality of event emitter 2019-04-05 07:34:14 -07:00
Jordan Eldredge
5713052415 Type ref callback 2019-04-05 07:34:14 -07:00
Jordan Eldredge
646b38319e Remove unused property 2019-04-05 07:34:14 -07:00
Jordan Eldredge
12139fb190 Type bindings 2019-04-05 07:34:14 -07:00
Jordan Eldredge
071c54b870 Initial typing of App.tsx 2019-04-05 07:34:14 -07:00
Jordan Eldredge
cb1d07d013 v1.3.2-beta.2 2019-04-05 07:34:14 -07:00
Jordan Eldredge
859a0fad01 Add changelog note about reparenting bug 2019-04-05 07:34:14 -07:00
Jordan Eldredge
f45a3ec3f3 Make it safe to reparent the #webamp node
For now users can't control where Webamp inserts itself into the DOM. We want to add that as and option. In the mean time, we can enable users to hack it.

For example, https://github.com/ShizukuIchi/winXP wants to be able to keep Webamp in a div in order to control how it gets layerd with other apps.
2019-04-05 07:34:14 -07:00
Jordan Eldredge
2fb9d38f44 Upgrade Jest
This fixes the issue with running on specific versions of node, which means we also undo https://github.com/captbaritone/webamp/pull/741
2019-04-05 07:34:14 -07:00
Jordan Eldredge
758e20a9ad Update test to use getNextTrackId
I broke these in 4a3929a2b5 when I fogot to rename the tests as well as the usage.

I've converted this test to typescript which should help catch these kinds of things more easily in the future.
2019-04-05 07:34:14 -07:00
Jordan Eldredge
3e40ab5d17 Make spacing a little closer to right 2019-03-27 23:56:31 -07:00
Jordan Eldredge
7ef0320581 Use a light color for selected tracks in the library 2019-03-27 23:56:31 -07:00
Jordan Eldredge
4b411eb4d6 Pressed state for library table headers 2019-03-27 23:56:31 -07:00
Jordan Eldredge
0bd9feba7a Highlight selected table row in library 2019-03-27 23:56:31 -07:00
Jordan Eldredge
7ecd51020f Abstract the library table 2019-03-27 23:56:31 -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
8357bfca51 Log Tweet id 2019-03-27 23:56:31 -07:00
Jordan Eldredge
1f7f00e031 Imrpove stretch of library buttons 2019-03-27 23:56:31 -07:00