Commit graph

1060 commits

Author SHA1 Message Date
infiinte-persistence c75bab5979 Tip Modal: Don't do final submit when the intention is to create New Channel.
## Issue
Fixes `4544 Channel-creation in "Tip|Support" Modal shouldn't submit LBC immediately`

## Changes
`Form` seems to have already tried to stop the propagation of `onSubmit`, so I'm not sure why it was still propagated.

Fix by using the same method used in the `CommentCreate`, which is simply to check for `CHANNEL_NEW` as the current selection.
2020-08-05 13:01:29 -04:00
infiinte-persistence 37a1fd88e3 selectChannel: sync auto-resolved value during mounting.
## Issue
Fixes `4621 Can't create Comments if you recently deleted a channel`

The `channel` that the parent passes in is from a persisted state. If the channel has been deleted, `<select>` will automatically resolve to another selectable value. However, `onChange` will not be called for this scenario, so we now have a mismatch.

## Changes
- Manually check if the value has been auto-resolved and report it to the parent.
- An extra `setTimeout` was needed. It seems like `onChannelChange` needs to be called after the first `useEffect` of the parent, otherwise the call has no effect.
2020-08-05 12:59:54 -04:00
Baltazar Gomez d64d278676 fix metadata not updating if post content doesn't change 2020-08-05 12:57:49 -04:00
Sean Yesmunt 42e989d0cc always use markdown editor for text posts 2020-08-04 11:49:12 -04:00
btzr-io 036aedd88d use redux to load post content 2020-08-04 11:49:12 -04:00
btzr-io 80e1965e46 prevent name change while editing and more fixes 2020-08-04 11:49:12 -04:00
btzr-io 8067793379 fix reselect file error 2020-08-04 11:49:12 -04:00
btzr-io 0f757bc101 fix typo 2020-08-04 11:49:12 -04:00
btzr-io d93d97882b fix auto populate title logic 2020-08-04 11:49:12 -04:00
btzr-io 0b3fe001d0 autopopulate name from title 2020-08-04 11:49:12 -04:00
btzr-io a565f7c5df fix labeling and rename some strings 2020-08-04 11:49:12 -04:00
btzr-io 18a6e7c7c1 generate temporal file for published story 2020-08-04 11:49:12 -04:00
btzr-io c47c6f6034 fix story validation and content loading on web 2020-08-04 11:49:12 -04:00
btzr-io c7ea2a14ad fix web version build 2020-08-04 11:49:12 -04:00
btzr-io 9fc2384649 fix changes not saving on edit mode 2020-08-04 11:49:12 -04:00
btzr-io 2ff1fc024c load story content from streaming url and improve form validation + minor fixes 2020-08-04 11:49:12 -04:00
btzr-io a5d1746151 add in-app text and markdown publishing 2020-08-04 11:49:12 -04:00
Sean Yesmunt 80d8eeb4cf move ads in ClaimList behind SHOW_ADS config 2020-08-03 16:16:04 -04:00
jessop 314fb22638 pull sync on nav to settings 2020-07-31 17:09:05 -04:00
Sean Yesmunt c65afb201d fix embedded link for encoded url 2020-07-30 17:20:39 -04:00
jessop c33ce28805 sync settings generally based on navigation and settings paths 2020-07-30 17:05:30 -04:00
Sean Yesmunt 9acbdf9825 group comment notifications and clean up notification style 2020-07-30 16:15:02 -04:00
infiinte-persistence 0ab5ca080e Fix 'Related' being loaded on Autoplay despite not visible.
## Issue
In the `Autoplay` case, if the `WaitUntilOnPage` has already opened the gates previously, the next video's Related will be loaded regardless of scroll position.

## Changes
Add a `lastUpdateDate` prop to `WaitUntilOnPage` to allow the parent to reset the gating state.

I don't really like the `lastUpdateDate` prop since it's purpose is not intuitive. Is there a standard way to do a "one-time trigger" from the parent?
2020-07-29 17:56:38 -04:00
infiinte-persistence c1dbb752d8 RecommendedContent: Move WaitUntilOnPage to within the component instead.
This allows `RecommendedContent` to render the Card but with an empty list, so that the area isn't totally blank while waiting for `WaitUntilOnPage` to debounce.
2020-07-29 17:56:38 -04:00
infiinte-persistence 1383b19817 WaitUntilOnPage: Debounce to fix false positives.
There are cases where `WaitUntilOnPage` will incorrectly render, such as at the beginning if the upper components hasn't expanded to full size, so `WaitUntilOnPage` would be briefly visible.

Added a 300ms debounce to fix this, which would also improve scrolling performance a bit by doing less. Hopefully 300ms is enough for the upper components to inflate to full size.
2020-07-29 17:56:38 -04:00
jessopb 2a5d87ee54
Merge pull request #4602 from lbryio/fix-syncThemeSetting
trigger sync on theme change in nav menu
2020-07-29 17:56:06 -04:00
Sean Yesmunt ca89dab45f move claim uri under file/channel details 2020-07-29 13:04:58 -04:00
jessop b185857eb0 trigger sync on theme change in nav menu 2020-07-28 22:52:44 -04:00
Sean Yesmunt 0df388280e add search code from lbry-redux 2020-07-27 16:37:36 -04:00
jessop 142e695150 reverse child comments 2020-07-27 16:14:23 -04:00
Sean Yesmunt d76ece04bc group similar settings in preparation of tabular settings page 2020-07-27 14:19:18 -04:00
jessop 0b3dbfc8f8 bump redux 2020-07-27 11:53:14 -04:00
jessop d9bf72a351 all settings constants come from redux
sync settings

backout nav cases and anon preference key

more robust backout header

put notificationSettings under backout bar

review changes
2020-07-27 11:53:14 -04:00
Sean Yesmunt e10647b5a2 hide some file page buttons with SIMPLE_SITE flag 2020-07-27 10:48:05 -04:00
Sean Yesmunt 5ea87b76c9 use SITE_NAME from config for tos copy 2020-07-27 10:48:05 -04:00
Sean Yesmunt 312ff91994 add SIMPLE_SITE config value to disable complex UIs 2020-07-27 10:48:05 -04:00
Sean Yesmunt 4b6c772adc copy changes 2020-07-27 10:48:05 -04:00
Sean Yesmunt 201417efcf Publish => Upload 2020-07-27 10:48:05 -04:00
Sean Yesmunt fd6be7d3af simplify share modal slightly 2020-07-27 10:48:05 -04:00
infiinte-persistence 58adba306a Block mature content: Updates based on feedback. 2020-07-24 16:59:02 -04:00
infiinte-persistence 4c57cdd99f Block mature content when accessed directly from URL
## Issue:
Fixes 4549 `Mature content + navigating to URLs directly`
_If a user navigates to mature content directly, we currently show the page even if mature content setting is not enabled. With our recent mature content verification setting, we should hide the page until the user turns it on - we can prompt directly on the file page._

## Changes:
1. Show basic info of the claim like URL and Title, so that user knows which page is being blocked.
2. Initially, I had 2 "boxes" -- one for the title and another for the message. It felt a bit messy, so `FileTitle` was augmented to house everything in one box.
2020-07-24 16:59:02 -04:00
Sean Yesmunt f94cf9da93 Library => Purchased on web 2020-07-23 11:16:32 -04:00
Sean Yesmunt 642e3663f7 simplify floating player controls 2020-07-23 11:16:32 -04:00
Sean Yesmunt 8960a4f5cb simplify wunderbar copy 2020-07-23 11:16:32 -04:00
Sean Yesmunt 90327a72ed add comments behind a flag 2020-07-23 11:03:00 -04:00
Sean Yesmunt ed1ee8ac98 better handle channel thumbnail upload and remove spee.ch text 2020-07-22 12:26:31 -04:00
Sean Yesmunt 69d010435b allow blocking channels from comment 2020-07-20 14:48:25 -04:00
jessop 81ffd7ae79 specify first run follow in config 2020-07-20 13:59:46 -04:00
infiinte-persistence ca4dd9e246 New Channel: Fix incorrect GUI configuration at entry
## Issue:
Fixes 4411 `"SelectChannel=New" doesn't show all fields on re-entry`

## Code Changes:
`selectChannel`: Correct the value of `addingChannel` in the constructor based on the given props.
2020-07-20 11:36:36 -04:00
infiinte-persistence 99c1401164 Restore and fix "comment out youtube badge on file page to fix mobile style"
(1) This reverts commit 8641a3ee1c.

(2) Fix floating-player misalignment due to YT badge in mobile by hiding the badge.

At first, the suggestion to truncate the left URI to keep the entire thing single-lined was implemented, but during testing, I realized that the YT badge will take up the entire width anyway (especially on other languages). The URI is more important than the badge, and truncating both of them would be ugly.

Given the preference to not have 2 lines for this, we'll just hide the badge for the mobile case.

For the Channel Page case, let's make it single-line through "4454: URL / top claims overlap" instead. We'll keep this commit/PR limited to fixing the YT badge.
2020-07-20 10:48:32 -04:00
infiinte-persistence ff5518e421 Fix missing str change in [0c3a3ae4] - 'updated' -> 'checked'
The json was updated but the actual usage was not.
2020-07-20 10:48:32 -04:00
infiinte-persistence 60af367b18 Fix channel file-search not available in mobile
## Issue
Fixes 4524 `[mobile] in channel search not available`

## Changes
There are currently 3 wunderbars: (1) header (2) channel list (3) downloaded list.

The additional `wrapperStyle` in the header made it hard to find a solution that works for all 3, so I split 2 and 3 into `wunderbar__input--inline`.
2020-07-20 10:37:10 -04:00
infiinte-persistence f31369a16d Fix 'transcoding' checkbox state when switching file types.
## Issue:
Currently, the checkbox grayed-out state is only correctly updated when changing from "no-file" to "file selected". If you have selected a video file and later changed to a text file, the checkbox doesn't gray out.

## Code Changes:
`fileVid` wasn't being updated for the case of non-videos; now it does.
2020-07-20 09:57:59 -04:00
jessop e7e7d6dba4 fix comments functions import 2020-07-16 13:18:06 -04:00
Sean Yesmunt 0e2b1b98b8 add id to iframe for easier embed styling 2020-07-15 23:33:14 -04:00
infiinte-persistence 8e7604ec33 Video: Consolidate showTapButton() into a single call since the functionality is mutually exclusive. 2020-07-15 16:10:10 -04:00
infiinte-persistence 7bef092013 Add option to retry video stream on failure
## Issue
Closes 4475 Option to retry video stream on failure
2020-07-15 16:10:10 -04:00
infiinte-persistence 115c456318 Video: Stop loading circle when there's an error. 2020-07-15 16:10:10 -04:00
infiinte-persistence 5e51016602 VideoJSOptions: Remove duplicate poster declaration 2020-07-15 16:10:10 -04:00
infiinte-persistence cba2ccf1cb Show "YT Creator" label in File Page as well.
## Issue
Closes 3964 `Add Youtuber info to file page`

## Changes
(1) Refactor the YT-info query into `YoutubeBadge` component.
(2) For the File Page case, don't show "- last sync <date>" since the date has nothing to do with the file.

## Test
[x] YT Channel page
[x] YT Channel's claim page
[x] Non YT Channel page
[x] Non YT Channel's claim page
[x] No channel (anonymous) claim page
[x] Various RENDER_MODES
2020-07-15 15:27:03 -04:00
Sean Yesmunt 2fdc4376bf fix import statement 2020-07-15 12:33:20 -04:00
Sean Yesmunt 69cfcd81e9 bring in 'blocked' code from lbry-redux take 2 2020-07-15 09:52:08 -04:00
Sean Yesmunt 9c9530c6f3 Revert "bring in comments/blocked code from 'lbry-redux'"
This reverts commit fa7f74f979.
2020-07-14 19:23:25 -04:00
infiinte-persistence 2ea66f9d8d Refactor zooming code into "effects/use-zoom.js" 2020-07-14 16:08:24 -04:00
infiinte-persistence bc19503419 Allow zooming on Desktop
## Issue
Closes 4501 `Font size`

## New behavior
The Desktop app can now zoom the same way as browsers:
- Zoom In: "Ctrl+=" or "Ctrl+numpadPlus" or "Ctrl+WheelUp"
- Zoom Out: "Ctrl+-" or "Ctrl+numpadMinus" or "Ctrl+WheelDown"
- Zoom Reset: "Ctrl+0" or "Ctrl+numpad0"

## Code changes
(1) Electron provides this functionality through the `zoomIn|zoomOut|resetZoom` roles in the Menu, so it would have been a quick job.

However, given that Electron currently does not support having multiple accelerators for one item, we can't add `Ctrl+WheelUp` to the mix and would have to implement our own handler and use `webFrame`.

Given that we need to add code anyways, we handle both keyboard and mouse cases through the same handler, hence the existence of `zoomWindow.js`.  It also provides the opportunity to few a few quirks with Electron's default implementation (e.g. stuck at both extremes)

(2) I recall there is another Issue for adding keyboard shortcuts.  Given that these shortcuts are universally used in browsers, they are probably "reserved", so shouldn't clash with that task.
2020-07-14 16:08:24 -04:00
infiinte-persistence 2754c962a4 Inf-scroll: Fix glitch when results are exactly the page size.
## Issue
Fixes 2675 `Claim search with exactly 20 results keep fetching next page`

## Changes
Use `claimSearchResultLastPageReached` (I didn't know it existed back then).

The unnecessary "loading" refresh will still happen one time, but at least now it doesn't happen every time we scroll to the bottom (and incorrectly incrementing 'page').
2020-07-14 16:05:42 -04:00
eatdostacos 9b10b775cd Add a LBRY status card to help page with links to new FAQ page and status page 2020-07-14 15:58:02 -04:00
Sean Yesmunt fa7f74f979 bring in comments/blocked code from 'lbry-redux' 2020-07-14 15:57:19 -04:00
infiinte-persistence 860e5f097c Inf-scroll: Handle case of "pop from claim"
This is a follow-up on PR-4392.

## Issue:
The previous PR covered "pop from within the same page but with different query/order", but missed "pop after entering a claim".

1. Click `Your Tags`.
2. Set order to `New`.
3. Restart app or reload (crucial step)
4. Click `Your Tags`.
5. Click any claim.
6. `Back`. The order incorrectly resets to `Trending` -- it should stay at `New`.
2020-07-13 14:30:58 -04:00
Sean Yesmunt 856cc41f39 comment out lbry-first code 2020-07-13 10:03:00 -04:00
jessopb b39ff9ff7a
Merge pull request #4511 from lbryio/fix-matomo-useridemailonly
only set matomo userid if hasverifiedemail
2020-07-10 10:33:12 -04:00
jessop 1881627a89 only set matomo userid if hasverifiedemail 2020-07-10 10:14:06 -04:00
Sean Yesmunt da7b331760 style cleanup 2020-07-09 14:49:36 -04:00
Sean Yesmunt 951d7bbb63 remove 'show both' date option in DateTime 2020-07-09 14:49:36 -04:00
Sean Yesmunt 706c4afd04 disable submit button while login is pending 2020-07-09 14:49:36 -04:00
infiinte-persistence 86484eb13f TipModal: Move "Buy More" next to price selection.
Having the "Buy More LBC" at the bottom seems out of place, since the context of LBC/amount is in the middle of the modal.
2020-07-09 13:04:18 -04:00
jessop 4131165d6a fix title 2020-07-08 18:35:49 -04:00
Sean Yesmunt 27e44b0320 update punctuation 2020-07-08 15:02:14 -04:00
Sean Yesmunt 5c6e2e96fb update title/subtitle on support modal if user is sending a tip 2020-07-08 14:57:37 -04:00
infiinte-persistence 9389b61f02 UserPasswordReset: Handle 'Cancel' and 'X' for the direct entry scenario.
The `UserPasswordReset` can be accessed in two places:
(1) While signing in
(2) From the Settings Page when changing password.

This commit:
- maintains the existing `Cancel|X` behavior for case-1, which is to remain in the Sign-in page.
- For case-2 and any future direct-entry, we'll simply call `goBack()`.
2020-07-08 14:36:04 -04:00
infiinte-persistence 3f8d447b2a Add 'Forgot Password' button when changing passwords in the Settings Page.
This will directly go into the Reset Password page. This scenario is only possible after already signed in.
2020-07-08 14:36:04 -04:00
infiinte-persistence fdcfd3b6fc Add: PasswordResetPage (the real one) 2020-07-08 14:36:04 -04:00
infiinte-persistence 19a94d3039 Revert "Add password reset ... (4468)" to redo using redirect page method. 2020-07-08 14:36:04 -04:00
infiinte-persistence e5c4246e15 Add password reset link to settings page (4468) 2020-07-08 14:36:04 -04:00
Sean Yesmunt 38b26f0bfc don't allow lbry-first tag to be added manually 2020-07-08 14:23:43 -04:00
Sean Yesmunt 2f1e126551 don't count 'lbry-first' towards max tag limit 2020-07-08 14:23:43 -04:00
Sean Yesmunt d6335464d3 cleanup - broken? 2020-07-08 14:23:43 -04:00
Sean Yesmunt f9325a816e only start lbryFirst daemon for approved users 2020-07-08 14:23:43 -04:00
Thomas Zarebczan 4291c36c58 Initial commit for LBRY-First
fix killing daemon

bump lbry-first
2020-07-08 14:23:43 -04:00
Suisse00 11c5e9a307 Normalize email place holder value
Use a more neutral exemple domain already in use
2020-07-07 09:31:08 -04:00
infiinte-persistence 92be15ae04 ShareModal: Change "..." icon to "Links" 2020-07-07 09:29:05 -04:00
infiinte-persistence 12db7c519f Revert the Links Modal; we'll augment the Share Modal to include the download link.
This reverts commit cb47ed61375b4de32adacd89ce46d5da183150b5.
2020-07-07 09:29:05 -04:00
infiinte-persistence 3a2284a244 Add dialog to copy various types of links for a claim.
## Issue
Fixes 4293 `Better download link support`

- [x] make it so you can right click a download button > copy download URL
   Given that this could be useful in mobile/web as well, I used a button+modal instead of the right-click approach.

- [ ] in share dialog, show download URL to copy for non-video content
   This is already implemented, albeit hidden in the "More..." expansion.
2020-07-07 09:29:05 -04:00
infiinte-persistence 833bceeacc Fix unmuted state lost or reverted when playing a new video.
## Issue
Fixes 4460 `unmuted state lost / reverted`

1. Play a video.
2. Press mute.
3. Drag the volume bar to unmute.
4. Play a new video --> the video starts muted.

## Fix
The `volumechange` handler was comparing against stale variables, so there are times where the state was not saved. Just save both `muted` and `volume` without additional gating (the gating is probably unnecessary in the first place, since we are in a onChange function).
2020-07-07 09:28:04 -04:00
infiinte-persistence 1a3669ca76 Patch for "7839bbf2: Fix language-change not applied to all components immediately"
- Missed the "Account Password" card that is used for authenticated case.
- For cards that are only used in Settings, listen to the language change in "select" instead of passing in as a prop. I think this is cleaner.
2020-07-06 09:52:16 -04:00
infiinte-persistence 8920b4ca75 Fix video transcode setting not reflected correctly (MP3 incorrectly transcoded to MP4)
## Issue
4332: Video transcode setting not reflected correctly (MP3 incorrectly transcoded to MP4)

2 issues here:
(1) The checkbox is mixing between user state and logic state.
(2) The variables (e.g. `optimize`, `isVid`, `filePath`, etc) will have values from the previous operation when you enter Publish Page, so GUI issues beyond Transcode can be also produced (e.g. showing Transcode enabled for an image).

## Changes
The "Transcode" checkbox state (checked vs. unchecked) will now reflect the user's desire and will be a persisted state. Whether or not this setting is used will be reflected by the checkbox's grayed-out state (i.e. it can be checked for non videos, but it will be grayed out).
2020-07-06 09:42:16 -04:00
infiinte-persistence 0fcf78a700 Minor renaming for clarity. No functional change.
updateOptimizeState --> updateFileInfo
available --> ffmpegAvail
2020-07-06 09:42:16 -04:00
Suisse00 406ca3b998 Un hardcoded price filter label options 2020-07-03 17:05:23 -04:00
jessop 70ee34f52e amount part deux 2020-07-03 11:03:29 -04:00
jessopb 64d67026cc
Merge branch 'master' into feat-newChannelCreate 2020-07-03 10:53:16 -04:00
jessop 4fa6a561ed amount 2020-07-03 10:44:29 -04:00
jessop 2315727385 tweaks 2020-07-03 10:32:48 -04:00
jessop c91ce52be8 old channel create default bid 2020-07-03 10:27:01 -04:00
jessop d66f2cd604 fix bid amount 2020-07-03 10:23:49 -04:00
jessop 1f32d454db error handling, ux tweaks, apiLogPublish 2020-07-02 18:27:49 -04:00
Sean Yesmunt f4310cd3aa fix thumbnail/cover edits 2020-07-02 13:41:16 -04:00
jessop 9952359e28 fix redirect after delete 2020-07-02 13:18:06 -04:00
Sean Yesmunt ba71d36e9a remove unused styles and add title fallback 2020-07-02 13:01:31 -04:00
jessop ffa248a353 limit tags, new channel link 2020-07-02 12:18:59 -04:00
Sean Yesmunt 8b266ebacb fix typo 2020-07-02 11:39:12 -04:00
Sean Yesmunt 8fe618c5be fix typo 2020-07-02 11:08:58 -04:00
infiinte-persistence 16ea14887c Inf-scroll: Change region to 'main' to ignore long tag/following list.
## Issue:
2789 `Infinite scrolling should activate at end of listed claims, not subscription list`
2020-07-02 10:37:31 -04:00
eatdostacos aede386c22 Add/Correct Strings 2020-07-02 10:34:11 -04:00
Sean Yesmunt 259f51abd6 style pass for channel edit
clean up sections and improve navigation handling

cleanup + image upload modal styling
2020-07-01 22:04:23 -04:00
jessop 36f93343f6 new channel creating and editing 2020-07-01 22:01:48 -04:00
eatdostacos 84886e4b8a Put LBC amount with 4 precision on tip menu for all versions 2020-07-01 11:19:47 -04:00
infiinte-persistence 87e53db699 Don't expand search filters automatically if popping from Back action.
The existing behavior of automatically expanding when needed && when entering the page is still maintained.
2020-07-01 11:11:47 -04:00
infiinte-persistence defcda519e Inf-scroll: Remove history of whether we've serviced the bottom.
## Fixes:
4351: "Infinite load won't work if the same sort option clicked"

Test case:
1. Click Following
2. Click New
3. Scroll down to load at least 1 extra page.
4. Go up and click New again.

## The Issue:
`scrollBottomCbMap[page]` in this case did not reset since the `id` remained the same.

## The Fix:
I don't know how else to notify the effect to run. Perhaps "when `page=1`" is one criteria, but I found that removing `scrollBottomCbMap` can also fix it.

I don't know what scenario that `scrollBottomCbMap` was originally meant to handle, so will need to depend of reviewer to confirm I did not break something else. This fix assumes that recent inf-scroll fixes and debouncing would have addressed the "weird stuff happening with fast scrolling" problem mentioned in the comments.
2020-07-01 11:11:47 -04:00
infiinte-persistence 9c7b882fbd Properly debounce the inf-scroll handling.
The previous code was simply delaying the handler, which served the intention of the time, which is to avoid using the wrong coordinate from querying too early. However, we ended up servicing each scroll message.

This is the proper fix, and should technically make scrolling smoother. Maybe this will fix 3576 as well, although I don't see much difference.
2020-07-01 11:11:47 -04:00
infiinte-persistence ad37edf681 Inf-scroll: Fix scroll not working when navigating back from claim.
## Fixes:
3071: "Infinite scroll stops working when navigating to file page / back"

## The Issue:
In the POP operation, the `page` value is back to 1 due to the initializer `useState(1)`. If the results cache already contained more than 1 page's worth, then the rest of the logic thinks there's nothing to do.

## The Fix:
Previous fixes to Inf-Scroll added a "page correction" code to handle the mismatch. This fix simply adds this scenario to the list of scenarios to perform the correction.
2020-07-01 11:11:47 -04:00
infiinte-persistence 86bae6eaee AbandonedChannelPreview: Handle blocked channels as well.
Issue 3800
2020-06-29 16:05:23 -04:00
Sean Yesmunt 74a18b724e fix subscribe button label not showing on mobile 2020-06-29 13:25:29 -04:00
infiinte-persistence 2673a18923 Fix unresolved translations in the Splash Screen. 2020-06-29 09:52:05 -04:00
infiinte-persistence 7839bbf2a1 Fix language-change not applied to all components immediately.
## Fixes:
3641 Language switch does not take effect right away

## Assessment:
Although `Card`s in the Settings Page are actually being re-rendered, the `actions` within them might not be getting the signal, depending on their props.

## Changes:
(1) Pass the language variable to the `actions`'s props for items that are affected.
(2) Make the Wunderbar listen to language-changes as well (the only component outside of Settings that would need an immediate update).
2020-06-29 09:48:12 -04:00
eatdostacos ed624a1b5d Correct link to buy page 2020-06-29 09:47:26 -04:00
eatdostacos d9a0e7c655 Add link to buy LBC when you don't have enough for paid content
I added the link and I updated the strings to accomodate updated content.
2020-06-29 09:47:26 -04:00
infiinte-persistence adb2a60d58 Skip translating blank string; Add new strings from Settings Page. 2020-06-29 09:46:42 -04:00
infiinte-persistence b010325618 Pause 'Autoplay': cleanup
1. Use a constant for the classname instead of being hardcoded.
2. Use existing 'debounce' function instead of introducing another.
3. Added changelog entry.
2020-06-25 00:23:47 -04:00
infiinte-persistence 2c695b8150 Pause 'Autoplay' when a Modal is present. 2020-06-25 00:23:47 -04:00
infiinte-persistence 39db18046f Pause 'Autoplay' when scrolled off screen.
Fixes #-4021.

## Changes:
When the autoplay overlay gets partially off-screen, the timer will be stopped. We can tweak how much down it needs to be scrolled.

When timer is paused, the countdown resets.

The pausing mechanism has no effect on the floating player (since the 'top' can never go negative). This behavior is the same as another big video platform.
2020-06-25 00:23:47 -04:00
Sean Yesmunt 63ce5526ca update label text 2020-06-23 17:56:41 -04:00
Sean Yesmunt 41abbcc861 Revert "bring in blocked redux code from lbry-redux"
This reverts commit b9f3146180.
2020-06-23 16:21:40 -04:00
Sean Yesmunt 0bf656f74b Revert "fix import"
This reverts commit c84c8a0288.
2020-06-23 16:21:30 -04:00
Sean Yesmunt c84c8a0288 fix import 2020-06-23 16:10:59 -04:00
Sean Yesmunt b9f3146180 bring in blocked redux code from lbry-redux 2020-06-23 16:01:20 -04:00
Sean Yesmunt 49bcfdce83 bring in comment code from lbry-redux 2020-06-23 16:01:20 -04:00
infiinte-persistence d7b1cde274 Add claim-overwrite prevention.
---Fixes:
#-2882: "Fix UX around publishing to already published URL".

---Changes:
1. Improved the error message (change color to red; emphasized the URL; tweaked the sentences a bit).
2. The `Publish` button will be grayed out in this scenario, until user explicitly decides to edit existing claim instead.
2020-06-22 15:21:42 -04:00
jessop e3a5d71e34 channel update submitting state 2020-06-22 12:42:20 -04:00
jessop e065c81f88 support channel pending state 2020-06-22 11:27:03 -04:00
eatdostacos 3d4f0a93b5 Add logos to custom logos page 2020-06-22 10:49:21 -04:00
infiinte-persistence 391b5d2b50 Delete unused or duplicate strings. 2020-06-22 10:27:55 -04:00
infiinte-persistence 2f8af4e1fa Allow upgrade nag bar to be dismissed per session
#-4368:
"Users on third party builds may have to wait a few hours for the update and the bar is annoying."
2020-06-22 09:50:35 -04:00
Sean Yesmunt b4851e6045 bring in email preferences page from lbry.com 2020-06-22 09:45:49 -04:00
Alex Grin d8b4c91259 minor typo
this is the more common spelling of revocable
2020-06-22 09:35:39 -04:00
infiinte-persistence 1cd18ac9f4 Inf-scroll: (1) Reset to top (2) Fix "page vs. results" being out of sync.
--- Issues:
(1) #-2669: Page does not restore to top when navigating new tags.

(2) "Encountered children with the same key" error (duplicate entries shown).
https://github.com/lbryio/lbry-desktop/issues/4367#issuecomment-645449206

--- Changes:
(1) Ignore the history if it's a new query (i.e. explicitly clicked). The BACK history will still behave as normal (doesn't reset to top).

(2) Previously, the `page` variable will continue to increment as you scroll and stay within the page (e.g. Trending vs New, or clicked another Tag). As you move between queries, we hit a scenario where `page` is significantly under or over the latest retrieved `claimSearchResult.length`. This messes up the rest of the code.

Fix by correcting the value of `page` according to the current `claimSearchResult.length` when necessary.
2020-06-22 09:31:05 -04:00
jessopb dbac4aca39
Revert "improve channel update" 2020-06-19 13:10:34 -04:00
jessop 99753f7717 improve channel edit 2020-06-19 12:41:45 -04:00
infiinte-persistence 644e76fd81 Tip-Modal: Add settings persistence and UX improvements.
--- Issues:
(1) #-4394 add persistence to new support modal.
(2) Should collapse the custom field when presets are selected.
Even though the Send button repeats the amount for Tip, it's still confusing to see both the Preset being active and Custom numeric field visible.
(3) Missing localization tags.
2020-06-18 22:01:49 -04:00
Sean Yesmunt fa246a7f1f move channel search into ChannelContent component 2020-06-18 12:19:21 -04:00
infiinte-persistence d01c20394e Fix "muted=false + volume=0" case.
We need to handle two types of "mute":
- Volume icon is pressed to mute.
- Volume slider moved to 0%.
2020-06-16 17:14:22 -04:00
infiinte-persistence 662778c47b Use 'process.env.NODE_ENV' instead of 'electron-is-dev' for spewing debug logs. 2020-06-16 17:14:22 -04:00
infiinte-persistence a20ea08ac7 Show "unmute" option on videos automatically muted by browser.
Implementation:
- The code is placed in <VideoJs> instead of <VideoViewer> as we need to control the video itself. It's more self-contained here, rather than trying to pass refs around between parent and child.
- useState cannot be used as it will cause a re-render when the hint it clicked and dismissed. The DOM is used to hide the button.
2020-06-16 17:14:22 -04:00
infiinte-persistence bbda69dc5f Inf-scroll: Don't add pages when no more results are available.
--- The bad scenario:
A less popular tag like 'kanji' yields only 23 results today. The code continues to increase the page count. We'll either see some blank page glitches at the bottom, or repeated entries being shown.

--- The fix:
Assume that an unfilled page means "no more results" and stop incrementing the page. This seems true based on empirical evidence.
2020-06-16 16:59:00 -04:00
infiinte-persistence 522c6ddcd6 Inf-scroll: Fix "am I at bottom" logic.
If you are at the bottom and you hit the UP_ARROW key one time, the logic still thinks we are at the bottom, despite the component has clearly moved. Similar to the issue noted in the previous commit, this causes the page to increment incorrectly.

My wild guess is that the previous logic depends on the css height, so it might got broken due to css changes. Hopefully the new calculation is more robust and works for all cases.
2020-06-16 16:59:00 -04:00
infiinte-persistence c957b159b1 Inf-scroll: Debounce before handling 'onscroll'.
---The bad scenario:
If you're at the bottom and you go up using UP_ARROW or HOME key, the coordinate is still at the bottom if we service the callback immediately. This causes 'contentWrapperAtBottomOfPage' to be true and we ended up incrementing the page unnecessarily (even for searches that no longer yield any extra results).

---Fix:
Fix by adding a delay. The value can probably be fine-tuned further.
2020-06-16 16:59:00 -04:00
infiinte-persistence ff7b4092c9 Publish: Make 'Channel' setting persistent.
Per discussion with Tom.
2020-06-16 16:36:23 -04:00
infiinte-persistence 9d6af38a21 Persist trending selectors between tags.
---The issue:
When switching between tags, the selector defaults back to Trending even though you had another option already selected.

---Changes:
- 'orderParamUser' will store the last user state persistently. The persistent state is also made unique for each page (i.e. Your Tags and All Content will be unique).

- If the parent component passes in a specific order, that will be respected and will also become the new persisted value. One example is "Your Following", where it always starts at 'New'.

- Handled navigation history correctly
The test case:
   - Enter "Your Tags" (assume start at 'Trending')
   - Click 'New'
   - Click 'Top'
   - Back
   - Back (it should return to 'Trending')
As the top page history does not have any "?order=" value, we ended up with a no-op for the last Back. 'orderParamEntry' is added to handle this.
2020-06-16 16:36:23 -04:00
Sean Yesmunt 2066205b8f add user + rewards redux code from lbryinc 2020-06-16 09:56:32 -04:00
Sean Yesmunt 7138fe54bc bring in 'notifications' state from lbry-redux 2020-06-16 09:56:32 -04:00
eatdostacos 5a219c7b4b Add link to "Buy More LBC" button
Previously, the link was missing and the button didn't do anything.
2020-06-16 09:13:15 -04:00
Sean Yesmunt 8a825b1a83 fix typo 2020-06-15 19:18:34 -04:00
Sean Yesmunt f13cc3c51c fix label on tx table for supports 2020-06-15 19:02:03 -04:00
infiinte-persistence fe431c30a7 SimpleMDE: Add character-count display and standardize look with basic editor's. 2020-06-15 10:53:17 -04:00
infiinte-persistence 805904360e Set "Description" field limit to 5000 characters.
This applies to both Channel and Claim description.
2020-06-15 10:53:17 -04:00
infiinte-persistence 749b13e3eb Rename: "constants/comments.js" --> "constants/form-field.js" 2020-06-15 10:53:17 -04:00
infiinte-persistence 96041e8b09 SimpleMDE: Add character limit functionality. 2020-06-15 10:53:17 -04:00
infiinte-persistence c197a1f230 Don't gray out on "Support/tip unlock" or "Abandon Claim" failures.
#4379
2020-06-15 10:51:50 -04:00
Sean Yesmunt 4bbd831a16 fix mobile style 2020-06-15 10:50:01 -04:00
Sean Yesmunt c3cdc742ab fix submit button after confirming 2020-06-15 10:50:01 -04:00
Sean Yesmunt deb4107dd0 confirmation cleanup 2020-06-15 10:50:01 -04:00
Sean Yesmunt 01e0a2a5db improve support/tip for 0 balance and own claims 2020-06-15 10:50:01 -04:00
Sean Yesmunt 019d1f9176 tip/support marriage 2020-06-15 10:50:01 -04:00
TigerxWood 8099088415 Made uniform display of text views
Too many forms of word "views" and "view" to translate, with caps and without. We need to choose the same in all places.
2020-06-09 09:26:41 -04:00
TigerxWood bb790b4332 Removed space to sync with app-strings
Removed space to sync the text "LBRY takes privacy and choice seriously. Just a few questions before you enter the land of content freedom." with that from app-strings.jsx
2020-06-09 09:24:58 -04:00
TigerxWood 29b0111c9e Made strings from settingWalletServer translatable
Made connecting string translatable
2020-06-09 09:24:32 -04:00
TigerxWood 374323713b Make strings from fileDetails translatable
Text  for files sizes can be translated as Mo (from Mega octet) so KB, MB, GB etc will be Ko, Mo, Go etc. in other languages.
2020-06-09 09:24:15 -04:00
Sean Yesmunt 1dcf16b0b4 fix download link on desktop 2020-06-08 16:26:49 -04:00
Sean Yesmunt 36d60fabe4 make sure auth token header is set before any authenticated sdk calls are made 2020-06-08 13:38:34 -04:00
jessop 91662a9d57 force https thumbs or handle img src error 2020-06-08 09:42:19 -04:00
Sean Yesmunt fea3533b4c fix share link 2020-06-05 12:17:36 -04:00
Sean Yesmunt dd47bc673d fix links in embeds 2020-06-04 10:57:31 -04:00
infiinte-persistence 50fc2698d6 Add StatusBar into Page for 'app' only.
#3776 #4259
2020-06-04 10:31:06 -04:00
infiinte-persistence ae82b3fc05 Create transient "status bar" to display the hover URL.
Implementation:
- <StatusBar> listens to 'update-target-url' and will show/hide itself as needed.
- Handled the display of "lbry://" protocol.

CSS:
- The colors chosen should work on both Light and Dark Theme.
- The delay is necessary to avoid blinkies when the mouse is moving around.

#4259
2020-06-04 10:31:06 -04:00
Sean Yesmunt e7cdd6c13d moonpay 2020-06-03 14:16:43 -04:00
Sean Yesmunt 48a707f0db fix comment replies when turning off advanced mode 2020-06-03 11:39:37 -04:00
Sean Yesmunt 1cae7a6038 fix share link so claim id isn't lost in url 2020-06-03 11:39:37 -04:00
jessopb 77971e4f1f
Merge pull request #4305 from lbryio/noGa2
strip ga calls
2020-06-03 10:37:26 -04:00
jessop 7fe88d86d5 strip ga calls 2020-06-02 16:52:34 -04:00
TigerxWood c0fc7e5fbd Fix boolean declaration in claimInsufficientCredits 2020-06-02 16:20:36 -04:00
TigerxWood 5b4e45b0b0 Update translatable string 2020-06-02 16:19:17 -04:00
Sean Yesmunt 16fcc4c932 only set x-lbry-auth-token once user is signed in 2020-06-02 16:10:43 -04:00
Sean Yesmunt 48eac1188f always use thumbnail from claim if it exists on web 2020-06-02 16:10:43 -04:00
Sean Yesmunt a0ace5ca58 add refresh icon to refresh buttons 2020-06-02 16:10:43 -04:00
infiinte-persistence cbb6fc8305 Remove unnecessary variables and strings for translation.
-- "/wallet" --
I believe this is a link and comes from redux, and shouldn't be translated.

-- "%message%" --
No point sending a variable-only to the translators -- the intended replacements are  translated correctly.

-- "%name%" --
Unused.

-- "Something something something..." ---
Unused.

-- Obsolete strings (replaced by better string) --
  "You are not able to see those stats right now. Make sure you are signed in with the correct email and have data sharing turned on."

  "You are not able to see this channel's stats right now. Make sure you are signed in with the correct email and have data sharing turned on."

  "There are no stats for this channel. Make sure you are signed in with the correct email and have data sharing turned on."
2020-06-01 10:29:16 -04:00
Sean Yesmunt 3d352593f3 defer rendering related/comments until user scrolls down 2020-06-01 10:28:13 -04:00
Jeremy Kauffman a3d9555d38 pubish buttons get publish icons 2020-05-31 09:56:33 -04:00
TigerxWood 4fbc4458e7 Made texts translatable
Texts will be translated now
2020-05-29 16:52:00 -04:00
TigerxWood 75796901e0 Made texts translatable
Texts will be translated now
2020-05-29 16:45:58 -04:00
TigerxWood 87e369cb11 Made text translatable
Text will be translated now
2020-05-29 16:45:39 -04:00
TigerxWood 37b1caccc2 Made text translatable
Text will be translated now
2020-05-29 16:45:39 -04:00
TigerxWood 199953448c Made text translatable
Strings can be translated now
2020-05-29 16:44:41 -04:00
Sean Yesmunt be10041ea4 disabled advanced editor for comment replies 2020-05-29 15:29:08 -04:00
Sean Yesmunt d301102af6 call preference get after entering wallet password 2020-05-29 15:29:08 -04:00
jessopb 43e8c49dcc
Merge pull request #4285 from lbryio/matomo
initial matomo rollout
2020-05-29 15:11:16 -04:00
Sean Yesmunt 91aaceda99 re-enable gifs on homepage because i can't figure out how to get it to work 2020-05-29 13:26:06 -04:00
jessop 50089725f5 initial matomo rollout 2020-05-29 11:11:50 -04:00
Sean Yesmunt 85ec35f246 pause gifs until hover round 2 2020-05-28 13:07:51 -04:00
Sean Yesmunt 06f71f2f0d Revert "pause gifs until hover"
This reverts commit e97a03c5c9.
2020-05-28 12:31:45 -04:00
Sean Yesmunt e97a03c5c9 pause gifs until hover 2020-05-28 11:39:39 -04:00
Sean Yesmunt f03fe9f78b remove extra div 2020-05-28 10:47:27 -04:00
Sean Yesmunt c2b80d3b3b fix dnd for some file types 2020-05-28 10:45:56 -04:00
infiinte-persistence 37fb7a9bf7 Consolidate variants of 'Read more' for reuse.
The version with the capitalized 'More' can probably be removed as well, but I left it as is.

#4239
2020-05-28 09:50:08 -04:00
infiinte-persistence 0cebb327c1 Fix split sentence: "%view_count% %views%"
The only issue I have with this as a translator is that I have no idea what this sentence is about, as both chunks are variables. This fix is more for clarity.

#4239
2020-05-28 09:50:08 -04:00
infiinte-persistence 1ef182ed71 Fix split sentence: "% downloaded"
#4239
2020-05-28 09:50:08 -04:00
infiinte-persistence 951300a1cd Fix split sentence: "or" in "Refresh or Skip" wasn't translated
#4239
2020-05-28 09:50:08 -04:00
infiinte-persistence a37b00e774 Fix split sentence: "By continuing, you accept the"
#4239
2020-05-28 09:50:08 -04:00
infiinte-persistence 8bd129799e Fix split sentence: "block|follow|unfollow this channel"
Concatenating strings directly assumes that all languages have the same structure as English, which it is not. This fix allows translators to move the tokens around per their language/grammar requirements.

#4239
2020-05-28 09:50:08 -04:00
Sean Yesmunt 424583de60 remove console log 2020-05-27 14:02:49 -04:00
Sean Yesmunt d4e2f8ffe8 change balance loading string to 'Your Wallet' 2020-05-26 22:15:03 -04:00
Sean Yesmunt 356b96941d auto follow lbrycast channel along with lbry channel 2020-05-26 17:49:01 -04:00
Sean Yesmunt 68e687ee6e moar improvements 2020-05-26 14:42:44 -04:00
Sean Yesmunt 7562fdcfd5 clean up old lbrytv reference 2020-05-26 14:20:39 -04:00
Sean Yesmunt f64e659a7c fix autoplay 2020-05-26 13:13:58 -04:00
Clayton Hickey a7812350ce remove manual override in formatting for credits in header 2020-05-26 12:38:56 -04:00
Sean Yesmunt 3a5549c2dc fix publish page 2020-05-26 11:48:07 -04:00
jessop e3c2919373 rename lbrytv to web
language and API consts

improve customization
custom homepages
get config from .env.default
custom title and logo

small changes

add pinned item to sidebar

rebase?
2020-05-25 17:21:02 -04:00
jessopb 1dba194b67
Merge pull request #4208 from jeffslofish/issue-4207
Allow double-clicking in header to maximize the app.
2020-05-25 15:00:36 -04:00
Sean Yesmunt b914590a77 update lbry-redux and add loading spinner for comments 2020-05-25 14:45:43 -04:00
Cassidy c0dd3e48a4 prevents effect from being re-ran on every render 2020-05-25 13:36:17 -04:00
Cassidy b5f3ac0526 disables page scroll when pressing spacebar 2020-05-25 13:36:17 -04:00
Sean Yesmunt 8b68932997 improve first time play experience for paid content in blog posts 2020-05-25 13:29:38 -04:00
Sean Yesmunt b244261715 commas 2020-05-25 13:29:38 -04:00
Sean Yesmunt 74dc6f4469 use nativeControls for ios devices 2020-05-25 10:36:17 -04:00
infiinte-persistence 8183b5822b Update markdown-toggle style in Publish to the new quick-action style for consistency with Comments. 2020-05-25 10:32:26 -04:00
infiinte-persistence 7064793319 Fix Reply's markdown-editor appearing in Create due to 'name' clash from a prior merger. 2020-05-25 10:32:26 -04:00
infiinte-persistence 5b11cd7c65 Comments: add ability to toggle between simple and markdown editor. 2020-05-25 10:32:26 -04:00
infiinte-persistence fffd2f1576 FormField: add an optional quick-action button for 'markdown' and 'textarea'.
Technically, the other modes can have a quick-action button as well, but for now it's not implemented since it's unlikely to be used.

The first usage will be to house the "toggle markdown editor" button, but it can be used for anything. The caller will handle the action.

It will be located at the upper-right, which is a better place for such a button. Putting the "toggle markdown editor" button on the bottom seems too far away and seems to make the 'Done|Cancel' area too busy/cluttered.
2020-05-25 10:32:26 -04:00
Baltazar Gomez ca4bbf53df
Support drag-and-drop file publishing (#4170) 2020-05-25 10:27:36 -04:00
infiinte-persistence 23848dd37a Fix <i18nMessage> not localizing the message.
--- Problem (#4173) ---
Messages under <i18nMessage> weren't localized although the translation is available. However, the tokens for these messages are localized, causing a mixed-language final string.

--- Fix ---
It appears that the original message (instead of the localized) was used in the token-substitution process.
2020-05-25 10:18:08 -04:00
Sean Yesmunt 737e0ed7ab add 2257 page in footer 2020-05-22 20:19:25 -04:00
Sean Yesmunt 03518c8a5a show price on embeds in markdown 2020-05-22 16:48:24 -04:00
Thomas Zarebczan 6d888b5121 A few tweaks 2020-05-22 11:17:47 -04:00
Sean Yesmunt 21f9fc7b31 Revert "Make sure native controls appear on touch devices Closes #4150"
This reverts commit 88f4329d34.
2020-05-22 10:30:56 -04:00
jessop e204659df2 fix unintended signin on play 2020-05-21 17:25:38 -04:00
Jeffrey Fisher 88f4329d34 Make sure native controls appear on touch devices
Closes #4150
2020-05-21 13:28:34 -04:00
Sean Yesmunt 4c768b3814 fix embed player 2020-05-21 12:53:21 -04:00
Sean Yesmunt e4500d692f fix embed player 2020-05-21 11:55:58 -04:00
Sean Yesmunt c2abcf110c
Paid content on lbry.tv (#4197) 2020-05-21 11:38:28 -04:00
Sean Yesmunt 50361e1edb fix link style 2020-05-18 16:46:03 -04:00
Sean Yesmunt 2dccad2247 fix embed link to open in new tab instead of iframing the entire app inside embeds 2020-05-18 13:07:42 -04:00