Skip to content

Commit 0e06e41

Browse files
authored
Merge branch 'main' into main
2 parents 54aa299 + 2c509ea commit 0e06e41

File tree

11 files changed

+155
-64
lines changed

11 files changed

+155
-64
lines changed

public/banner.js

Lines changed: 42 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -13,11 +13,13 @@
1313
* lang=fr Override the browser language (default: auto-detected)
1414
* id=myDiv Insert the banner inside the element with this id
1515
* (default: prepend to <body>)
16-
* size=normal Banner size: "normal" (default) or "mini"
16+
* size=normal Banner size: "normal" (default), "mini" or "minimal"
1717
* link=URL Make the banner text a link (default: https://keepandroidopen.org)
1818
* Set link=none to disable the link
1919
* hidebutton=on Show an X close button (default: on)
2020
* Set hidebutton=off to hide the close button
21+
* animation=on Add animation to border of banner (default: on)
22+
* Set animation=off to disable
2123
*/
2224
(function () {
2325
"use strict";
@@ -101,7 +103,10 @@
101103
);
102104

103105
// ── Size variant ──────────────────────────────────────────────────────
104-
var size = params.size === "mini" ? "mini" : "normal";
106+
var size = params.size === "mini" ? "mini"
107+
: params.size === "minimal"
108+
? "minimal"
109+
: "normal";
105110

106111
// ── Link ────────────────────────────────────────────────────────────
107112
var linkParam = params.link;
@@ -133,7 +138,6 @@
133138
"0px 3px 0px #751111," +
134139
"0px 4px 0px #5e0d0d," +
135140
"0px 6px 10px rgba(0,0,0,0.5);" +
136-
"animation:kao-pulse 2s infinite;" +
137141
"padding:0.5rem 2.5rem;" +
138142
"line-height:1.6;" +
139143
"box-sizing:border-box;" +
@@ -156,12 +160,33 @@
156160
"0px 1px 0px #9e1a1a," +
157161
"0px 2px 0px #8a1515," +
158162
"0px 3px 5px rgba(0,0,0,0.4);" +
159-
"animation:kao-pulse 2s infinite;" +
160163
"padding:0.25rem 1.5rem;" +
161164
"line-height:1.4;" +
162165
"box-sizing:border-box;" +
163166
"}";
164167

168+
var cssMinimal =
169+
".kao-banner{" +
170+
"position:relative;" +
171+
"font-variant-numeric:tabular-nums;" +
172+
"background:linear-gradient(180deg,#d32f2f 0%,#b71c1c 100%);" +
173+
"border-bottom:2px solid #801313;" +
174+
"color:#fff;" +
175+
"font-family:'Arial Black',sans-serif;" +
176+
"font-weight:900;" +
177+
"text-transform:uppercase;" +
178+
"letter-spacing:1px;" +
179+
"font-size:0.75rem;" +
180+
"text-align:center;" +
181+
"text-shadow:" +
182+
"0px 1px 0px #9e1a1a," +
183+
"0px 2px 0px #8a1515," +
184+
"0px 3px 5px rgba(0,0,0,0.4);" +
185+
"padding:0.25rem 1.5rem;" +
186+
"line-height:1.4;" +
187+
"box-sizing:border-box;" +
188+
"}";
189+
165190
var cssCommon =
166191
".kao-banner a{color:#fff;text-decoration:none;}" +
167192
".kao-banner a:hover{text-decoration:underline;}" +
@@ -180,15 +205,20 @@
180205
"line-height:1;" +
181206
"text-shadow:none;" +
182207
"}" +
183-
".kao-banner-close:hover{opacity:1;}" +
208+
".kao-banner-close:hover{opacity:1;}";
209+
210+
var cssKaoPulse =
211+
".kao-banner:not(.no-animation) { animation:kao-pulse 2s infinite; }" +
184212
"@keyframes kao-pulse{" +
185213
"0%{box-shadow:0 0 0 0 rgba(211,47,47,0.7)}" +
186214
"70%{box-shadow:0 0 0 15px rgba(211,47,47,0)}" +
187215
"100%{box-shadow:0 0 0 0 rgba(211,47,47,0)}" +
188216
"}";
189217

190218
var style = document.createElement("style");
191-
style.textContent = (size === "mini" ? cssMini : cssNormal) + cssCommon;
219+
style.textContent = (size === "mini" ? cssMini : size === "minimal" ? cssMinimal : cssNormal)
220+
+ (params.animation === "off" ? "" : cssKaoPulse)
221+
+ cssCommon;
192222
document.head.appendChild(style);
193223

194224
// ── Check if previously dismissed (reappears after dismissDays) ─────
@@ -205,7 +235,7 @@
205235

206236
// ── Create banner DOM ─────────────────────────────────────────────────
207237
var banner = document.createElement("div");
208-
banner.className = "kao-banner";
238+
banner.className = params.animation === "off" ? "kao-banner no-animation" : "kao-banner";
209239

210240
var messageText = messages[locale] || messages.en;
211241

@@ -220,7 +250,11 @@
220250
banner.appendChild(document.createTextNode(messageText));
221251
}
222252

223-
banner.appendChild(document.createElement("br"));
253+
if (params.size === "minimal") {
254+
banner.appendChild(document.createTextNode("\u00A0"));
255+
} else {
256+
banner.appendChild(document.createElement("br"));
257+
}
224258

225259
var countdownSpan = document.createElement("span");
226260
countdownSpan.textContent = "\u00A0";
2.71 KB
Loading
2.17 KB
Loading

src/content/pages/banner.md

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,10 @@ Customize the banner by appending query parameters to the script URL:
2323
|-----------|--------|---------|-------------|
2424
| `lang` | `en`, `fr`, `de`, `es`, … | Browser language | Override the display language |
2525
| `id` | Any element id | _(prepend to body)_ | Insert the banner inside the element with this id |
26-
| `size` | `normal`, `mini` | `normal` | Banner size variant |
26+
| `size` | `normal`, `mini`, `minimal` | `normal` | Banner size variant |
2727
| `link` | Any URL, or `none` | `https://keepandroidopen.org` | Make the banner text a clickable link; set to `none` to disable |
2828
| `hidebutton` | `on`, `off` | `on` | Show or hide the X close button (dismissed state is remembered per-site via localStorage) |
29+
| `animation` | `on`, `off` | `on` | Enable or disable the banner's pulsing animation |
2930

3031
## Examples
3132

@@ -39,6 +40,7 @@ French, mini size, inserted into a specific element:
3940
<div id="my-banner"></div>
4041
<script src="/banner.js?lang=fr&size=mini&id=my-banner"></script>
4142

43+
---
4244

4345
Link to a custom page, no close button:
4446

@@ -49,6 +51,16 @@ Link to a custom page, no close button:
4951
<div id="my-banner-custom"></div>
5052
<script src="/banner.js?link=https://example.com/android&hidebutton=off&size=mini&id=my-banner-custom"></script>
5153

54+
---
55+
56+
Minimal size without animations.
57+
58+
```html
59+
<script src="https://keepandroidopen.org/banner.js?size=minimal&animation=off></script>
60+
```
61+
<div id="my-banner-minimal"></div>
62+
<script src="/banner.js?size=minimal&animation=off&id=my-banner-minimal"></script>
63+
5264
## Source
5365
5466
The source for the banner can be found at [https://github.com/keepandroidopen/keepandroidopen.github.io/blob/main/public/banner.js](https://github.com/keepandroidopen/keepandroidopen.github.io/blob/main/public/banner.js). Suggestions for improvement are welcome!

src/content/pages/da/index.md

Lines changed: 7 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -32,19 +32,18 @@ Denne registrering vil omfatte:
3232

3333
## Hvad det betyder for dine rettigheder
3434

35-
➤ Du, **forbrugeren**, købte din Android-enhed i tillid til Googles løfte om, at det var en åben computerplatform, hvor du helt selv kunne bestemme, hvilken software du ville køre. Men fra september 2026 vil Google konsekvent fremtvinge installation af en opdatering til dit operativsystem – uden dit samtykke – som permanent blokerer denne ret. Dette gør dig fuldstændig afhængig af Googles vurdering af, hvilke apps du fremover må "stole på" og dermed installere på din enhed.
35+
➤ Du, **forbrugeren**, købte din Android-enhed i tillid til Googles løfte om, at det var en åben computerplatform, hvor du helt selv kunne bestemme, hvilken software du ville køre. Men fra september 2026 vil Google – uden dit samtykke – gennemtvinge installationen af en opdatering til dit operativsystem som permanent blokerer denne ret. Dette gør dig fuldstændig afhængig af Googles vurdering af, hvilke apps de tillader at du fremover må "stole på" og dermed installere på din enhed.
3636

37-
38-
➤ Du, **udvikleren**, vil ikke længere kunne udvikle en app og dele den direkte med venner, familie og dit fællesskab, uden først at få Googles godkendelse. Løftet ved Android – og et af de vigtigste argumenter, systemet altid har brugt for at adskille sig iPhone – har altid været dets åbenhed. Men Google mener åbenbart, at de nu har tilstrækkelig kontrol over Android-økosystemet og tilstrækkelig regulatorisk indflydelse til uden videre at kunne opgive dette princip.
37+
➤ Du, **udvikleren**, vil ikke længere kunne udvikle en app og dele den direkte med venner, familie og dit fællesskab, uden først at få Googles godkendelse. Løftet ved Android – og et af de vigtigste argumenter, systemet har brugt for at adskille sig fra iPhone – har altid været dets åbenhed. Men Google mener åbenbart, at de nu har tilstrækkelig kontrol over Android-økosystemet og tilstrækkelig regulatorisk indflydelse til uden videre at kunne opgive dette princip.
3938

4039
➤ Du, **staten**, overlader dine borgeres rettigheder og din egen digitale suverænitet til en virksomhed, der har en historik med at efterkomme udenretslige krav fra autoritære regimer, om at fjerne fuldt lovlige apps som de ikke bryder sig om. Den software, som er afgørende for driften af virksomheder og myndigheder, vil dermed være overladt til en fjern og ukontrollerbar virksomhed, som opererer uden gennemsigtighed og ansvar.
4140

4241

4342
<div class="callout-warning">
4443

45-
### Opdatering: Google har **ikke** “trukket i land” med udviklerverificering{#clarification}
44+
### Opdatering: Google har **ikke** “trukket i land” med udviklerverificering {#clarification}
4645

47-
På trods af en usikker [omtale](https://android-developers.googleblog.com/2025/11/android-developer-verification-early.html) af en mulig "avanceret måde", som måske på sigt kan give "erfarne brugere" mulighed for at "acceptere risikoen ved at installere software, som ikke er verificeret", siger Googles [beskrivelse af programmet](https://developer.android.com/developer-verification) stadig helt klart:
46+
I modsætning til en vag [omtale](https://android-developers.googleblog.com/2025/11/android-developer-verification-early.html) af en mulig "avanceret måde", som måske på sigt kan give "erfarne brugere" mulighed for at "acceptere risikoen ved at installere software, som ikke er verificeret", siger Googles [beskrivelse af programmet](https://developer.android.com/developer-verification) fortsat helt utvetydigt:
4847

4948
> Fra september 2026 skal alle Android-apps være registreret af verificerede udviklere for at kunne installeres på certificerede Android-enheder.
5049
@@ -56,13 +55,11 @@ Indtil Google fremlægger konkret dokumentation for, at det vil være muligt at
5655

5756
### Udviklere: Modstå og afvis {#developers}
5857

59-
Hvis du er app-udvikler, så _**ikke tilmeld dig**_ early access-programmet, gennemfør ikke identitetsverificering, og accepter ikke invitationer til Android Developer Console. Svar (høfligt) på enhver invitation ved at forklare dine bekymringer og indvendinger.
58+
Hvis du er app-udvikler, så _**tilmeld dig ikke**_ early access-programmet, gennemfør ikke identitetsverificering, og accepter ikke invitationer til Android Developer Console. Svar (høfligt) på enhver invitation ved at forklare dine bekymringer og indvendinger.
6059

61-
—— _Det er kun gennem udviklernes accept, at Googles overtagelsesplan måske kan lykkes._
60+
—— _Det er kun ved udviklernes underkastelse og kapitulation, at Googles overtagelsesplan måske kan lykkes._ ——
6261

63-
Opfordre andre udviklerer og organisationer til ikke at registrere sig.
64-
Brug fællesskabsforumer, sociale medier og blogindlæg til at sprede budskabet.
65-
Tilføj [FreeDroidWarn-biblioteket](https://github.com/woheller69/FreeDroidWarn) til dit projekt for at informere dine brugere. Hvis du driver en hjemmeside, så overvej at [tilføje nedtællingsbanneret](/banner) til toppen af din side.
62+
Opfordr andre udviklere og organisationer til at afslå registrering. Brug fællesskabsfora, sociale medier og blogindlæg til at sprede budskabet. Tilføj [FreeDroidWarn-biblioteket](https://github.com/woheller69/FreeDroidWarn) til dit projekt for at informere dine brugere. Hvis du driver en hjemmeside, så overvej at [tilføje nedtællingsbanneret](/banner) til toppen af din side.
6663

6764
Hvis du er ansat hos Google eller på anden måde er tilknyttet udviklerverificeringen med samvittigheden i behold, og du har yderligere indsigt i programmet – herunder planlagte tekniske implementeringsdetaljer eller anden relevant information – bedes du kontakte [tips@keepandroidopen.org](mailto:tips@keepandroidopen.org) fra en _ikke-arbejdsmaskine_ og en _ikke-gmail_ konto. Dine oplysninger vil blive behandlet strengt fortroligt.
6865

src/content/pages/fr/index.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
title: "Keep Android Open"
2+
title: "Keep Android Open - _Garder Android ouvert_"
33
lang: fr
44
description: "Plaidoyer pour Android en tant que plateforme libre et ouverte permettant à tous de développer des applications."
55

0 commit comments

Comments
 (0)