Vimari: Status der Verfügbarkeit der Erweiterung im Safari Extension Store

Erstellt am 11. Juli 2018  ·  37Kommentare  ·  Quelle: televator-apps/vimari

Ich habe mich gerade beim Apple Developer Program angemeldet und werde prüfen, welche Änderungen am Code vorgenommen werden müssen, bevor ich ihn zur Überprüfung einsende.

Ich halte Sie in dieser Ausgabe auf dem Laufenden!


AKTUALISIERT
Lesen Sie die vollständige Ausgabe für den Kontext.

MACHEN

  • [ ] Einstellungen
  • [ ] Ermöglichen, mehrere Links in neuen Tabs zu öffnen
  • [ ] Finden Sie heraus, wie Sie die Erweiterung verteilen
  • [ ] Welche Website soll auf neuem Tab geöffnet werden? Leere Zeichenfolgen funktionieren nicht, also brauchen wir etwas anderes, idealerweise das Äquivalent von about:config in anderen Browsern

Hilfreichster Kommentar

Hallo allerseits,

Wie ich bereits in dieser Ausgabe erwähnt habe, habe ich mich in den letzten Monaten mit einigen persönlichen Problemen beschäftigt, aber jetzt ist es viel besser! Da ich meine Lebensqualität verbessere, bin ich viel mehr mit Aktivitäten außerhalb des Computers beschäftigt, sodass ich nicht so viel Zeit und Energie habe, um mich Open Source zu widmen. Ich hoffe, den Motivationsfunken zu finden, die Einstellungssache auf den Markt zu bringen und die Erweiterung bald im App Store zu veröffentlichen.

Ich hoffe, Sie alle, die gespendet haben, fühlen sich in keiner Weise betrogen. Vielen Dank für Ihre Geduld und Ihr Verständnis ❤️

Alle 37 Kommentare

Lesen Sie die Dokumente von Apple und sie sind großartig. Es sieht so aus, als müsste der Code in eine macOS-App eingebunden werden, aber es wird nicht gesagt, welcher Typ ist. Ich werde jetzt ein paar Tage beschäftigt sein, aber ich werde versuchen, etwas von dieser Arbeit reinzuquetschen.

Wenn jemand damit Erfahrung hat oder helfen möchte, lass es mich wissen.

Habe jetzt schon seit einiger Zeit damit herumgespielt und Mann... die Docs bringen mich um. Ich bin gespannt, wie sie erwarten, dass jeder seine Safari-Erweiterungen zu Safari-App-Erweiterungen migriert, mit dieser schlechten Dokumentation, die keine Beispiele enthält. Es wird lange dauern, bis alle Erweiterungen migriert sind :/

Wie auch immer, ich habe jetzt etwas zum Laufen gebracht, ich kann die Erweiterung irgendwie verwenden, aber ich muss die verschiedenen Schritte zum Laden der Erweiterung verstehen, bevor ich weitermachen kann. Außerdem habe ich keine Unterstützung für Einstellungen für die Erweiterung gefunden, die scheiße wären, wenn das wahr wäre.

Ich denke auch, dass wir damit davonkommen können, die Erweiterung nicht im App Store zu haben, aber ich bin mir noch nicht sicher. Ich habe in einigen Foren darüber gelesen, aber nicht näher recherchiert. Das würde bedeuten, dass wir sofortige Veröffentlichungen haben, aber mit dem Nachteil, dass Sie hier zu Github kommen müssen, um es herunterzuladen - anstatt den App Store zu öffnen. Werde das weiter untersuchen.

Ich habe jetzt eine Version, die mit Safari 12 funktioniert. Es ist eine sehr hackige Lösung, aber es funktioniert. Die Einstellungen können jedoch nicht geändert werden, es sei denn, Sie ändern sie im Code.

Verfolgen Sie den Fortschritt in meinem PR #104.

Ich habe die PR mit der App-Erweiterung darin zusammengeführt. Ich habe Anweisungen zur Installation gegeben. Bitte befolgen Sie alle, die auf macOS Mojave aktualisiert haben, die Schritte und teilen Sie uns mit, wenn etwas bei Ihnen nicht funktioniert. Ich werde weiter an dem Code arbeiten, um ihn schöner zu machen, aber im Moment haben Sie die grundlegende Funktionalität der Erweiterung.

Pingen Sie alle an, die bisher daran beteiligt waren, damit wir Feedback dazu bekommen:
@jad @jaredmichaelwilliams @olivierlefloch @afarrell @weirdfishes @LiYunyang @pcejrowski @lamons @hcgatewood @LeonardCohen @ovisan @jezkline @danielcompton @guyht

Hier sind die Anweisungen .

Vielen Dank.

Ich bin auf Mojave (18A326h). Beim Erstellen der Projekte gibt es einen Fehler:

Fehler: Task fehlgeschlagen mit Ausgang 1 Signal 0 {
/usr/bin/codesign '--force' '--sign' '0CA31562965A44B984D08063E858CC715E0B0B34' '--verbose' '/Users/liyunyang/Library/Developer/Xcode/DerivedData/vimari-gProductcrkqdfthusyah/vimari-gProductcrkqdfthusyah/ app/Contents/Frameworks/libswiftAppKit.dylib'
}

@LiYunyang Haben Sie eine dieser beiden Lösungen ausprobiert?

Nachdem ich etwas mehr Zeit damit verbracht habe, bin ich mir nicht sicher, ob wir alle Funktionen migrieren können, nicht einmal einige grundlegende :(. Die API ist so begrenzt, es sei denn, Sie arbeiten mit einem Popover oder einer Symbolleiste. Ich verstehe nicht warum und ich versuche mein Bestes, um Informationen zu finden, aber da dies so neu ist + Apples schreckliche Dokumentation, gibt es keine. Wie das Öffnen einer neuen Registerkarte durch einen Popover- / Symbolleistenklick trivial, aber sonst unmöglich. Apple wird die meisten von ihnen töten die aktuellen Erweiterungen mit diesem Ansatz.Ich werde es weiter versuchen, kann aber nichts versprechen.

Danke @simeg. Ich habe es erfolgreich mit meinem eigenen Entwicklerzertifikat erstellt und es funktioniert mit Safari 12 unter macOS 10.13.6 High Sierra.,

@akrabat freut mich, dass es bei dir funktioniert. Mussten Sie Ihr eigenes Entwicklerzertifikat verwenden, damit es funktioniert?

Jawohl. Beim Build ist ein Fehler im Zusammenhang mit den Zertifikaten aufgetreten, daher habe ich meine in der Dropdown-Liste ausgewählt.

Nachdem ich ein paar Tage Pause gemacht und Hilfe bekommen habe, habe ich es geschafft, einige Informationen zu finden, von denen ich denke, dass wir mehr Funktionen migrieren können, als ich ursprünglich erwartet hatte! Was ist jetzt auf meinem Radar:

  • Alle Funktionen migrieren
  • Stellen Sie sicher, dass die Erweiterung ohne Entwicklerzertifikat installiert werden kann. Wenn Sie es versucht haben und gescheitert sind, wäre es nützlich, wenn Sie die Fehlermeldung(en) hier posten könnten, da ich mir im Moment nicht sicher bin, wie ich das beheben kann

[rant] [Ich bin nicht der einzige frustrierte Entwickler](https://forums.developer.apple.com/thread/62410), so scheint es. Ich habe getan, was der Apple-Mitarbeiter empfohlen hat, ich habe einen Fehlerbericht eingereicht, in dem ich nach einer API mit mehr Funktionalität gefragt habe. Es greift nach Strohhalmen, aber ich weiß nicht, was ich sonst tun soll. Hoffentlich wird Apple erkennen, dass sie das Erweiterungsökosystem für Safari zerstören und die API ändern und eine bessere Dokumentation schreiben. [/schimpfen]

Hier sind die Funktionen, die in der README angegeben sind:

f Links umschalten
F Links umschalten (Link in neuem Tab öffnen)
k Nach oben scrollen
j Nach unten scrollen
h Nach links scrollen
l Scrolle nach rechts
u Halbe Seite nach oben scrollen
d Halbe Seite nach unten scrollen
gg Zum Seitenanfang
G Zum Ende der Seite gehen

H Geschichte zurück
L Geschichte weiter
r Nachladen
w Nächste Registerkarte
q Vorherige Registerkarte
x Aktuellen Tab schließen und zum linken Tab wechseln
X Aktuellen Tab schließen und zum rechten Tab wechseln
t Neuer Tab öffnen (Dieser scheint nicht einmal in Version 1.1 zu funktionieren)

Die durchgestrichenen Zeilen funktionieren in Safari-App-Erweiterungen mit der aktuellen API nicht, was nervig ist. Außerdem muss ich herausfinden, wie man die Einstellungen verwaltet. Ich bin mir ziemlich sicher, dass es machbar ist, aber es kann einige Zeit dauern. Aber jetzt, da diese Arbeit getan ist, kann ich mich darauf konzentrieren, vimari für alle verfügbar zu machen, sowohl per Download als auch in Zukunft im App Extension Store.

Es tut mir leid, dass viele von Ihnen Geld gespendet haben, um 100% der in Safari 12 verfügbaren Funktionen zu erhalten, aber ich kann nichts tun, um die API zu ändern :( Ich hoffe, Sie verstehen, und ich bin immer noch bestrebt, diese Erweiterung zu verbessern.

FWiW, Die verfügbaren sind für mich die wichtigsten. Obwohl ich F zum Laufen bringen konnte und es auf t zuordnen musste.

@akrabat Alles ist noch nicht in den Master

Danke @simeg! Es funktioniert auf meinem Mojave-Rechner. (Überraschenderweise habe ich keine Änderungen an meinen vorherigen Einstellungen vorgenommen, es funktioniert einfach von selbst.)

@LiYunyang freut mich zu hören, dass es bei dir funktioniert! Mussten Sie es mit Ihrem Entwicklerkonto signieren? Außerdem habe ich eine PR geöffnet mit einigen weiteren implementierten Funktionen, die ich noch nicht in Master zusammengeführt habe. Wenn Sie also in ein paar Tagen wieder vorbeischauen, erhalten Sie weitere Funktionen. Wie Link in neuem Tab öffnen ( shift + t ) oder neuen leeren Tab öffnen ( t ). Es gibt einige kleinere Probleme damit, aber ich arbeite daran.

@simeg Ich

Ich habe gerade meinen Branch, an dem ich gearbeitet habe, in master zusammengeführt, wodurch zwei neue Funktionen aktiviert werden: Link in neuem Tab öffnen ( shift + t ) und neuen leeren Tab öffnen ( t ). Es hat eine Symbolleiste, die im Moment nichts tut. Ich versuche herauszufinden, wie man Einstellungen vornimmt, also ignoriere sie für den Moment einfach.

Es scheint also, dass man zum Kompilieren das Signierungskonto in Xcode ändern muss - das Anmelden mit Ihrem Apple-Konto in Xcode und die Verwendung dieses Kontos scheint gut zu funktionieren.
Wenn es um das Wechseln oder Schließen von Tabs geht: @simeg hat Recht - es gibt

@Rahlir Ja, ich habe noch einige kleinere Probleme wie diese, die ich herausfinden muss. Nicht sicher, wie es geht. Ich werde dies in Kürze in der offiziellen App-Erweiterung veröffentlichen und hoffentlich werden diese Art von Problemen beseitigt. Ich bin auch verwirrt, warum Apple so etwas tun würde. Ich denke, es wird die Nutzung von Safari ernsthaft verringern.

Was ich gerade versuche herauszufinden, sind Einstellungen. Ich kann keine Informationen über den empfohlenen Weg finden, also versuche ich zu sehen, was andere Leute getan haben, indem ich mir ihren Code anschaue, aber ich mache langsam Fortschritte. Werde dich auf dem Laufenden halten.

Was ich gerade versuche herauszufinden, sind Einstellungen. Ich kann keine Informationen über den empfohlenen Weg finden, also versuche ich zu sehen, was andere Leute getan haben, indem ich mir ihren Code anschaue, aber ich mache langsam Fortschritte. Werde dich auf dem Laufenden halten.

Wenn Sie über das Speichern von Einstellungen in Ihrem nativen Swift-Code sprechen, wird UserDefaults empfohlen .

https://www.hackingwithswift.com/read/12/2/reading-and-writing-basics-userdefaults

Natürlich müssen Sie Ihre Speicher- / Ladelogik in Swift haben und sie dann mit einem Ereignis an Ihren JS weitergeben. (so etwas wie "getSettings" "saveSettings" wahrscheinlich)

Es ist absolut verrückt, wie viel Funktionalität sie aus Erweiterungen entfernt haben. Wenn sie wirklich gute Erweiterungen wollen, müssen sie den WebExtensions-Standard implementieren, sonst wird kaum jemand ihre Erweiterungen für Safari konvertieren/unterstützen.

Wenn Sie Fragen zu Safari-App-Erweiterungen haben, zu denen Sie keine Dokumentation finden, können Sie mich gerne anpingen. Ich bin seit ungefähr 6 Monaten mit diesen Erweiterungen beschäftigt und hasse Apple jede Sekunde davon.


Ein Hinweis zur fehlenden Tab-Funktionalität: Sie können eine super hackige Methode verwenden, um mit Tabs zu interagieren:

Apple-Skript.

In Ihrem Swift-Code können Sie ein AppleScript-Skript ausführen, das für Sie mit den Registerkarten interagiert. Ein Beispiel für ein Skript, das die aktuelle Registerkarte ändern kann:

tell front window of application "Safari"
    set current tab to tab ((get index of current tab) + 1)
end tell

tell front window of application "Safari"
        close current tab
end tell

Zuerst wird tell die Registerkarte rechts neben der aktuellen Registerkarte öffnen/aktivieren. Das zweite tell schließt den aktuell geöffneten Tab. So können Sie AppleScript-Funktionen für "nächster/vorheriger Tab" und "aktuell schließen gehen nach links/rechts" erstellen. Sie müssen nur herausfinden, wie Sie das AppleScript schreiben, um das zu tun, was Sie wollen.

Das Problem dabei ist, dass das Aufrufen von AppleScript-Skripten die App-Sandbox zerstört, was bedeutet, dass Sie sie nicht an den App Extension Store senden können. Sie würden also damit stecken bleiben, es selbst zu verteilen. (muss noch unterschrieben werden)

Um fair zu sein, habe ich diese Tab-Methode nicht wirklich getestet, aber in der Vergangenheit habe ich getestet, wie AppleScript von einer Swift Safari-Erweiterung ausgeführt und für Dinge in Safari verwendet wird. Habe aber noch nichts damit veröffentlicht.

BEARBEITEN:

Ich begann irgendwie an mir selbst zu zweifeln, also machte ich einen Proof of Concept mit der aktuellen Version in diesem Repository: https://streamable.com/kions

Dies verwendet mein obiges AppleScript, um Registerkarten zu ändern. Der Code verwendet NSAppleScript und die App-Sandbox muss nicht deaktiviert werden.

Aber Sie haben eine „vorübergehende Ausnahme Entitlement“ , um Ihre Berechtigungen Datei hinzuzufügen.

<key>com.apple.security.temporary-exception.apple-events</key>
<string>com.apple.Safari</string>

Dokumentation: https://developer.apple.com/library/archive/documentation/Miscellaneous/Reference/EntitlementKeyReference/Chapters/AppSandboxTemporaryExceptionEntitlements.html#//apple_ref/doc/uid/TP40011195 -CH5-SW3

Ich bin mir nicht sicher, wie sich das auf die Zulassung für den App Extension Store auswirkt.

Scheint so zu sein, dass es genehmigt wird, wenn Sie einen triftigen Grund haben und Apple zustimmt: https://stackoverflow.com/a/13903333/7768060

@ jdf221 Wow, du weißt nicht, wie sehr ich es schätze, jemanden zu haben, dem ich Fragen stellen kann - das weiß ich wirklich zu schätzen. Ich wünschte, ich hätte im Moment die Energie, mehr daran zu arbeiten. Im Moment stehe ich in meinem Privatleben vor einigen schwierigen Dingen, aber ich hoffe, dass ich etwas Motivation finde, um dieses Projekt wieder aufzunehmen. Ich schätze die Geduld aller.

Ich wollte nur vorbeischauen und sagen, dass es großartig wäre, wenn es im App Store wäre.

Ich habe nur lange versucht, es zum Kompilieren zu bringen, bevor ich dank diesem Erfolg habe: https://stackoverflow.com/questions/39754341/none-of-your-accounts-are-a-member-code-signing-errors- nach-upgrade-auf-xcode

Es war schmerzhaft

Hallo allerseits,

Wie ich bereits in dieser Ausgabe erwähnt habe, habe ich mich in den letzten Monaten mit einigen persönlichen Problemen beschäftigt, aber jetzt ist es viel besser! Da ich meine Lebensqualität verbessere, bin ich viel mehr mit Aktivitäten außerhalb des Computers beschäftigt, sodass ich nicht so viel Zeit und Energie habe, um mich Open Source zu widmen. Ich hoffe, den Motivationsfunken zu finden, die Einstellungssache auf den Markt zu bringen und die Erweiterung bald im App Store zu veröffentlichen.

Ich hoffe, Sie alle, die gespendet haben, fühlen sich in keiner Weise betrogen. Vielen Dank für Ihre Geduld und Ihr Verständnis ❤️

@simeg können wir dich überzeugen, die Veröffentlichungsrechte zu teilen/das Entwicklerteam ein wenig zu öffnen? Ich bin als Apple-Entwickler registriert und würde dies gerne veröffentlichen und weiterhin helfen.

Hey Leute, ich habe heute Morgen einige Zeit damit verbracht, dies zum Laufen zu bringen, und es wurde zur Überprüfung eingereicht. Wenn alles gut geht, gehe ich davon aus, dass wir Vimari in wenigen Tagen im Mac App Store sehen werden. Ich habe eine benutzerdefinierte Gabel erstellt, eine aktuelle PR integriert, die ein schönes Symbol enthält usw.

ABER , ich wollte darauf hinweisen, dass es eine andere Lösung gibt, die bereits im App Store existiert und VIEL besser gewartet zu sein scheint. Bitte schau dir sVim an: https://github.com/flipxfx/sVim

Wenn Sie nur ein Ding verwenden möchten, das wie Vimium funktioniert, ohne es selbst bauen zu müssen, was meiner Meinung nach 95% der Leute wollen, laden Sie es einfach hier aus dem Mac App Store herunter: https://safari-extensions .apple.com/details/?id=com.flipxfx.svim-6Q2K7JYUZ6

Wenn Sie Vimari haben möchten, sehen wir es hoffentlich bald im App Store.

Dies wurde aus folgenden Gründen vom App Store abgelehnt:

  1. Funktioniert nicht mit dem Dark Mode von MacOS.
  2. Es gibt keinen Inhalt im Fenstermenü der Erweiterung – das ist definitiv echt.

Wenn jemand Vimari sehr engagiert ist, müssten wir diese Dinge vor dem erneuten Einreichen beheben, wenn wir irgendeine Hoffnung hätten, in den App Store zu gelangen, um den Download zu erleichtern. Aber ich würde dringend empfehlen, sVim auszuprobieren, das auch in meinem obigen Kommentar erwähnt wird: https://safari-extensions.apple.com/details/?id=com.flipxfx.svim-6Q2K7JYUZ6

@nchase , erleidet das nicht das gleiche Schicksal wie diese Erweiterung mit der nächsten Version von macOS? Wird der Safari Extension Store nicht verschwinden und die einzige Möglichkeit, Erweiterungen zu erhalten, sind in Apps gebündelt?

Ah. Aus irgendeinem Grund dachte ich, es wäre bereits im Mac App Store, sorry dafür.

sVim scheint etwas besser gepflegt zu sein (jemand führt dort erst vor ein paar Monaten aktiv Pull-Requests zusammen und die Erweiterung hat keines der Probleme, die mich bei der Einreichung von Vimari abgelehnt haben, also scheint der Lift kleiner zu sein um es dorthin zu bringen, wo es sein muss, aber ich könnte mich irren).

Habe mir den Code noch gar nicht angeschaut.

@danielcompton Hast du Interesse, ein Champion von Vimari zu werden? (Wenn ja, könnte ich die Änderungen, die ich bisher vorgenommen habe, einfach auf meine Fernbedienung übertragen und Sie können dort abholen.)

Ja, ich habe darüber nachgedacht und betreibe meinen eigenen Build lokal, der ein paar PRs zusammengeführt hat. Ich würde gerne versuchen, das in den Laden zu bringen. Ich dachte auch, dass es langfristig gut wäre, den Safari-Build stärker auf das Upstream-Projekt zu stützen, damit wir Verbesserungen in der ursprünglichen Codebasis nutzen (und dazu beitragen können).

Genial

Haben Sie eine Perspektive zu sVim vs. Vimari? (dh haben Sie tief genug gegraben, um eine Meinung zum Code und zur Architektur jedes einzelnen zu haben?)

Ich kannte sVim nicht, bis Sie es erwähnt haben, aber es stammt auch von einem Chrome-Plugin ab: cVim mit ~ 30.000 Benutzern. Vimari leitet sich von Vimium ab, das ~300.000 Benutzer hat. Ich verwende Vimium auch in Chrome.

cVim erklärt einige Unterschiede, obwohl diese fünf Jahre alt sind und Vimium jetzt einige oder alle davon haben kann. Keine der aufgeführten Funktionen war für mich so wichtig, obwohl ich sehen konnte, warum die Leute sie haben wollen.

Ich kann sie im Moment nicht besser vergleichen, was ist Ihre Meinung?

Ich benutze Vimium auch in Chrome, so habe ich Vimari gefunden :)

Je nachdem, wie einfach es ist, Funktionen von Vimium zu portieren, würde ich sagen, dass dies immer noch meine erste Wahl ist, da es so lebendig und aktiv ist.

Vor ein paar Jahren konnte ich ohne viel Arbeit einen Pull Request schreiben, der in Vimium eingebunden wurde (dh der Code war ziemlich klar und leicht zu verstehen und zu ändern, und bei einem erneuten Blick auf Vimium scheint er immer noch ziemlich klein zu sein und verständlich – ich denke, es ist in Kaffeeschrift geschrieben, was eine kleine Hürde ist, aber erwähnenswert).

Aus der Ferne scheint es nicht schrecklich zu sein, Funktionen zu portieren / Parität aufrechtzuerhalten 🤷‍♂️

Ich denke, die eigentliche Arbeit wird darin bestehen, dieses Projekt für den App Store vorzubereiten. Ich konnte letzte Woche 90 Minuten damit verbringen und habe es weiter als erwartet geschafft, aber ich habe die Probleme nicht vorhergesehen, für die wir abgelehnt wurden.

Hallo allerseits,

Im Januar 2018 habe ich mich verpflichtet, diese Erweiterung in den App Store zu stellen, und die Leute haben Geld für dieses Ziel gespendet. Ich möchte mich bei denen entschuldigen, die gespendet haben; Ich dachte ehrlich, ich hätte die Energie und Ausdauer, um es so zu machen, aber es passierten Dinge, die meinen Fokus anderswohin lenkten. Wie ich bereits erwähnt habe, hatte ich einige Aufregungen in meinem Privatleben, die mich dazu brachten, dass ich mich wieder besser fühlte als alles andere. Jetzt geht es mir wieder gut 🙂 und wenn jemand sein Geld zurück will, gebe ich es gerne zurück. Senden Sie mir eine E-Mail an [_entfernt, weil seit einiger Zeit keine Aktion_], um eine Rückerstattung zu erhalten! Ich fühle mich schlecht, weil ich nicht eingehalten habe, was ich versprochen habe, und ich möchte nicht, dass sich jemand betrogen fühlt.

Was das Projekt angeht, werde ich dieses Ziel nicht fortsetzen. Ich freue mich, wenn andere auftauchen und wenn ich Sie unterstützen kann, lassen Sie es mich wissen. Der Eigentümer dieses Projekts ist nicht mehr aktiv, aber ich kann Sie möglicherweise mit ihm in Verbindung setzen, um Zugang zum Repo zu erhalten.

Ich freue mich, wenn andere auftauchen und wenn ich Sie unterstützen kann, lassen Sie es mich wissen. Der Eigentümer dieses Projekts ist nicht mehr aktiv, aber ich kann Sie möglicherweise mit ihm in Verbindung setzen, um Zugang zum Repo zu erhalten.

Danke, ich habe Guy eine E-Mail geschickt, um die Wartung dieses Projekts zu übernehmen und es in den App Store zu bringen. Ich hoffe, dass bis zum Erscheinungsdatum von Catalina etwas drin ist, damit Upgrader etwas haben, zu dem sie wechseln können.

Hallo zusammen,

Ich habe vor, Vimari an @danielcompton zu

Geschlossen zu Gunsten von # 139.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen

Verwandte Themen

j0na1han picture j0na1han  ·  3Kommentare

jonchoi picture jonchoi  ·  7Kommentare

danielcompton picture danielcompton  ·  4Kommentare

livc picture livc  ·  6Kommentare

Hultner picture Hultner  ·  9Kommentare