mirror of
https://github.com/imputnet/cobalt.git
synced 2025-06-29 09:58:27 +00:00
Merge branch 'imputnet:main' into main
This commit is contained in:
commit
886b17d2d1
@ -2,8 +2,8 @@
|
|||||||
title: "cobalt, reborn"
|
title: "cobalt, reborn"
|
||||||
date: "9 Sept, 2024"
|
date: "9 Sept, 2024"
|
||||||
banner:
|
banner:
|
||||||
file: "cobalt10.png"
|
file: "cobalt10.webp"
|
||||||
alt: "image of meowbalt smiling and loafing in front of a wall of text."
|
alt: "meowth plush staring into a screen with cobalt 10 ui shown."
|
||||||
---
|
---
|
||||||
|
|
||||||
everything is new! this update marks the start of the latest chapter for cobalt. we spent the entire summer working hard to deliver the best experience ever, and we really hope you enjoy the rebirth of cobalt.
|
everything is new! this update marks the start of the latest chapter for cobalt. we spent the entire summer working hard to deliver the best experience ever, and we really hope you enjoy the rebirth of cobalt.
|
||||||
|
55
web/changelogs/10.1.md
Normal file
55
web/changelogs/10.1.md
Normal file
@ -0,0 +1,55 @@
|
|||||||
|
---
|
||||||
|
title: "squashing bugs, improving security and ux"
|
||||||
|
date: "1 Oct, 2024"
|
||||||
|
banner:
|
||||||
|
file: "meowth101hammer.webp"
|
||||||
|
alt: "meowth plush getting squished with a hammer."
|
||||||
|
---
|
||||||
|
|
||||||
|
this update enhances the cobalt experience all around, here's everything that we added or changed since 10.0:
|
||||||
|
|
||||||
|
### saving improvements:
|
||||||
|
- youtube videos encoded in av1 are now downloaded in the webm container. they also include opus audio for the best quality all around.
|
||||||
|
- fixed various bugs related to the download process on older devices/browsers. cobalt should work everywhere within sane limits.
|
||||||
|
- fixed downloading of twitch clips.
|
||||||
|
- fixed a bug where cobalt wouldn't download bluesky videos that are in a post with a quote.
|
||||||
|
- fixed a bug that caused some youtube music videos to fail to download due to differently formatted metadata.
|
||||||
|
- cobalt will no longer unexpectedly open video files on iOS. instead, a dialog with other options will be shown. this had to be done due to missing "download" button in safari's video player. you can override this by enabling [forced tunneling](/settings/privacy#tunnel).
|
||||||
|
- fixed a bug in filename generation where certain information was added to the filename even if cobalt didn't have it (such as youtube video format).
|
||||||
|
|
||||||
|
### general ui/ux improvements:
|
||||||
|
- added a button to quickly copy a link to the section in settings or about page.
|
||||||
|
- added `(remux)` to filenames of remuxed videos to distinguish them from the original file.
|
||||||
|
- improved the look & behavior of the sidebar.
|
||||||
|
- fixed cursor appearance to update correctly when using the sidebar or subpage navigation.
|
||||||
|
- added a stepped scroller to the donation options card [on the donate page](/donate).
|
||||||
|
- tweaked the [donate page](/donate) layout to be cleaner and more flexible.
|
||||||
|
- fixed tab navigation for donation option buttons.
|
||||||
|
- updated the [10.0 changelog banner](/updates#10.0) to be less boring.
|
||||||
|
- fixed a bug that caused some changelog dates to be displayed a day later than intended.
|
||||||
|
- changelog banner can now be saved with a right click.
|
||||||
|
- cobalt version now gently fades in on the [settings page](/settings).
|
||||||
|
- fixed the position of the notch easter egg on iPhone XR, 11, 16 Pro, and 16 Pro Max.
|
||||||
|
- cobalt will let you paste the link even if the anti-bot check isn't completed yet. if anything goes wrong regarding anti-bot checks, cobalt will let you know.
|
||||||
|
- fixed a bunch of typos and minor grammatical errors.
|
||||||
|
- other minor changes.
|
||||||
|
|
||||||
|
### about page improvements:
|
||||||
|
- added motivation section to the [general about page](/about/general).
|
||||||
|
- added a list of beta testers to the [credits page](/about/credits).
|
||||||
|
- rephrased some about sections to improve clarity and readability.
|
||||||
|
- made about page body narrower to be easier to read.
|
||||||
|
- added extra padding between sections on about page to increase readability.
|
||||||
|
|
||||||
|
### internal improvements:
|
||||||
|
- cobalt now preloads server info for quicker access to supported services & loading turnstile on demand.
|
||||||
|
- converted all elements and the about page to be translatable in preparations for community-sourced translations *(coming soon!)*.
|
||||||
|
- added `content-security-policy` header to restrict and better prevent XSS attacks.
|
||||||
|
- moved the turnstile bot check key to the server, making it load the script on the client only if necessary.
|
||||||
|
- fixed a bug in the api that allowed for making requests without a valid `Accept` header if authentication wasn't enabled on an instance.
|
||||||
|
|
||||||
|
you can also check [all commits since the 10.0 release on github](https://github.com/imputnet/cobalt/compare/08bc5022...f461b02f).
|
||||||
|
|
||||||
|
we hope you enjoy this stable update and have a wonderful day!
|
||||||
|
|
||||||
|
\~ your friends at imput ❤️
|
@ -26,5 +26,6 @@
|
|||||||
"heading.cloudflare": "web privacy & security",
|
"heading.cloudflare": "web privacy & security",
|
||||||
"heading.responsibility": "user responsibilities",
|
"heading.responsibility": "user responsibilities",
|
||||||
"heading.abuse": "reporting abuse",
|
"heading.abuse": "reporting abuse",
|
||||||
"heading.motivation": "motivation"
|
"heading.motivation": "motivation",
|
||||||
|
"heading.testers": "beta testers"
|
||||||
}
|
}
|
||||||
|
@ -5,6 +5,29 @@
|
|||||||
import SectionHeading from "$components/misc/SectionHeading.svelte";
|
import SectionHeading from "$components/misc/SectionHeading.svelte";
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
<section id="testers">
|
||||||
|
<SectionHeading
|
||||||
|
title={$t("about.heading.testers")}
|
||||||
|
sectionId="testers"
|
||||||
|
/>
|
||||||
|
|
||||||
|
huge shoutout to our thing breakers for testing updates early and making sure they're stable.
|
||||||
|
they also helped us ship cobalt 10!
|
||||||
|
- codfish246
|
||||||
|
- [damir](https://otomir23.me/)
|
||||||
|
- Hunter
|
||||||
|
- [hyperdefined](https://hyper.lol/)
|
||||||
|
- [KwiatekMiki](https://kwiatekmiki.com/)
|
||||||
|
- [Lao](https://lao.ooo/)
|
||||||
|
- lostdusty
|
||||||
|
- [noblereign](https://fursona.directory/@frost)
|
||||||
|
- [Spax](https://spax.zone/)
|
||||||
|
- [synzr](https://synzr.space/)
|
||||||
|
- [vimae](https://mae.wtf/)
|
||||||
|
|
||||||
|
all links are external and lead to their personal websites or social media.
|
||||||
|
</section>
|
||||||
|
|
||||||
<section id="meowbalt">
|
<section id="meowbalt">
|
||||||
<SectionHeading
|
<SectionHeading
|
||||||
title={$t("general.meowbalt")}
|
title={$t("general.meowbalt")}
|
||||||
@ -30,7 +53,8 @@ you cannot use or modify the meowbalt character design commercially or in any fo
|
|||||||
cobalt processing server is open source and licensed under [AGPL-3.0]({docs.apiLicense}).
|
cobalt processing server is open source and licensed under [AGPL-3.0]({docs.apiLicense}).
|
||||||
|
|
||||||
cobalt frontend is [source first](https://sourcefirst.com/) and licensed under [CC-BY-NC-SA 4.0]({docs.webLicense}).
|
cobalt frontend is [source first](https://sourcefirst.com/) and licensed under [CC-BY-NC-SA 4.0]({docs.webLicense}).
|
||||||
we decided to use this license to stop grifters from profiting off our work & from creating malicious clones that deceive people and hurt our public identity.
|
we decided to use this license to stop grifters from profiting off our work
|
||||||
|
& from creating malicious clones that deceive people and hurt our public identity.
|
||||||
|
|
||||||
we rely on many open source libraries, create & distribute our own.
|
we rely on many open source libraries, create & distribute our own.
|
||||||
you can see the full list of dependencies on [github]({contacts.github}).
|
you can see the full list of dependencies on [github]({contacts.github}).
|
||||||
|
@ -146,6 +146,7 @@
|
|||||||
width: 100%;
|
width: 100%;
|
||||||
aspect-ratio: 16/9;
|
aspect-ratio: 16/9;
|
||||||
border-radius: var(--padding);
|
border-radius: var(--padding);
|
||||||
|
pointer-events: all;
|
||||||
}
|
}
|
||||||
|
|
||||||
.changelog-banner.loading {
|
.changelog-banner.loading {
|
||||||
|
@ -84,8 +84,8 @@
|
|||||||
|
|
||||||
const scroll = (direction: "left" | "right") => {
|
const scroll = (direction: "left" | "right") => {
|
||||||
const currentPos = donateList.scrollLeft;
|
const currentPos = donateList.scrollLeft;
|
||||||
const newPos = direction === "left" ? currentPos - 150 : currentPos + 150;
|
|
||||||
const maxPos = donateList.scrollWidth - donateList.getBoundingClientRect().width;
|
const maxPos = donateList.scrollWidth - donateList.getBoundingClientRect().width;
|
||||||
|
const newPos = direction === "left" ? currentPos - 150 : currentPos + 150;
|
||||||
|
|
||||||
donateList.scroll({
|
donateList.scroll({
|
||||||
left: newPos,
|
left: newPos,
|
||||||
@ -171,7 +171,7 @@
|
|||||||
bind:this={donateList}
|
bind:this={donateList}
|
||||||
on:wheel={() => {
|
on:wheel={() => {
|
||||||
const currentPos = donateList.scrollLeft;
|
const currentPos = donateList.scrollLeft;
|
||||||
const maxPos = donateList.scrollWidth - donateList.getBoundingClientRect().width;
|
const maxPos = donateList.scrollWidth - donateList.getBoundingClientRect().width - 5;
|
||||||
showLeftScroll = currentPos > 0;
|
showLeftScroll = currentPos > 0;
|
||||||
showRightScroll = currentPos < maxPos && currentPos !== maxPos;
|
showRightScroll = currentPos < maxPos && currentPos !== maxPos;
|
||||||
}}
|
}}
|
||||||
|
@ -11,9 +11,12 @@
|
|||||||
$: state = "hidden"; // "notch", "island", "notch x"
|
$: state = "hidden"; // "notch", "island", "notch x"
|
||||||
|
|
||||||
const islandValues = [
|
const islandValues = [
|
||||||
|
53, // 16 pro max: larger text
|
||||||
59, // regular & plus: default
|
59, // regular & plus: default
|
||||||
48, // regular: larger text
|
48, // regular: larger text
|
||||||
|
49, // 16: larger text
|
||||||
51, // plus only: larger text
|
51, // plus only: larger text
|
||||||
|
62, // 16: regular
|
||||||
];
|
];
|
||||||
|
|
||||||
const xNotch = [44];
|
const xNotch = [44];
|
||||||
@ -49,6 +52,11 @@
|
|||||||
if (safeAreaTop === 48 && safeAreaBottom === 34) {
|
if (safeAreaTop === 48 && safeAreaBottom === 34) {
|
||||||
state = "notch";
|
state = "notch";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// exception for iPhone 16 Pro Max
|
||||||
|
if (safeAreaTop === 53 && safeAreaBottom === 29) {
|
||||||
|
state = "notch sixteen-pro-max";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
@ -77,6 +85,10 @@
|
|||||||
padding-top: 2px;
|
padding-top: 2px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#cobalt-notch-sticker.sixteen-pro-max {
|
||||||
|
padding-top: 12px;
|
||||||
|
}
|
||||||
|
|
||||||
#cobalt-notch-sticker.notch.x :global(svg) {
|
#cobalt-notch-sticker.notch.x :global(svg) {
|
||||||
height: 28px;
|
height: 28px;
|
||||||
}
|
}
|
||||||
|
@ -478,6 +478,7 @@
|
|||||||
|
|
||||||
:global(.long-text-noto ul) {
|
:global(.long-text-noto ul) {
|
||||||
padding-inline-start: 30px;
|
padding-inline-start: 30px;
|
||||||
|
margin-block-start: 9px;
|
||||||
}
|
}
|
||||||
|
|
||||||
:global(.long-text-noto li) {
|
:global(.long-text-noto li) {
|
||||||
|
Binary file not shown.
Before Width: | Height: | Size: 134 KiB |
BIN
web/static/update-banners/cobalt10.webp
Normal file
BIN
web/static/update-banners/cobalt10.webp
Normal file
Binary file not shown.
After Width: | Height: | Size: 26 KiB |
BIN
web/static/update-banners/meowth101hammer.webp
Normal file
BIN
web/static/update-banners/meowth101hammer.webp
Normal file
Binary file not shown.
After Width: | Height: | Size: 48 KiB |
Loading…
Reference in New Issue
Block a user