From 08f1e41dc3e72b09ddb2e28c3b40ffa91100b46d Mon Sep 17 00:00:00 2001 From: Jordan Eldredge Date: Tue, 29 Aug 2017 10:01:18 -0700 Subject: [PATCH] Improve how we manage windows --- css/main-window.css | 4 -- css/winamp.css | 4 -- js/actionTypes.js | 3 +- js/components/App.js | 39 ++++++++++++------- js/components/EqualizerWindow/index.js | 5 +-- .../MainWindow/PlaylistToggleButton.js | 25 ++++++++++++ js/components/MainWindow/index.js | 11 +++--- js/reducers.js | 11 +++++- 8 files changed, 68 insertions(+), 34 deletions(-) create mode 100644 js/components/MainWindow/PlaylistToggleButton.js diff --git a/css/main-window.css b/css/main-window.css index 8fc65815..344a2c2f 100755 --- a/css/main-window.css +++ b/css/main-window.css @@ -83,10 +83,6 @@ } } -#winamp2-js #main-window.closed { - display: none; -} - #winamp2-js #title-bar { position: absolute; top: 0; diff --git a/css/winamp.css b/css/winamp.css index 96b02f04..69b01ed3 100644 --- a/css/winamp.css +++ b/css/winamp.css @@ -84,7 +84,3 @@ -webkit-transform: scale(2); -webkit-transform-origin: top left; } - -#winamp2-js .window.closed { - display: none; -} diff --git a/js/actionTypes.js b/js/actionTypes.js index 964f55b4..eee6db84 100644 --- a/js/actionTypes.js +++ b/js/actionTypes.js @@ -1,7 +1,7 @@ export const LOAD_AUDIO_URL = "LOAD_AUDIO_URL"; export const LOAD_AUDIO_FILE = "LOAD_AUDIO_FILE"; export const CLOSE_CONTEXT_MENU = "CLOSE_CONTEXT_MENU"; -export const CLOSE_PRESETS_CONTEXT_MENU = "CLOSE_PRESET_CONTEXT_MENU"; +export const CLOSE_PRESETS_CONTEXT_MENU = "CLOSE_PRESETS_CONTEXT_MENU"; export const CLOSE_WINAMP = "CLOSE_WINAMP"; export const CLOSE_EQUALIZER_WINDOW = "CLOSE_EQUALIZER_WINDOW"; export const IS_PLAYING = "IS_PLAYING"; @@ -27,6 +27,7 @@ export const TOGGLE_CONTEXT_MENU = "TOGGLE_CONTEXT_MENU"; export const TOGGLE_PRESETS_CONTEXT_MENU = "TOGGLE_PRESET_CONTEXT_MENU"; export const TOGGLE_DOUBLESIZE_MODE = "TOGGLE_DOUBLESIZE_MODE"; export const TOGGLE_EQUALIZER_WINDOW = "TOGGLE_EQUALIZER_WINDOW"; +export const TOGGLE_PLAYLIST_WINDOW = "TOGGLE_PLAYLIST_WINDOW"; export const SET_EQ_AUTO = "SET_EQ_AUTO"; export const SET_EQ_ON = "SET_EQ_ON"; export const SET_EQ_OFF = "SET_EQ_OFF"; diff --git a/js/components/App.js b/js/components/App.js index e3b582ab..26f21a12 100644 --- a/js/components/App.js +++ b/js/components/App.js @@ -7,16 +7,22 @@ import EqualizerWindow from "./EqualizerWindow"; import Skin from "./Skin"; import { equalizerEnabled, playlistEnabled } from "../config"; -const App = ({ winamp, loading }) => - loading ? ( -
- Loading - . - . - . - -
- ) : ( +const App = ({ winamp, loading, closed, equalizer, playlist }) => { + if (closed) { + return null; + } + if (loading) { + return ( +
+ Loading + . + . + . + +
+ ); + } + return (
{/* This is not technically kosher, since