This repository was archived by the owner on Jan 22, 2022. It is now read-only.

Repository files navigation

morph-browser

Lightweight web browser tailored for Ubuntu, based on the Qt WebEngine and using the Ubuntu UI components. It requires Qt 5.9 to build and run.

Morph Icon is based on Origami Licensed CC-by Creative Mania from the Noun Project

= Building =

The build system uses cmake. To compile, simply invoke cmake and then make:

$ cmake .
$ make

The application can also be cross compiled for an ARM target on a X86 host. To do that, just pass this additional parameter to cmake:

$ cmake -DCMAKE_TOOLCHAIN_FILE=cmake/ubuntu-arm-linux-gnueabihf.cmake .

== Building for ubuntu touch ==

Simply use clickable command line

$ clickable

= Running =

webbrowser-app can be run from the development branch without the need to install any files. Just run:

$ ./src/app/webbrowser/webbrowser-app

The executable accepts command line switches and parameters. To find out which, just run:

$ ./src/app/webbrowser/webbrowser-app --help

= Build with docker =

First we need to build the image

$ docker build -t ubports_xenial .

Then we can build the app

$ docker run --privileged -ti --rm -e DISPLAY=:0 -v /var/run/dbus:/var/run/dbus -v /tmp/.X11-unix:/tmp/.X11-unix -v pwd:/home/developer/ubports_build ubports_xenial bash -c "cmake . && make"

Now we can run the app

$ docker run --privileged -ti --rm -e DISPLAY=:0 -v /var/run/dbus:/var/run/dbus -v /tmp/.X11-unix:/tmp/.X11-unix -v pwd:/home/developer/ubports_build ubports_xenial bash -c "./src/app/webbrowser/webbrowser-app"

= Unit tests =

To run the unit tests, you can use the commands below:

$ make test
- or -
$ ctest

= Automated UI tests =

webbrowser-app uses autopilot (https://launchpad.net/autopilot) to test its UI. To run the tests locally, you will need to install python3-autopilot and autopilot-qt5. Then do the following:

$ cd tests/autopilot/
$ autopilot3 run webbrowser_app

You can get a list of all available tests with the following command:

$ autopilot3 list webbrowser_app

In order to run the tests in a virtual machine with an environment closer to what a user will get in Ubuntu Touch, see the Dep8 tests section.

= Code coverage =

To generate a report with detailed code coverage, you need to re-run cmake with "CMAKE_BUILD_TYPE=coverage":

$ cmake -DCMAKE_BUILD_TYPE=coverage .
$ make
$ make test
$ make coverage

This will generate a coverage report in XML format (coverage.xml) and an interactive human-readable report in HTML format (coveragereport/index.html).

= Dep8 tests =

Dep8 tests exercise the package "as-installed".

Currently, the webbrowser-app has one suite of dep8 tests that uses autopilot (https://launchpad.net/autopilot) to test from the point of view of the user.

To run the tests you will need autopkgtest:

$ sudo apt-get install autopkgtest

You can use multiple test beds to execute the tests. Below you will find instructions to run them in a virtual machine You can find more information with:

$ man adt-run

== Run dep8 tests ==

To run the tests in a qemu virtual machine, you will first have to create it (see /usr/share/doc/autopkgtest/README.running-tests.rst.gz). We output the image to ~/ rather than the current directory, so it will be in a safer place to avoid rebuilding images every time. You can store it in any directory you wish. This image is better consumed "fresh", building it daily will avoid long updates/upgrades when running the tests.

$ adt-buildvm-ubuntu-cloud -r $(lsb_release -c -s) -a amd64 -o ~/

Then run the tests using adt-run with the qemu virtualization host against the current archive.

$ adt-run -B -U --unbuilt-tree . \
-o ~/adt-browser-test/$(date +%Y-%m-%d-%H-%M) \
--- qemu ~/adt-$(lsb_release -c -s)-amd64-cloud.img

The tests can also be run on a local phone.

$ adt-run -B -U --unbuilt-tree . \
-o ~/adt-browser-test/$(date +%Y-%m-%d-%H-%M) \
--- ssh -s adb -- -p <password> --serial <ADB_SERIAL> 

== Examine the dep8 autopilot results ==

To examine the test results, which are in subunit format, additional tools are required, such as trv (https://launchpad.net/trv).

You can find the results file in the directory ~/adt-browser-test/$(date +%Y-%m-%d-%H-%M)/artifacts.

= Settings =

webbrowser-app supports a limited set of custom settings, persisted on disk in the following INI-like file:

$HOME/.config/webbrowser-app/webbrowser-app.conf

The following keys are supported:

  • 'homepage': a URL that the browser will open when launched if no URL is specified on the command line

  • 'searchengine': a custom search engine specification, looked up in $HOME/.local/share/webbrowser-app/searchengines/{value}.xml and following the OpenSearch document description format (http://www.opensearch.org/Specifications/OpenSearch/1.1)

  • restoreSession: whether to restore the previous browsing session at startup (defaults to true)

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content
This repository was archived by the owner on Jan 22, 2022. It is now read-only.

Repository files navigation

morph-browser

Lightweight web browser tailored for Ubuntu, based on the Qt WebEngine and using the Ubuntu UI components. It requires Qt 5.9 to build and run.

Morph Icon is based on Origami Licensed CC-by Creative Mania from the Noun Project

= Building =

The build system uses cmake. To compile, simply invoke cmake and then make:

$ cmake .
$ make

The application can also be cross compiled for an ARM target on a X86 host. To do that, just pass this additional parameter to cmake:

$ cmake -DCMAKE_TOOLCHAIN_FILE=cmake/ubuntu-arm-linux-gnueabihf.cmake .

== Building for ubuntu touch ==

Simply use clickable command line

$ clickable

= Running =

webbrowser-app can be run from the development branch without the need to install any files. Just run:

$ ./src/app/webbrowser/webbrowser-app

The executable accepts command line switches and parameters. To find out which, just run:

$ ./src/app/webbrowser/webbrowser-app --help

= Build with docker =

First we need to build the image

$ docker build -t ubports_xenial .

Then we can build the app

$ docker run --privileged -ti --rm -e DISPLAY=:0 -v /var/run/dbus:/var/run/dbus -v /tmp/.X11-unix:/tmp/.X11-unix -v pwd:/home/developer/ubports_build ubports_xenial bash -c "cmake . && make"

Now we can run the app

$ docker run --privileged -ti --rm -e DISPLAY=:0 -v /var/run/dbus:/var/run/dbus -v /tmp/.X11-unix:/tmp/.X11-unix -v pwd:/home/developer/ubports_build ubports_xenial bash -c "./src/app/webbrowser/webbrowser-app"

= Unit tests =

To run the unit tests, you can use the commands below:

$ make test
- or -
$ ctest

= Automated UI tests =

webbrowser-app uses autopilot (https://launchpad.net/autopilot) to test its UI. To run the tests locally, you will need to install python3-autopilot and autopilot-qt5. Then do the following:

$ cd tests/autopilot/
$ autopilot3 run webbrowser_app

You can get a list of all available tests with the following command:

$ autopilot3 list webbrowser_app

In order to run the tests in a virtual machine with an environment closer to what a user will get in Ubuntu Touch, see the Dep8 tests section.

= Code coverage =

To generate a report with detailed code coverage, you need to re-run cmake with "CMAKE_BUILD_TYPE=coverage":

$ cmake -DCMAKE_BUILD_TYPE=coverage .
$ make
$ make test
$ make coverage

This will generate a coverage report in XML format (coverage.xml) and an interactive human-readable report in HTML format (coveragereport/index.html).

= Dep8 tests =

Dep8 tests exercise the package "as-installed".

Currently, the webbrowser-app has one suite of dep8 tests that uses autopilot (https://launchpad.net/autopilot) to test from the point of view of the user.

To run the tests you will need autopkgtest:

$ sudo apt-get install autopkgtest

You can use multiple test beds to execute the tests. Below you will find instructions to run them in a virtual machine You can find more information with:

$ man adt-run

== Run dep8 tests ==

To run the tests in a qemu virtual machine, you will first have to create it (see /usr/share/doc/autopkgtest/README.running-tests.rst.gz). We output the image to ~/ rather than the current directory, so it will be in a safer place to avoid rebuilding images every time. You can store it in any directory you wish. This image is better consumed "fresh", building it daily will avoid long updates/upgrades when running the tests.

$ adt-buildvm-ubuntu-cloud -r $(lsb_release -c -s) -a amd64 -o ~/

Then run the tests using adt-run with the qemu virtualization host against the current archive.

$ adt-run -B -U --unbuilt-tree . \
-o ~/adt-browser-test/$(date +%Y-%m-%d-%H-%M) \
--- qemu ~/adt-$(lsb_release -c -s)-amd64-cloud.img

The tests can also be run on a local phone.

$ adt-run -B -U --unbuilt-tree . \
-o ~/adt-browser-test/$(date +%Y-%m-%d-%H-%M) \
--- ssh -s adb -- -p <password> --serial <ADB_SERIAL> 

== Examine the dep8 autopilot results ==

To examine the test results, which are in subunit format, additional tools are required, such as trv (https://launchpad.net/trv).

You can find the results file in the directory ~/adt-browser-test/$(date +%Y-%m-%d-%H-%M)/artifacts.

= Settings =

webbrowser-app supports a limited set of custom settings, persisted on disk in the following INI-like file:

$HOME/.config/webbrowser-app/webbrowser-app.conf

The following keys are supported:

  • 'homepage': a URL that the browser will open when launched if no URL is specified on the command line

  • 'searchengine': a custom search engine specification, looked up in $HOME/.local/share/webbrowser-app/searchengines/{value}.xml and following the OpenSearch document description format (http://www.opensearch.org/Specifications/OpenSearch/1.1)

  • restoreSession: whether to restore the previous browsing session at startup (defaults to true)

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content
This repository was archived by the owner on Jan 22, 2022. It is now read-only.

Repository files navigation

morph-browser

Lightweight web browser tailored for Ubuntu, based on the Qt WebEngine and using the Ubuntu UI components. It requires Qt 5.9 to build and run.

Morph Icon is based on Origami Licensed CC-by Creative Mania from the Noun Project

= Building =

The build system uses cmake. To compile, simply invoke cmake and then make:

$ cmake .
$ make

The application can also be cross compiled for an ARM target on a X86 host. To do that, just pass this additional parameter to cmake:

$ cmake -DCMAKE_TOOLCHAIN_FILE=cmake/ubuntu-arm-linux-gnueabihf.cmake .

== Building for ubuntu touch ==

Simply use clickable command line

$ clickable

= Running =

webbrowser-app can be run from the development branch without the need to install any files. Just run:

$ ./src/app/webbrowser/webbrowser-app

The executable accepts command line switches and parameters. To find out which, just run:

$ ./src/app/webbrowser/webbrowser-app --help

= Build with docker =

First we need to build the image

$ docker build -t ubports_xenial .

Then we can build the app

$ docker run --privileged -ti --rm -e DISPLAY=:0 -v /var/run/dbus:/var/run/dbus -v /tmp/.X11-unix:/tmp/.X11-unix -v pwd:/home/developer/ubports_build ubports_xenial bash -c "cmake . && make"

Now we can run the app

$ docker run --privileged -ti --rm -e DISPLAY=:0 -v /var/run/dbus:/var/run/dbus -v /tmp/.X11-unix:/tmp/.X11-unix -v pwd:/home/developer/ubports_build ubports_xenial bash -c "./src/app/webbrowser/webbrowser-app"

= Unit tests =

To run the unit tests, you can use the commands below:

$ make test
- or -
$ ctest

= Automated UI tests =

webbrowser-app uses autopilot (https://launchpad.net/autopilot) to test its UI. To run the tests locally, you will need to install python3-autopilot and autopilot-qt5. Then do the following:

$ cd tests/autopilot/
$ autopilot3 run webbrowser_app

You can get a list of all available tests with the following command:

$ autopilot3 list webbrowser_app

In order to run the tests in a virtual machine with an environment closer to what a user will get in Ubuntu Touch, see the Dep8 tests section.

= Code coverage =

To generate a report with detailed code coverage, you need to re-run cmake with "CMAKE_BUILD_TYPE=coverage":

$ cmake -DCMAKE_BUILD_TYPE=coverage .
$ make
$ make test
$ make coverage

This will generate a coverage report in XML format (coverage.xml) and an interactive human-readable report in HTML format (coveragereport/index.html).

= Dep8 tests =

Dep8 tests exercise the package "as-installed".

Currently, the webbrowser-app has one suite of dep8 tests that uses autopilot (https://launchpad.net/autopilot) to test from the point of view of the user.

To run the tests you will need autopkgtest:

$ sudo apt-get install autopkgtest

You can use multiple test beds to execute the tests. Below you will find instructions to run them in a virtual machine You can find more information with:

$ man adt-run

== Run dep8 tests ==

To run the tests in a qemu virtual machine, you will first have to create it (see /usr/share/doc/autopkgtest/README.running-tests.rst.gz). We output the image to ~/ rather than the current directory, so it will be in a safer place to avoid rebuilding images every time. You can store it in any directory you wish. This image is better consumed "fresh", building it daily will avoid long updates/upgrades when running the tests.

$ adt-buildvm-ubuntu-cloud -r $(lsb_release -c -s) -a amd64 -o ~/

Then run the tests using adt-run with the qemu virtualization host against the current archive.

$ adt-run -B -U --unbuilt-tree . \
-o ~/adt-browser-test/$(date +%Y-%m-%d-%H-%M) \
--- qemu ~/adt-$(lsb_release -c -s)-amd64-cloud.img

The tests can also be run on a local phone.

$ adt-run -B -U --unbuilt-tree . \
-o ~/adt-browser-test/$(date +%Y-%m-%d-%H-%M) \
--- ssh -s adb -- -p <password> --serial <ADB_SERIAL> 

== Examine the dep8 autopilot results ==

To examine the test results, which are in subunit format, additional tools are required, such as trv (https://launchpad.net/trv).

You can find the results file in the directory ~/adt-browser-test/$(date +%Y-%m-%d-%H-%M)/artifacts.

= Settings =

webbrowser-app supports a limited set of custom settings, persisted on disk in the following INI-like file:

$HOME/.config/webbrowser-app/webbrowser-app.conf

The following keys are supported:

  • 'homepage': a URL that the browser will open when launched if no URL is specified on the command line

  • 'searchengine': a custom search engine specification, looked up in $HOME/.local/share/webbrowser-app/searchengines/{value}.xml and following the OpenSearch document description format (http://www.opensearch.org/Specifications/OpenSearch/1.1)

  • restoreSession: whether to restore the previous browsing session at startup (defaults to true)

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content
This repository was archived by the owner on Jan 22, 2022. It is now read-only.

Repository files navigation

morph-browser

Lightweight web browser tailored for Ubuntu, based on the Qt WebEngine and using the Ubuntu UI components. It requires Qt 5.9 to build and run.

Morph Icon is based on Origami Licensed CC-by Creative Mania from the Noun Project

= Building =

The build system uses cmake. To compile, simply invoke cmake and then make:

$ cmake .
$ make

The application can also be cross compiled for an ARM target on a X86 host. To do that, just pass this additional parameter to cmake:

$ cmake -DCMAKE_TOOLCHAIN_FILE=cmake/ubuntu-arm-linux-gnueabihf.cmake .

== Building for ubuntu touch ==

Simply use clickable command line

$ clickable

= Running =

webbrowser-app can be run from the development branch without the need to install any files. Just run:

$ ./src/app/webbrowser/webbrowser-app

The executable accepts command line switches and parameters. To find out which, just run:

$ ./src/app/webbrowser/webbrowser-app --help

= Build with docker =

First we need to build the image

$ docker build -t ubports_xenial .

Then we can build the app

$ docker run --privileged -ti --rm -e DISPLAY=:0 -v /var/run/dbus:/var/run/dbus -v /tmp/.X11-unix:/tmp/.X11-unix -v pwd:/home/developer/ubports_build ubports_xenial bash -c "cmake . && make"

Now we can run the app

$ docker run --privileged -ti --rm -e DISPLAY=:0 -v /var/run/dbus:/var/run/dbus -v /tmp/.X11-unix:/tmp/.X11-unix -v pwd:/home/developer/ubports_build ubports_xenial bash -c "./src/app/webbrowser/webbrowser-app"

= Unit tests =

To run the unit tests, you can use the commands below:

$ make test
- or -
$ ctest

= Automated UI tests =

webbrowser-app uses autopilot (https://launchpad.net/autopilot) to test its UI. To run the tests locally, you will need to install python3-autopilot and autopilot-qt5. Then do the following:

$ cd tests/autopilot/
$ autopilot3 run webbrowser_app

You can get a list of all available tests with the following command:

$ autopilot3 list webbrowser_app

In order to run the tests in a virtual machine with an environment closer to what a user will get in Ubuntu Touch, see the Dep8 tests section.

= Code coverage =

To generate a report with detailed code coverage, you need to re-run cmake with "CMAKE_BUILD_TYPE=coverage":

$ cmake -DCMAKE_BUILD_TYPE=coverage .
$ make
$ make test
$ make coverage

This will generate a coverage report in XML format (coverage.xml) and an interactive human-readable report in HTML format (coveragereport/index.html).

= Dep8 tests =

Dep8 tests exercise the package "as-installed".

Currently, the webbrowser-app has one suite of dep8 tests that uses autopilot (https://launchpad.net/autopilot) to test from the point of view of the user.

To run the tests you will need autopkgtest:

$ sudo apt-get install autopkgtest

You can use multiple test beds to execute the tests. Below you will find instructions to run them in a virtual machine You can find more information with:

$ man adt-run

== Run dep8 tests ==

To run the tests in a qemu virtual machine, you will first have to create it (see /usr/share/doc/autopkgtest/README.running-tests.rst.gz). We output the image to ~/ rather than the current directory, so it will be in a safer place to avoid rebuilding images every time. You can store it in any directory you wish. This image is better consumed "fresh", building it daily will avoid long updates/upgrades when running the tests.

$ adt-buildvm-ubuntu-cloud -r $(lsb_release -c -s) -a amd64 -o ~/

Then run the tests using adt-run with the qemu virtualization host against the current archive.

$ adt-run -B -U --unbuilt-tree . \
-o ~/adt-browser-test/$(date +%Y-%m-%d-%H-%M) \
--- qemu ~/adt-$(lsb_release -c -s)-amd64-cloud.img

The tests can also be run on a local phone.

$ adt-run -B -U --unbuilt-tree . \
-o ~/adt-browser-test/$(date +%Y-%m-%d-%H-%M) \
--- ssh -s adb -- -p <password> --serial <ADB_SERIAL> 

== Examine the dep8 autopilot results ==

To examine the test results, which are in subunit format, additional tools are required, such as trv (https://launchpad.net/trv).

You can find the results file in the directory ~/adt-browser-test/$(date +%Y-%m-%d-%H-%M)/artifacts.

= Settings =

webbrowser-app supports a limited set of custom settings, persisted on disk in the following INI-like file:

$HOME/.config/webbrowser-app/webbrowser-app.conf

The following keys are supported:

  • 'homepage': a URL that the browser will open when launched if no URL is specified on the command line

  • 'searchengine': a custom search engine specification, looked up in $HOME/.local/share/webbrowser-app/searchengines/{value}.xml and following the OpenSearch document description format (http://www.opensearch.org/Specifications/OpenSearch/1.1)

  • restoreSession: whether to restore the previous browsing session at startup (defaults to true)

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content
This repository was archived by the owner on Jan 22, 2022. It is now read-only.

Repository files navigation

morph-browser

Lightweight web browser tailored for Ubuntu, based on the Qt WebEngine and using the Ubuntu UI components. It requires Qt 5.9 to build and run.

Morph Icon is based on Origami Licensed CC-by Creative Mania from the Noun Project

= Building =

The build system uses cmake. To compile, simply invoke cmake and then make:

$ cmake .
$ make

The application can also be cross compiled for an ARM target on a X86 host. To do that, just pass this additional parameter to cmake:

$ cmake -DCMAKE_TOOLCHAIN_FILE=cmake/ubuntu-arm-linux-gnueabihf.cmake .

== Building for ubuntu touch ==

Simply use clickable command line

$ clickable

= Running =

webbrowser-app can be run from the development branch without the need to install any files. Just run:

$ ./src/app/webbrowser/webbrowser-app

The executable accepts command line switches and parameters. To find out which, just run:

$ ./src/app/webbrowser/webbrowser-app --help

= Build with docker =

First we need to build the image

$ docker build -t ubports_xenial .

Then we can build the app

$ docker run --privileged -ti --rm -e DISPLAY=:0 -v /var/run/dbus:/var/run/dbus -v /tmp/.X11-unix:/tmp/.X11-unix -v pwd:/home/developer/ubports_build ubports_xenial bash -c "cmake . && make"

Now we can run the app

$ docker run --privileged -ti --rm -e DISPLAY=:0 -v /var/run/dbus:/var/run/dbus -v /tmp/.X11-unix:/tmp/.X11-unix -v pwd:/home/developer/ubports_build ubports_xenial bash -c "./src/app/webbrowser/webbrowser-app"

= Unit tests =

To run the unit tests, you can use the commands below:

$ make test
- or -
$ ctest

= Automated UI tests =

webbrowser-app uses autopilot (https://launchpad.net/autopilot) to test its UI. To run the tests locally, you will need to install python3-autopilot and autopilot-qt5. Then do the following:

$ cd tests/autopilot/
$ autopilot3 run webbrowser_app

You can get a list of all available tests with the following command:

$ autopilot3 list webbrowser_app

In order to run the tests in a virtual machine with an environment closer to what a user will get in Ubuntu Touch, see the Dep8 tests section.

= Code coverage =

To generate a report with detailed code coverage, you need to re-run cmake with "CMAKE_BUILD_TYPE=coverage":

$ cmake -DCMAKE_BUILD_TYPE=coverage .
$ make
$ make test
$ make coverage

This will generate a coverage report in XML format (coverage.xml) and an interactive human-readable report in HTML format (coveragereport/index.html).

= Dep8 tests =

Dep8 tests exercise the package "as-installed".

Currently, the webbrowser-app has one suite of dep8 tests that uses autopilot (https://launchpad.net/autopilot) to test from the point of view of the user.

To run the tests you will need autopkgtest:

$ sudo apt-get install autopkgtest

You can use multiple test beds to execute the tests. Below you will find instructions to run them in a virtual machine You can find more information with:

$ man adt-run

== Run dep8 tests ==

To run the tests in a qemu virtual machine, you will first have to create it (see /usr/share/doc/autopkgtest/README.running-tests.rst.gz). We output the image to ~/ rather than the current directory, so it will be in a safer place to avoid rebuilding images every time. You can store it in any directory you wish. This image is better consumed "fresh", building it daily will avoid long updates/upgrades when running the tests.

$ adt-buildvm-ubuntu-cloud -r $(lsb_release -c -s) -a amd64 -o ~/

Then run the tests using adt-run with the qemu virtualization host against the current archive.

$ adt-run -B -U --unbuilt-tree . \
-o ~/adt-browser-test/$(date +%Y-%m-%d-%H-%M) \
--- qemu ~/adt-$(lsb_release -c -s)-amd64-cloud.img

The tests can also be run on a local phone.

$ adt-run -B -U --unbuilt-tree . \
-o ~/adt-browser-test/$(date +%Y-%m-%d-%H-%M) \
--- ssh -s adb -- -p <password> --serial <ADB_SERIAL> 

== Examine the dep8 autopilot results ==

To examine the test results, which are in subunit format, additional tools are required, such as trv (https://launchpad.net/trv).

You can find the results file in the directory ~/adt-browser-test/$(date +%Y-%m-%d-%H-%M)/artifacts.

= Settings =

webbrowser-app supports a limited set of custom settings, persisted on disk in the following INI-like file:

$HOME/.config/webbrowser-app/webbrowser-app.conf

The following keys are supported:

  • 'homepage': a URL that the browser will open when launched if no URL is specified on the command line

  • 'searchengine': a custom search engine specification, looked up in $HOME/.local/share/webbrowser-app/searchengines/{value}.xml and following the OpenSearch document description format (http://www.opensearch.org/Specifications/OpenSearch/1.1)

  • restoreSession: whether to restore the previous browsing session at startup (defaults to true)

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content
This repository was archived by the owner on Jan 22, 2022. It is now read-only.

Repository files navigation

morph-browser

Lightweight web browser tailored for Ubuntu, based on the Qt WebEngine and using the Ubuntu UI components. It requires Qt 5.9 to build and run.

Morph Icon is based on Origami Licensed CC-by Creative Mania from the Noun Project

= Building =

The build system uses cmake. To compile, simply invoke cmake and then make:

$ cmake .
$ make

The application can also be cross compiled for an ARM target on a X86 host. To do that, just pass this additional parameter to cmake:

$ cmake -DCMAKE_TOOLCHAIN_FILE=cmake/ubuntu-arm-linux-gnueabihf.cmake .

== Building for ubuntu touch ==

Simply use clickable command line

$ clickable

= Running =

webbrowser-app can be run from the development branch without the need to install any files. Just run:

$ ./src/app/webbrowser/webbrowser-app

The executable accepts command line switches and parameters. To find out which, just run:

$ ./src/app/webbrowser/webbrowser-app --help

= Build with docker =

First we need to build the image

$ docker build -t ubports_xenial .

Then we can build the app

$ docker run --privileged -ti --rm -e DISPLAY=:0 -v /var/run/dbus:/var/run/dbus -v /tmp/.X11-unix:/tmp/.X11-unix -v pwd:/home/developer/ubports_build ubports_xenial bash -c "cmake . && make"

Now we can run the app

$ docker run --privileged -ti --rm -e DISPLAY=:0 -v /var/run/dbus:/var/run/dbus -v /tmp/.X11-unix:/tmp/.X11-unix -v pwd:/home/developer/ubports_build ubports_xenial bash -c "./src/app/webbrowser/webbrowser-app"

= Unit tests =

To run the unit tests, you can use the commands below:

$ make test
- or -
$ ctest

= Automated UI tests =

webbrowser-app uses autopilot (https://launchpad.net/autopilot) to test its UI. To run the tests locally, you will need to install python3-autopilot and autopilot-qt5. Then do the following:

$ cd tests/autopilot/
$ autopilot3 run webbrowser_app

You can get a list of all available tests with the following command:

$ autopilot3 list webbrowser_app

In order to run the tests in a virtual machine with an environment closer to what a user will get in Ubuntu Touch, see the Dep8 tests section.

= Code coverage =

To generate a report with detailed code coverage, you need to re-run cmake with "CMAKE_BUILD_TYPE=coverage":

$ cmake -DCMAKE_BUILD_TYPE=coverage .
$ make
$ make test
$ make coverage

This will generate a coverage report in XML format (coverage.xml) and an interactive human-readable report in HTML format (coveragereport/index.html).

= Dep8 tests =

Dep8 tests exercise the package "as-installed".

Currently, the webbrowser-app has one suite of dep8 tests that uses autopilot (https://launchpad.net/autopilot) to test from the point of view of the user.

To run the tests you will need autopkgtest:

$ sudo apt-get install autopkgtest

You can use multiple test beds to execute the tests. Below you will find instructions to run them in a virtual machine You can find more information with:

$ man adt-run

== Run dep8 tests ==

To run the tests in a qemu virtual machine, you will first have to create it (see /usr/share/doc/autopkgtest/README.running-tests.rst.gz). We output the image to ~/ rather than the current directory, so it will be in a safer place to avoid rebuilding images every time. You can store it in any directory you wish. This image is better consumed "fresh", building it daily will avoid long updates/upgrades when running the tests.

$ adt-buildvm-ubuntu-cloud -r $(lsb_release -c -s) -a amd64 -o ~/

Then run the tests using adt-run with the qemu virtualization host against the current archive.

$ adt-run -B -U --unbuilt-tree . \
-o ~/adt-browser-test/$(date +%Y-%m-%d-%H-%M) \
--- qemu ~/adt-$(lsb_release -c -s)-amd64-cloud.img

The tests can also be run on a local phone.

$ adt-run -B -U --unbuilt-tree . \
-o ~/adt-browser-test/$(date +%Y-%m-%d-%H-%M) \
--- ssh -s adb -- -p <password> --serial <ADB_SERIAL> 

== Examine the dep8 autopilot results ==

To examine the test results, which are in subunit format, additional tools are required, such as trv (https://launchpad.net/trv).

You can find the results file in the directory ~/adt-browser-test/$(date +%Y-%m-%d-%H-%M)/artifacts.

= Settings =

webbrowser-app supports a limited set of custom settings, persisted on disk in the following INI-like file:

$HOME/.config/webbrowser-app/webbrowser-app.conf

The following keys are supported:

  • 'homepage': a URL that the browser will open when launched if no URL is specified on the command line

  • 'searchengine': a custom search engine specification, looked up in $HOME/.local/share/webbrowser-app/searchengines/{value}.xml and following the OpenSearch document description format (http://www.opensearch.org/Specifications/OpenSearch/1.1)

  • restoreSession: whether to restore the previous browsing session at startup (defaults to true)

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content
This repository was archived by the owner on Jan 22, 2022. It is now read-only.

Repository files navigation

morph-browser

Lightweight web browser tailored for Ubuntu, based on the Qt WebEngine and using the Ubuntu UI components. It requires Qt 5.9 to build and run.

Morph Icon is based on Origami Licensed CC-by Creative Mania from the Noun Project

= Building =

The build system uses cmake. To compile, simply invoke cmake and then make:

$ cmake .
$ make

The application can also be cross compiled for an ARM target on a X86 host. To do that, just pass this additional parameter to cmake:

$ cmake -DCMAKE_TOOLCHAIN_FILE=cmake/ubuntu-arm-linux-gnueabihf.cmake .

== Building for ubuntu touch ==

Simply use clickable command line

$ clickable

= Running =

webbrowser-app can be run from the development branch without the need to install any files. Just run:

$ ./src/app/webbrowser/webbrowser-app

The executable accepts command line switches and parameters. To find out which, just run:

$ ./src/app/webbrowser/webbrowser-app --help

= Build with docker =

First we need to build the image

$ docker build -t ubports_xenial .

Then we can build the app

$ docker run --privileged -ti --rm -e DISPLAY=:0 -v /var/run/dbus:/var/run/dbus -v /tmp/.X11-unix:/tmp/.X11-unix -v pwd:/home/developer/ubports_build ubports_xenial bash -c "cmake . && make"

Now we can run the app

$ docker run --privileged -ti --rm -e DISPLAY=:0 -v /var/run/dbus:/var/run/dbus -v /tmp/.X11-unix:/tmp/.X11-unix -v pwd:/home/developer/ubports_build ubports_xenial bash -c "./src/app/webbrowser/webbrowser-app"

= Unit tests =

To run the unit tests, you can use the commands below:

$ make test
- or -
$ ctest

= Automated UI tests =

webbrowser-app uses autopilot (https://launchpad.net/autopilot) to test its UI. To run the tests locally, you will need to install python3-autopilot and autopilot-qt5. Then do the following:

$ cd tests/autopilot/
$ autopilot3 run webbrowser_app

You can get a list of all available tests with the following command:

$ autopilot3 list webbrowser_app

In order to run the tests in a virtual machine with an environment closer to what a user will get in Ubuntu Touch, see the Dep8 tests section.

= Code coverage =

To generate a report with detailed code coverage, you need to re-run cmake with "CMAKE_BUILD_TYPE=coverage":

$ cmake -DCMAKE_BUILD_TYPE=coverage .
$ make
$ make test
$ make coverage

This will generate a coverage report in XML format (coverage.xml) and an interactive human-readable report in HTML format (coveragereport/index.html).

= Dep8 tests =

Dep8 tests exercise the package "as-installed".

Currently, the webbrowser-app has one suite of dep8 tests that uses autopilot (https://launchpad.net/autopilot) to test from the point of view of the user.

To run the tests you will need autopkgtest:

$ sudo apt-get install autopkgtest

You can use multiple test beds to execute the tests. Below you will find instructions to run them in a virtual machine You can find more information with:

$ man adt-run

== Run dep8 tests ==

To run the tests in a qemu virtual machine, you will first have to create it (see /usr/share/doc/autopkgtest/README.running-tests.rst.gz). We output the image to ~/ rather than the current directory, so it will be in a safer place to avoid rebuilding images every time. You can store it in any directory you wish. This image is better consumed "fresh", building it daily will avoid long updates/upgrades when running the tests.

$ adt-buildvm-ubuntu-cloud -r $(lsb_release -c -s) -a amd64 -o ~/

Then run the tests using adt-run with the qemu virtualization host against the current archive.

$ adt-run -B -U --unbuilt-tree . \
-o ~/adt-browser-test/$(date +%Y-%m-%d-%H-%M) \
--- qemu ~/adt-$(lsb_release -c -s)-amd64-cloud.img

The tests can also be run on a local phone.

$ adt-run -B -U --unbuilt-tree . \
-o ~/adt-browser-test/$(date +%Y-%m-%d-%H-%M) \
--- ssh -s adb -- -p <password> --serial <ADB_SERIAL> 

== Examine the dep8 autopilot results ==

To examine the test results, which are in subunit format, additional tools are required, such as trv (https://launchpad.net/trv).

You can find the results file in the directory ~/adt-browser-test/$(date +%Y-%m-%d-%H-%M)/artifacts.

= Settings =

webbrowser-app supports a limited set of custom settings, persisted on disk in the following INI-like file:

$HOME/.config/webbrowser-app/webbrowser-app.conf

The following keys are supported:

  • 'homepage': a URL that the browser will open when launched if no URL is specified on the command line

  • 'searchengine': a custom search engine specification, looked up in $HOME/.local/share/webbrowser-app/searchengines/{value}.xml and following the OpenSearch document description format (http://www.opensearch.org/Specifications/OpenSearch/1.1)

  • restoreSession: whether to restore the previous browsing session at startup (defaults to true)

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content
This repository was archived by the owner on Jan 22, 2022. It is now read-only.

Repository files navigation

morph-browser

Lightweight web browser tailored for Ubuntu, based on the Qt WebEngine and using the Ubuntu UI components. It requires Qt 5.9 to build and run.

Morph Icon is based on Origami Licensed CC-by Creative Mania from the Noun Project

= Building =

The build system uses cmake. To compile, simply invoke cmake and then make:

$ cmake .
$ make

The application can also be cross compiled for an ARM target on a X86 host. To do that, just pass this additional parameter to cmake:

$ cmake -DCMAKE_TOOLCHAIN_FILE=cmake/ubuntu-arm-linux-gnueabihf.cmake .

== Building for ubuntu touch ==

Simply use clickable command line

$ clickable

= Running =

webbrowser-app can be run from the development branch without the need to install any files. Just run:

$ ./src/app/webbrowser/webbrowser-app

The executable accepts command line switches and parameters. To find out which, just run:

$ ./src/app/webbrowser/webbrowser-app --help

= Build with docker =

First we need to build the image

$ docker build -t ubports_xenial .

Then we can build the app

$ docker run --privileged -ti --rm -e DISPLAY=:0 -v /var/run/dbus:/var/run/dbus -v /tmp/.X11-unix:/tmp/.X11-unix -v pwd:/home/developer/ubports_build ubports_xenial bash -c "cmake . && make"

Now we can run the app

$ docker run --privileged -ti --rm -e DISPLAY=:0 -v /var/run/dbus:/var/run/dbus -v /tmp/.X11-unix:/tmp/.X11-unix -v pwd:/home/developer/ubports_build ubports_xenial bash -c "./src/app/webbrowser/webbrowser-app"

= Unit tests =

To run the unit tests, you can use the commands below:

$ make test
- or -
$ ctest

= Automated UI tests =

webbrowser-app uses autopilot (https://launchpad.net/autopilot) to test its UI. To run the tests locally, you will need to install python3-autopilot and autopilot-qt5. Then do the following:

$ cd tests/autopilot/
$ autopilot3 run webbrowser_app

You can get a list of all available tests with the following command:

$ autopilot3 list webbrowser_app

In order to run the tests in a virtual machine with an environment closer to what a user will get in Ubuntu Touch, see the Dep8 tests section.

= Code coverage =

To generate a report with detailed code coverage, you need to re-run cmake with "CMAKE_BUILD_TYPE=coverage":

$ cmake -DCMAKE_BUILD_TYPE=coverage .
$ make
$ make test
$ make coverage

This will generate a coverage report in XML format (coverage.xml) and an interactive human-readable report in HTML format (coveragereport/index.html).

= Dep8 tests =

Dep8 tests exercise the package "as-installed".

Currently, the webbrowser-app has one suite of dep8 tests that uses autopilot (https://launchpad.net/autopilot) to test from the point of view of the user.

To run the tests you will need autopkgtest:

$ sudo apt-get install autopkgtest

You can use multiple test beds to execute the tests. Below you will find instructions to run them in a virtual machine You can find more information with:

$ man adt-run

== Run dep8 tests ==

To run the tests in a qemu virtual machine, you will first have to create it (see /usr/share/doc/autopkgtest/README.running-tests.rst.gz). We output the image to ~/ rather than the current directory, so it will be in a safer place to avoid rebuilding images every time. You can store it in any directory you wish. This image is better consumed "fresh", building it daily will avoid long updates/upgrades when running the tests.

$ adt-buildvm-ubuntu-cloud -r $(lsb_release -c -s) -a amd64 -o ~/

Then run the tests using adt-run with the qemu virtualization host against the current archive.

$ adt-run -B -U --unbuilt-tree . \
-o ~/adt-browser-test/$(date +%Y-%m-%d-%H-%M) \
--- qemu ~/adt-$(lsb_release -c -s)-amd64-cloud.img

The tests can also be run on a local phone.

$ adt-run -B -U --unbuilt-tree . \
-o ~/adt-browser-test/$(date +%Y-%m-%d-%H-%M) \
--- ssh -s adb -- -p <password> --serial <ADB_SERIAL> 

== Examine the dep8 autopilot results ==

To examine the test results, which are in subunit format, additional tools are required, such as trv (https://launchpad.net/trv).

You can find the results file in the directory ~/adt-browser-test/$(date +%Y-%m-%d-%H-%M)/artifacts.

= Settings =

webbrowser-app supports a limited set of custom settings, persisted on disk in the following INI-like file:

$HOME/.config/webbrowser-app/webbrowser-app.conf

The following keys are supported:

  • 'homepage': a URL that the browser will open when launched if no URL is specified on the command line

  • 'searchengine': a custom search engine specification, looked up in $HOME/.local/share/webbrowser-app/searchengines/{value}.xml and following the OpenSearch document description format (http://www.opensearch.org/Specifications/OpenSearch/1.1)

  • restoreSession: whether to restore the previous browsing session at startup (defaults to true)

Releases

Packages

Used by

Contributors

Languages