- Adding Browser selection.

- Adding URL history and autocomplete.
This commit is contained in:
Gunther Brunner
2014-04-22 16:51:16 +09:00
parent 78432bbaf4
commit f831596290
4 changed files with 72 additions and 17 deletions

View File

@@ -1,10 +1,46 @@
module.exports = function NavigationCtrl($scope) {
$scope.activeBrowser = null
var _ = require('lodash')
module.exports = function NavigationCtrl($scope) {
$scope.urlHistory = []
function addToHistory() {
const HISTORY_LIMIT = 20
var history = $scope.urlHistory
history.unshift($scope.textURL)
if (history.length > HISTORY_LIMIT) {
history.pop()
}
$scope.urlHistory = _.uniq(history)
}
function addHttp() {
if ($scope.textURL.indexOf(':') === -1) {
$scope.textURL = 'http://' + $scope.textURL
}
}
$scope.openURL = function () {
addHttp()
addToHistory()
$scope.openURL = function() {
return $scope.control.openBrowser(
$scope.textURL
, $scope.activeBrowser
$scope.textURL,
$scope.browser
)
}
$scope.clearHistory = function () {
$scope.urlHistory = []
}
$scope.hasHistory = function () {
return $scope.urlHistory.length > 0
}
$scope.insertURL = function ($url) {
$scope.textURL = $url
$scope.openURL()
}
}

View File

@@ -8,14 +8,8 @@
i.fa.fa-step-backward.pull-right(ng-click='back()', title='{{"Go Back"|translate}}', ng-if='$root.browser == "webview"')
.widget-content.padded
form
ul
li(ng-repeat='browser in device.browser.apps')
label
input(type='radio', ng-model='activeBrowser', ng-value='browser')
span {{ browser.type }}
.input-group
input(type='text', placeholder='http://...', autocomplete='off', ng-model='textURL',
input.form-control(type='text', placeholder='http://...', autocomplete='off', ng-model='textURL',
typeahead='url for url in urlHistory | filter:$viewValue').form-control
.input-group-btn
button(ng-click='openURL()', ng-disabled='!textURL', translate).btn.btn-primary-outline Open