Repository navigation
Per-tab projects, «Zuletzt geschlossen», new-version notice - #28
Merged
Merged
Conversation
Each browser tab has its own project, as in WebTigerPython: a share link starts a new tab project and never replaces another tab's work, and the address bar shows only the start page. - The tab's id is in sessionStorage and history.state, never in the address. A reload keeps both; when iPad Safari rebuilds an unloaded tab, history.state survives (storage-check page, iPadOS 26.6.1). - Projects are in localStorage, one entry per tab. Nothing is deleted when a tab goes away (a page can't tell a close from Safari unloading it). Open tabs answer over a BroadcastChannel: a duplicated tab takes its own copy, and ⋮ «Zuletzt geschlossen» lists the projects no open tab holds, for 14 days. A fresh tab offers the last one changed within a day right away - after quitting Safari or restarting the iPad a tab comes back empty. - Closing or reloading with changes since the last «Teilen» or «Projekt herunterladen»: the browser's own question (not on an iPad). - ⋮ «Neues Projekt» replaces «Lokales Projekt löschen»; it and opening a folder or ZIP start a new tab project, the old one goes to the list. - The IDE's former single project becomes the first tab's project, once. - The build writes version.json (the commit); an open tab checks it when it comes back into view and every 30 minutes, and offers «Neu laden». Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
P25 decision 1 (lean variant, address variant 3) and the «Neue Version verfügbar» notice. IDE PR 1 of 2; PR 2 brings libraries by URL and the notes for broken and long links.
The bump to glpython-editor v0.1.20 (the Monaco setting, glpython-edu/glpython-editor#42) follows as a commit on this branch once the tag exists. Nothing in this PR depends on it.
Behaviour
https://glpython-edu.github.io/, as in WebTigerPython.history.state, never in the address.history.statesurvives (your diagnostic, iPadOS 26.6.1).BroadcastChannel.version.json(the commit).New wording, please review
auswerter.py· Auswerter · vor 2 Stunden · «Öffnen» · 🗑 «auswerter.py entfernen»Times come from
Intl.RelativeTimeFormat(«vor 5 Minuten», «gestern», «vor 3 Tagen»). Notices use the info colours (--glp-info).Checked (Chrome against the production build,
vite preview)/; id in session storage andhistory.stateversion.json, then the tab comes into viewBuild and lint pass (lint: only the existing warnings in
public/coi-serviceworker.js).Headless Chrome doesn't close a tab after a cancelled close, even on a blank test page, so «closes after Teilen» needs your manual test.
Your tests
Merging deploys the IDE.
🤖 Generated with Claude Code