Commit graph

128 commits

Author SHA1 Message Date
94e3bcd21d Set tabbed_container data-active-tab-id on tab change. 2020-10-02 13:17:38 -07:00
0f9fbfa6e8 Add synchronized hotkeys.js from Etiquette; add ctrl+a, ctrl+d. 2020-10-02 13:17:08 -07:00
d1b42b71cb Enforce keyword-only args, alphabetize args. 2020-09-30 15:17:27 -07:00
bb72c40c53 Add option --localhost_only. 2020-09-30 15:15:30 -07:00
038ce9cffb Rename flask launchers -> _dev, _prod.
I want to reduce some complexity around here, part of which is that
launch imported entrypoint imported backend, all to do some proxy
wrapping which isn't necessary for the dev case anyway. Less
layers of wrapping and importing is good. Plus I think this naming
is more clear.
Additionally, I realized that the entrypoint aka prod launcher was
never updated to init the ycdldb as that was only done by the argparse
launcher. Now it's hardcoded and I'll consider adding a config file.
2020-09-30 15:03:29 -07:00
f77809e793 Add top docstring and log format like Etiquette. 2020-09-30 14:47:05 -07:00
fb1d5d3e6e Add select_all. 2020-09-29 10:55:04 -07:00
ede7eab80b Replace this loop with a nice map. 2020-09-29 10:54:58 -07:00
16dc6066df Leverage live HTMLCollection for selections instead of separate array. 2020-09-29 10:54:31 -07:00
898be91538 Spread video embed string over multiple lines. 2020-09-29 01:17:05 -07:00
572612a282 Replace variable swap with a one-liner. 2020-09-29 01:16:35 -07:00
e584e05f5e Move color definitions from common.css to ycdl.css. 2020-09-25 16:25:39 -07:00
4f6080859a Synchronize Etiquette and YCDL. 2020-09-22 02:59:17 -07:00
69c1dd92e9 Synchronize --wide, --narrow with Etiquette. 2020-09-19 10:42:31 -07:00
34aafedf46 Synchronize with Etiquette. 2020-09-18 16:35:02 -07:00
741cddc2e4 Add set_queuefile_extension method, endpoint, and ui. 2020-09-16 10:23:38 -07:00
223d3d01fb Rename automark_hook -> _form; use more const. 2020-09-16 10:22:33 -07:00
76b1504353 Synchronize with Etiquette. 2020-09-15 15:04:50 -07:00
ec19301bcc Rewrite entry_with_history hook and use keydown instead of keyup. 2020-09-12 10:14:52 -07:00
f4455f5a82 Add return to onchange. 2020-09-12 10:14:06 -07:00
cd5106df59 Rename color_3d_shadow -> color_shadow. 2020-09-09 15:58:04 -07:00
0116d80740 Mark the current state and orderby links in bold. 2020-09-05 17:49:04 -07:00
d0e803aa66 Supply the orderby argument to channel.html template. 2020-09-05 17:48:29 -07:00
d140a580c3 Add .bold class. 2020-09-05 17:47:53 -07:00
37df5a6443 Remove spacer <p>s and embrace the grid-gap. 2020-09-05 09:31:37 -07:00
339fa6649f Remove useless one-tab container for sub box by better if placement. 2020-09-05 09:31:13 -07:00
e5910c55f2 Rename database column download to state. 2020-09-04 15:55:48 -07:00
0ae041f001 Add whitelist/blacklist functionality to merge_params. 2020-09-04 15:10:58 -07:00
7d3a9fe03e Add explanation of data-prompt-class et al.
I think I left these blank because I felt they should be obvious.
But I'd rather have it explicit.
2020-09-04 14:50:30 -07:00
fc4aebc4a4 Fix double "return return". 2020-09-04 14:48:50 -07:00
98fae96a8a Add spinner.BAIL for cancelling spinner without launching callback. 2020-09-04 11:24:08 -07:00
0518765f33 Add css/js class entry_with_history to automate adding the hook. 2020-09-04 11:18:41 -07:00
26704c238e Fix catch ytapi.ChannelNotFound and return json 404. 2020-09-04 10:48:08 -07:00
4af4985ac5 Add return to all onclicks, and ; to other javascript hooks. 2020-09-04 10:37:49 -07:00
afcea49135 Fine-tune use of let/const in spinner.js. 2020-09-03 15:57:07 -07:00
03c366fff8 Replace var with let/const. 2020-09-03 15:44:58 -07:00
2a5983b124 Change #content_body width from 95% to 98%. 2020-09-03 12:06:35 -07:00
a524249ab4 Improve color of tab buttons active/inactive/hover. 2020-09-03 12:03:53 -07:00
3a455d377b Rewrite channel.html as tabbed container, separate videos/settings. 2020-09-03 11:54:51 -07:00
f103447807 Add css/js class tabbed_container. 2020-09-03 11:54:00 -07:00
b8c25f217d Synchronize Etiquette common.css and YCDL common.css. 2020-09-03 11:52:51 -07:00
d4cad47b78 Add docstring to init_enable_on_pageload. 2020-09-03 11:51:30 -07:00
8dd7fb987d Add placeholder text to new_channel_textbox. 2020-09-03 11:44:49 -07:00
c37cd60d4d Compress responses with gzip. 2020-08-28 16:43:02 -07:00
65e0d58576 Disable filter textbox until pageload.
For channels with many thousands of videos, it can be a while
before the DOM is fully parsed and ready to go. It is annoying
to type in the box and find that it doesn't work yet, since the
script tag comes after body.
Why not move the script above body? Because I don't want to,
and because you'd be filtering from an incomplete list of
videos anyway.
2020-08-28 16:21:42 -07:00
25e9975926 Add css/js class enable_on_pageload. 2020-08-28 16:18:51 -07:00
25a611e39e Add 200ms timeout before filtering while you type your query. 2020-08-27 17:11:52 -07:00
7b197c867b Speed up filtering by hiding #video_cards first.
On large channels, filter_video_cards is painfully slow because of all
the forced reflows. I'm currently trying to find a better solution.
In the meantime, hiding the containing div does prevent those reflows
until the end, but itself is also quite slow.
2020-08-27 16:53:51 -07:00
412d324352 Remove unused parameter event. 2020-08-20 15:09:37 -07:00
e083223cfc Add button_with_spinner class to add channel button. 2020-08-20 15:09:23 -07:00