diff --git a/electron/menu/setupBarMenu.js b/electron/menu/setupBarMenu.js
index ba1e55bfe..1cd9315fe 100644
--- a/electron/menu/setupBarMenu.js
+++ b/electron/menu/setupBarMenu.js
@@ -1,5 +1,4 @@
import { app, Menu, shell } from 'electron';
-import { ZOOM } from 'util/zoomWindow';
export default () => {
const template = [
@@ -23,38 +22,6 @@ export default () => {
label: 'View',
submenu: [
{ role: 'reload' },
- {
- label: 'Zoom',
- submenu: [
- {
- label: 'Zoom In',
- accelerator: 'CmdOrCtrl+=',
- click: (menuItem, browserWindow) => {
- if (browserWindow) {
- browserWindow.webContents.send('zoom-window', ZOOM.INCREMENT);
- }
- },
- },
- {
- label: 'Zoom Out',
- accelerator: 'CmdOrCtrl+-',
- click: (menuItem, browserWindow) => {
- if (browserWindow) {
- browserWindow.webContents.send('zoom-window', ZOOM.DECREMENT);
- }
- },
- },
- {
- label: 'Reset Zoom',
- accelerator: 'CmdOrCtrl+0',
- click: (menuItem, browserWindow) => {
- if (browserWindow) {
- browserWindow.webContents.send('zoom-window', ZOOM.RESET);
- }
- },
- },
- ],
- },
{
label: 'Developer',
submenu: [{ role: 'forcereload' }, { role: 'toggledevtools' }],
diff --git a/ui/component/app/view.jsx b/ui/component/app/view.jsx
index 4dcb3dfce..147e275a9 100644
--- a/ui/component/app/view.jsx
+++ b/ui/component/app/view.jsx
@@ -20,12 +20,6 @@ import REWARDS from 'rewards';
import usePersistedState from 'effects/use-persisted-state';
import Spinner from 'component/spinner';
import LANGUAGES from 'constants/languages';
-
-// @if TARGET='app'
-import useZoom from 'effects/use-zoom';
-import useHistoryNav from 'effects/use-history-nav';
-// @endif
-// @if TARGET='web'
import YoutubeWelcome from 'web/component/youtubeReferralWelcome';
import {
useDegradedPerformance,
@@ -34,22 +28,17 @@ import {
STATUS_FAILING,
STATUS_DOWN,
} from 'web/effects/use-degraded-performance';
-// @endif
import LANGUAGE_MIGRATIONS from 'constants/language-migrations';
const FileDrop = lazyImport(() => import('component/fileDrop' /* webpackChunkName: "fileDrop" */));
const NagContinueFirstRun = lazyImport(() => import('component/nagContinueFirstRun' /* webpackChunkName: "nagCFR" */));
const OpenInAppLink = lazyImport(() => import('web/component/openInAppLink' /* webpackChunkName: "openInAppLink" */));
-
-// @if TARGET='web'
const NagDataCollection = lazyImport(() => import('web/component/nag-data-collection' /* webpackChunkName: "nagDC" */));
const NagDegradedPerformance = lazyImport(() =>
import('web/component/nag-degraded-performance' /* webpackChunkName: "NagDegradedPerformance" */)
);
const NagNoUser = lazyImport(() => import('web/component/nag-no-user' /* webpackChunkName: "nag-no-user" */));
const NagSunset = lazyImport(() => import('web/component/nag-sunset' /* webpackChunkName: "nag-sunset" */));
-// @endif
-
const SyncFatalError = lazyImport(() => import('component/syncFatalError' /* webpackChunkName: "syncFatalError" */));
// ****************************************************************************
@@ -154,10 +143,10 @@ function App(props: Props) {
const isRewardApproved = user && user.is_reward_approved;
const previousHasVerifiedEmail = usePrevious(hasVerifiedEmail);
const previousRewardApproved = usePrevious(isRewardApproved);
- // @if TARGET='web'
+
const [showAnalyticsNag, setShowAnalyticsNag] = usePersistedState('analytics-nag', true);
const [lbryTvApiStatus, setLbryTvApiStatus] = useState(STATUS_OK);
- // @endif
+
const { pathname, hash, search } = props.location;
const [upgradeNagClosed, setUpgradeNagClosed] = useState(false);
const [resolvedSubscriptions, setResolvedSubscriptions] = useState(false);
@@ -187,12 +176,10 @@ function App(props: Props) {
uri = newpath + hash;
} catch (e) {}
- // @if TARGET='web'
function handleAnalyticsDismiss() {
setShowAnalyticsNag(false);
}
- // @endif
useEffect(() => {
if (userId) {
analytics.setUser(userId);
@@ -236,16 +223,6 @@ function App(props: Props) {
return () => window.removeEventListener('keydown', handleKeyPress);
}, []);
- // Enable ctrl +/- zooming on Desktop.
- // @if TARGET='app'
- useZoom();
- // @endif
-
- // Enable 'Alt + Left/Right' for history navigation on Desktop.
- // @if TARGET='app'
- useHistoryNav(history);
- // @endif
-
useEffect(() => {
if (referredRewardAvailable && sanitizedReferrerParam && isRewardApproved) {
setReferrer(sanitizedReferrerParam, true);
@@ -324,7 +301,6 @@ function App(props: Props) {
}, [previousRewardApproved, isRewardApproved]);
// Load IMA3 SDK for aniview
- // @if TARGET='web'
useEffect(() => {
const script = document.createElement('script');
script.src = imaLibraryPath;
@@ -336,7 +312,6 @@ function App(props: Props) {
document.body.removeChild(script);
};
}, []);
- // @endif
// @if TARGET='app'
useEffect(() => {
@@ -357,15 +332,11 @@ function App(props: Props) {
if (readyForSync && hasVerifiedEmail) {
// In case we are syncing.
syncLoop();
- // @if TARGET='web'
window.addEventListener('focus', syncLoopWithoutInterval);
- // @endif
}
- // @if TARGET='web'
return () => {
window.removeEventListener('focus', syncLoopWithoutInterval);
};
- // @endif
}, [readyForSync, hasVerifiedEmail, syncLoop]);
// We know someone is logging in or not when we get their user object
@@ -403,11 +374,8 @@ function App(props: Props) {
}
}, [sidebarOpen, isPersonalized, resolvedSubscriptions, subscriptions, resolveUris, setResolvedSubscriptions]);
- // @if TARGET='web'
useDegradedPerformance(setLbryTvApiStatus, user);
- // @endif
- // @if TARGET='web'
// Require an internal-api user on lbry.tv
// This also prevents the site from loading in the un-authed state while we wait for internal-apis to return for the first time
// It's not needed on desktop since there is no un-authed state
@@ -418,16 +386,11 @@ function App(props: Props) {
);
}
- // @endif
if (syncFatalError) {
return (
-
+
);
}
@@ -469,7 +432,6 @@ function App(props: Props) {
)}
{/* @endif */}
- {/* @if TARGET='web' */}
{!SIMPLE_SITE && !shouldHideNag && }
{!shouldHideNag && }
@@ -483,7 +445,6 @@ function App(props: Props) {
)}
{user === null && }
- {/* @endif */}
{isReloadRequired && (
diff --git a/ui/effects/use-history-nav.js b/ui/effects/use-history-nav.js
deleted file mode 100644
index aa82b4077..000000000
--- a/ui/effects/use-history-nav.js
+++ /dev/null
@@ -1,25 +0,0 @@
-import { useEffect } from 'react';
-
-export default function useHistoryNav(history) {
- useEffect(() => {
- const handleKeyPress = e => {
- if ((e.metaKey || e.altKey) && !e.ctrlKey && !e.shiftKey) {
- switch (e.code) {
- case 'ArrowLeft':
- e.preventDefault();
- history.goBack();
- break;
- case 'ArrowRight':
- e.preventDefault();
- history.goForward();
- break;
- default:
- // Do nothing
- break;
- }
- }
- };
- window.addEventListener('keydown', handleKeyPress);
- return () => window.removeEventListener('keydown', handleKeyPress);
- }, []);
-}
diff --git a/ui/effects/use-zoom.js b/ui/effects/use-zoom.js
deleted file mode 100644
index c16f49ef2..000000000
--- a/ui/effects/use-zoom.js
+++ /dev/null
@@ -1,51 +0,0 @@
-import { useEffect } from 'react';
-import { changeZoomFactor, ZOOM } from 'util/zoomWindow';
-
-export default function useHover(ref) {
- useEffect(() => {
- const handleKeyPress = e => {
- if (e.ctrlKey && !e.shiftKey) {
- switch (e.code) {
- case 'NumpadAdd':
- case 'Equal':
- e.preventDefault();
- changeZoomFactor(ZOOM.INCREMENT);
- break;
- case 'NumpadSubtract':
- case 'Minus':
- e.preventDefault();
- changeZoomFactor(ZOOM.DECREMENT);
- break;
- case 'Numpad0':
- case 'Digit0':
- e.preventDefault();
- changeZoomFactor(ZOOM.RESET);
- break;
- default:
- // Do nothing
- break;
- }
- }
- };
- window.addEventListener('keydown', handleKeyPress);
- return () => window.removeEventListener('keydown', handleKeyPress);
- }, []);
-
- useEffect(() => {
- const handleWheel = e => {
- if (e.ctrlKey && !e.shiftKey) {
- if (e.deltaY < 0) {
- changeZoomFactor(ZOOM.INCREMENT);
- } else {
- changeZoomFactor(ZOOM.DECREMENT);
- }
- }
- };
- window.addEventListener('wheel', handleWheel);
- return () => window.removeEventListener('wheel', handleWheel);
- }, []);
-
- useEffect(() => {
- changeZoomFactor(ZOOM.LOAD_FROM_LOCAL_STORAGE);
- }, []);
-}
diff --git a/ui/index.jsx b/ui/index.jsx
index d1cdf9915..64eff89c2 100644
--- a/ui/index.jsx
+++ b/ui/index.jsx
@@ -6,7 +6,6 @@ import SnackBar from 'component/snackBar';
// @if TARGET='app'
import SplashScreen from 'component/splash';
import * as ACTIONS from 'constants/action_types';
-import { changeZoomFactor } from 'util/zoomWindow';
// @endif
import { ipcRenderer, remote, shell } from 'electron';
import moment from 'moment';
@@ -179,10 +178,6 @@ ipcRenderer.on('open-menu', (event, uri) => {
}
});
-ipcRenderer.on('zoom-window', (event, action) => {
- changeZoomFactor(action);
-});
-
const { dock } = remote.app;
ipcRenderer.on('window-is-focused', () => {
diff --git a/web/.env.ody b/web/.env.ody
deleted file mode 100644
index 2d9e1313e..000000000
--- a/web/.env.ody
+++ /dev/null
@@ -1,92 +0,0 @@
-# Copy this file to .env to make modifications
-
-# Base config
-
-WEBPACK_WEB_PORT=9090
-WEBPACK_ELECTRON_PORT=9091
-WEB_SERVER_PORT=1337
-
-WELCOME_VERSION=1.0
-
-# Custom Site info
-DOMAIN=lbry.tv
-URL=https://lbry.tv
-
-# UI
-SITE_TITLE=lbry.tv
-SITE_NAME=local.lbry.tv
-SITE_DESCRIPTION=Meet LBRY, an open, free, and community-controlled content wonderland.
-LOGO_TITLE=local.lbry.tv
-
-##### ODYSEE SETTINGS #######
-
-MATOMO_URL=https://analytics.lbry.com/
-MATOMO_ID=4
-
-# Base config
-WEBPACK_WEB_PORT=9090
-WEBPACK_ELECTRON_PORT=9091
-WEB_SERVER_PORT=1337
-
-## APIS
-LBRY_API_URL=https://api.odysee.com
-#LBRY_WEB_API=https://api.na-backend.odysee.com
-#LBRY_WEB_STREAMING_API=https://cdn.lbryplayer.xyz
-# deprecated:
-#LBRY_WEB_BUFFER_API=https://collector-service.api.lbry.tv/api/v1/events/video
-#COMMENT_SERVER_API=https://comments.lbry.com/api/v2
-WELCOME_VERSION=1.0
-
-# STRIPE
-STRIPE_PUBLIC_KEY='pk_live_e8M4dRNnCCbmpZzduEUZBgJO'
-
-## UI
-
-LOADING_BAR_COLOR=#e50054
-
-# IMAGE ASSETS
-YRBL_HAPPY_IMG_URL=https://spee.ch/spaceman-happy:a.png
-YRBL_SAD_IMG_URL=https://spee.ch/spaceman-sad:d.png
-LOGIN_IMG_URL=https://spee.ch/login:b.png
-LOGO=https://spee.ch/odysee-logo-png:3.png
-LOGO_TEXT_LIGHT=https://spee.ch/odysee-white-png:f.png
-LOGO_TEXT_DARK=https://spee.ch/odysee-png:2.png
-AVATAR_DEFAULT=https://spee.ch/spaceman-png:2.png
-FAVICON=https://spee.ch/favicon-png:c.png
-
-# LOCALE
-DEFAULT_LANGUAGE=en
-
-## LINKED CONTENT WHITELIST
-KNOWN_APP_DOMAINS=open.lbry.com,lbry.tv,lbry.lat,odysee.com
-
-## CUSTOM CONTENT
-# If the following is true, copy custom/homepage.example.js to custom/homepage.js and modify
-CUSTOM_HOMEPAGE=true
-
-# Add channels to auto-follow on firstrun (space delimited)
-AUTO_FOLLOW_CHANNELS=lbry://@Odysee#80d2590ad04e36fb1d077a9b9e3a8bba76defdf8 lbry://@OdyseeHelp#b58dfaeab6c70754d792cdd9b56ff59b90aea334
-
-## FEATURES AND LIMITS
-SIMPLE_SITE=true
-BRANDED_SITE=odysee
-# SIMPLE_SITE REPLACEMENTS
-ENABLE_MATURE=false
-ENABLE_UI_NOTIFICATIONS=true
-ENABLE_WILD_WEST=true
-SHOW_TAGS_INTRO=false
-
-# CENTRALIZED FEATURES
-ENABLE_COMMENT_REACTIONS=true
-ENABLE_FILE_REACTIONS=true
-ENABLE_CREATOR_REACTIONS=true
-ENABLE_NO_SOURCE_CLAIMS=true
-ENABLE_PREROLL_ADS=false
-SHOW_ADS=true
-
-CHANNEL_STAKED_LEVEL_VIDEO_COMMENTS=4
-CHANNEL_STAKED_LEVEL_LIVESTREAM=3
-WEB_PUBLISH_SIZE_LIMIT_GB=4
-
-#SEARCH TYPES - comma-delimited
-LIGHTHOUSE_DEFAULT_TYPES=audio,video