645674c9bd
* For #4396 - Rename BookmarkInteractor methods Following the naming model used in other Interactors this too will use reactive method names in the form of "on..." instead of the previous imperative model. Kept the imperative naming model for the methods from `SelectionInteractor` as they are a new addition and I'm not sure about the future direction. * For #4396 - Add a BookmarkController It abstracts the Fragment behavior in a contract through which various Interactors can inform about the specific View changes and can ask for modifications in their container Fragment. This contract and it's implementation - `DefaultBookmarkController` are the result of extracting the container Fragment's business logic from `BookmarkFragmentInteractor` in it's own standalone component. * For #4396 - Refactored Bookmark related tests Added a new `BookmarkControllerTest` tests class which complements the new `BookmarkController` to ensure that it properly operates on `BookmarkFragment` Also refactored the existing `BookmarkFragmentInteractorTest` to accommodate `BookmarkFragmentInteractor`'s now more specialized behavior. |
||
---|---|---|
.github | ||
app | ||
architecture | ||
automation | ||
buildSrc | ||
certificates | ||
config | ||
docs | ||
fastlane | ||
gradle/wrapper | ||
.adjust_token | ||
.gitattributes | ||
.gitignore | ||
.taskcluster.yml | ||
CHANGELOG.md | ||
CODE_OF_CONDUCT.md | ||
Gemfile | ||
LICENSE | ||
README.md | ||
build.gradle | ||
codecov.yml | ||
debug.keystore | ||
gradle.properties | ||
gradlew | ||
gradlew.bat | ||
l10n.toml | ||
settings.gradle |
README.md
Firefox Preview
Firefox Preview (internal code name: "Fenix") is an all-new browser for Android, based on GeckoView and Mozilla Android Components.
Getting Involved
We encourage you to participate in this open source project. We love Pull Requests, Bug Reports, ideas, (security) code reviews or any other kind of positive contribution.
Before you attempt to make a contribution please read the Community Participation Guidelines.
-
Guide to Contributing (New contributors start here!)
-
View current Issues, view current Pull Requests, or file a security issue.
-
IRC: #fenix (irc.mozilla.org) | view logs (We're available Monday-Friday, GMT and PST working hours).
-
Localization happens on Pontoon. Please get in touch with delphine (at) mozilla (dot) com directly for more information.
Beginners! - Watch out for Issues with the "Good First Issue" label. These are easy bugs that have been left for first timers to have a go, get involved and make a positive contribution to the project!
Build Instructions
- Clone or Download the repository:
git clone https://github.com/mozilla-mobile/fenix
- Import the project into Android Studio or build on the command line:
./gradlew clean app:assembleArmDebug
- Make sure to select the correct build variant in Android Studio: armDebug for ARM x86Debug for X86
Pre-push hooks
To reduce review turn-around time, we'd like all pushes to run tests locally. We'd
recommend you use our provided pre-push hook in config/pre-push-recommended.sh
.
Using this hook will guarantee your hook gets updated as the repository changes.
This hook tries to run as much as possible without taking too much time.
To add it on Mac/Linux, run this command from the project root:
ln -s ../../config/pre-push-recommended.sh .git/hooks/pre-push
or for Windows run this command using the Command Prompt with administrative privileges:
mklink .git\hooks\pre-push ..\..\config\pre-push-recommended.sh
or using PowerShell:
New-Item -ItemType SymbolicLink -Path .git\hooks\pre-push -Value (Resolve-Path config\pre-push-recommended.sh)
To push without running the pre-push hook (e.g. doc updates):
git push <remote> --no-verify
License
This Source Code Form is subject to the terms of the Mozilla Public
License, v. 2.0. If a copy of the MPL was not distributed with this
file, You can obtain one at http://mozilla.org/MPL/2.0/