Commit graph

46 commits

Author SHA1 Message Date
Thomas Buckley-Houston e270dca8aa Refactor to keep Browsh version in Go 2018-07-19 13:14:59 +08:00
Thomas Buckley-Houston 024d31e74d Version bump to v1.4.0 2018-07-18 19:57:41 +08:00
Thomas Buckley-Houston 6471b6f42c Remove Firefox as a dep in Brew Tap recipe
Touches #65
2018-07-12 04:44:27 +08:00
Thomas Buckley-Houston 43b738f3de Version 1.3.2 2018-07-11 18:07:58 +08:00
Thomas Buckley-Houston 21bd850f50 Missing - in goreleaser :/
Bump to v1.3.1
2018-07-11 17:55:35 +08:00
Thomas Buckley-Houston a43a9bd197 Version 1.3.0 2018-07-11 17:34:26 +08:00
Thomas Buckley-Houston bd08ae4ebd Version 1.2.3 2018-07-10 10:45:38 +08:00
Thomas Buckley-Houston 29132f3695 Better attempt to fix Google phishing warnings 2018-07-09 13:51:58 +08:00
Thomas Buckley-Houston 384688302e Quick fix to stop Chrome detecting phishing
Apparently Google isn't happy about
https://html.brow.sh/mail.google.com URLs.
2018-07-09 13:06:50 +08:00
Thomas Buckley-Houston f6308f0f7b Version 1.2.0 2018-07-08 16:01:39 +08:00
Thomas Buckley-Houston 6fc594bdf9 Version v1.1.5 2018-07-06 14:55:01 +08:00
Thomas Buckley-Houston af1f47bc65 Version 1.1.4 2018-06-26 15:46:05 +08:00
Thomas Buckley-Houston f89ecc6e5e Version 1.1.3 2018-06-23 19:28:55 +08:00
Thomas Buckley-Houston e4933ac94c Version v1.1.2 2018-06-18 20:01:24 +08:00
Thomas Buckley-Houston b4e48ae248 Version bump to v1.1.1 2018-06-18 18:59:32 +08:00
Thomas Buckley-Houston 3149db4bd3 Add anchor tags to HTTP Server output
This means you can now load the raw text in a browser and the resulting
page will have basic blue links that can be clicked on that will in turn
be loaded by the HTTP service.

A significant feature, so worthy of a minor version bump to;
v1.1.0
2018-06-17 21:26:44 +08:00
Thomas Buckley-Houston c9df161eb6 Don't UPX compress OSX binaries
The current versions of UPX cause an instant crash of the Browsh binary
on OSX :/

Version 1.0.13
2018-06-13 19:37:26 +08:00
Thomas Buckley-Houston f894057172 Version 1.0.12 2018-06-12 20:47:54 +08:00
Thomas Buckley-Houston e24ea50dd7 Version 1.0.11 2018-06-12 20:38:30 +08:00
Thomas Buckley-Houston cf35a065bf Version 1.0.10 2018-06-12 20:30:40 +08:00
Thomas Buckley-Houston 2577ea896b Fixes to get the Docker image building again
Firstly Firefox 60 now throws an error if its run as root inside a
user's home path. Which is great because that revelead my naivety about
using `RUN su user` in the Dockerfile. So now Firefox is running as a
non-root user inside Docker which is what was always best.

Also it turns out that the crude 3 second wait at startup hoping that
Firefox's Marionette had started listening, wasn't good enough. So now
we're actually listening for a log message to know when it's started
now.

Finally make all startup methods use a the post-webext connection state
to send the startup URL to the browser, the other methods just seemed to
flakey.

Includes version bump to 1.0.9
2018-06-12 15:40:49 +08:00
Thomas Buckley-Houston c13e8d26f6 Use absolute path to webextension.go asset
Bump to version 1.0.8
2018-06-11 16:28:00 +08:00
Thomas Buckley-Houston 47bcbbc0a6 Version 1.0.5
Adjust path in .goreleaser.yml

Boot Firefox before any tests to get any 'first launch' behaviour out of
the way.

Remove pacman build as we're using nfpm instead of fpm now.
2018-06-11 14:11:45 +08:00
Thomas Buckley-Houston 0109fa206e Move .goreleaser.yml file 2018-06-10 22:47:49 +08:00
Thomas Buckley-Houston 05c2d9f4f3 Version 1.0.2
Update Firefox version dependency to 60.0
2018-06-10 22:30:44 +08:00
Thomas Buckley-Houston 14796c0d93 Updates for Goreleaser
Update Golang to 0.10

Use `curl -sL http://git.io/goreleaser | bash` instead of `go get`
2018-06-10 20:33:41 +08:00
Thomas Buckley-Houston 98fa8014b9 Added Firefox paths for Windows and OSX
Also updated Gopkg dep versions.

And version bump to 1.0.0pre1!
2018-06-10 20:16:28 +08:00
Thomas Buckley-Houston e937f81a60 Added shortcut to toggle a mobile user agent 2018-06-05 14:40:03 +08:00
Thomas Buckley-Houston 02bc0aad93 Hide/Show text using seperate font
Previously we were using CSS to make the text's colour transparent.
However that proved to cause a lot of problems with pre-existing
transition animations in the host webpage. There didn't seem to be
anyway to disable the transition time for text transitioning to
transparent, without also disabling all transitions.

Also added censorship to password input boxes.
2018-06-03 19:54:38 +08:00
Thomas Buckley-Houston 101b10b0e0 Use which when deciding if Firefox binary exists 2018-02-17 16:14:10 +08:00
Thomas Buckley-Houston c44e218c8a Bump to v0.2.13
FPM failed again :/
2018-02-17 15:16:21 +08:00
Thomas Buckley-Houston 29f4dce00b Bump to version 0.2.12 2018-02-17 15:08:07 +08:00
Thomas Buckley-Houston 60c20ee404 Release v0.2.11
Sigh, it's annoying that if the release block fails then we have to bump
the version :/ It's because the Mozilla Addon XPI version can be
re-released.
2018-02-09 11:52:19 +08:00
Thomas Buckley-Houston e1c8cf8a45 Release v0.2.10 2018-02-09 11:47:45 +08:00
Thomas Buckley-Houston 30b83d9d8f Release v0.2.9 2018-02-09 11:34:24 +08:00
Thomas Buckley-Houston f624ea00f1 Forgot to bump the version in manifest.json 2018-02-08 20:28:12 +08:00
Thomas Buckley-Houston cf6cde86f7 Added -startup-url and -time-limit args 2018-02-04 18:26:01 +08:00
Thomas Buckley-Houston c0e51e6413 Use Browsh-specific FF profile.
Also adds `-debug` flag.
2018-02-03 15:21:58 +08:00
Thomas Buckley-Houston 3b7ee79808 Just a version bump to retry a goreleaser bug 2018-02-02 17:35:18 +08:00
Thomas Buckley-Houston cdab6bde93 Bugfixes to Dockerfile 2018-02-02 17:20:37 +08:00
Thomas Buckley-Houston 0b3ff030cd Release v0.2.3 2018-01-30 17:50:55 +08:00
Thomas Buckley-Houston 9a82182a9a Don't use --new-instance, -P when launching FF 2018-01-24 10:59:57 +08:00
Thomas Buckley-Houston b387f66c69 Launch and install webextension from client
This means that Browsh can now be entirely run just by running the CLI
binary. The client launches Firefox as a subprocess, then connects to it
via the Marionette protocol, installs the webextension and finally
triggers a new tab with, currently, the Google homepage in it.

I was trying to set this up for automated testing as well by installing
the built webextension as a temporary addon, because otherwise you need
to sign the extension everytime with a unique semantic version. However
for some reason I can't quite recreate the environment that MDN's
`web-ext` creates. The extension installs fine but fails to load the
`content.js` script, I can't find a backtrace or any other details about
the failure. So for now, we're just going to have to use `web-ext` as
seperate process and have the client connect to that. Which is what one
should do during development anyway, so it's not a huge loss.
2018-01-21 11:56:05 +08:00
Thomas Buckley-Houston 97a36b68b4 First drafy of UI: tabs and URL bar 2018-01-12 21:58:32 +08:00
Thomas Buckley-Houston be2b961cfe Sample text colour using monochar block font trick
Using JS's `getComputedStyle()` for every character is too CPU
intensive, so instead I'm experimenting with using a custom font
to take the canvas snapshot. The font is made up of only the unicode
block character, which basically fills the entire space given to a
monospace glyph. This also means that we can fairly reliably work out
the visibility (whether it's obscured or hidden with CSS) of text.
2018-01-01 22:10:10 +08:00
Thomas Buckley-Houston d00361f87d First draft of rewrite to Webextension and Rust
This proves that frames can be generated on Firefox using the canvas and
a Tree Walker to examine text nodes. Already with little optimisation
frames don't ever take longer than 200ms to render.

Chrome has a MediaStream of the viewport, hopefully that will prove
performant as well.

This doesn't have functioning text colour detection or text occlusion
support. But early research suggests this will possible by comparing 2
screenshots: one with and the other without rendered text.
2018-01-01 21:50:30 +08:00