diff options
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | Makefile | 19 | ||||
-rw-r--r-- | contexts/Makefile | 364 | ||||
-rw-r--r-- | contexts/README.md | 40 | ||||
-rw-r--r-- | contexts/build.mk | 280 | ||||
-rw-r--r-- | contexts/chrome/.gitignore | 1 | ||||
-rw-r--r-- | contexts/data/fiveui/firefox/bootstrap.js | 22 | ||||
-rw-r--r-- | doc/build.mk | 4 | ||||
-rw-r--r-- | exampleData/ruleSets/colorRules/backgroundCheck.js | 4 | ||||
-rw-r--r-- | exampleData/ruleSets/colorRules/foregroundCheck.js | 2 | ||||
-rw-r--r-- | src/js/chrome/background.html (renamed from contexts/data/fiveui/chrome/background.html) | 15 | ||||
-rw-r--r-- | src/js/chrome/build.mk | 48 | ||||
-rw-r--r-- | src/js/chrome/injected/platform-compute.js (renamed from contexts/data/fiveui/chrome/chrome-injected-compute.js) | 0 | ||||
-rw-r--r-- | src/js/chrome/injected/platform-ui.js (renamed from contexts/data/fiveui/chrome/chrome-injected-ui.js) | 0 | ||||
-rw-r--r-- | src/js/chrome/js/platform-ajax.js (renamed from contexts/data/fiveui/chrome/ajax.js) | 0 | ||||
-rw-r--r-- | src/js/chrome/js/platform-background.js (renamed from contexts/data/fiveui/chrome/background.js) | 12 | ||||
-rw-r--r-- | src/js/chrome/js/platform-options.js (renamed from contexts/data/fiveui/chrome/chrome-options.js) | 3 | ||||
-rw-r--r-- | src/js/chrome/js/platform-port.js (renamed from contexts/data/fiveui/chrome/chrome-port.js) | 0 | ||||
-rw-r--r-- | src/js/chrome/manifest.json (renamed from contexts/manifest.json) | 12 | ||||
-rw-r--r-- | src/js/firefox/build.mk | 102 | ||||
-rw-r--r-- | src/js/firefox/icons/fiveui-icon.html (renamed from contexts/data/fiveui/firefox/icon-content.html) | 0 | ||||
-rw-r--r-- | src/js/firefox/icons/fiveui-icon.js (renamed from contexts/data/fiveui/firefox/icon-script.js) | 0 | ||||
-rw-r--r-- | src/js/firefox/icons/options-icon.html (renamed from contexts/data/fiveui/firefox/options-icon.html) | 0 | ||||
-rw-r--r-- | src/js/firefox/icons/options-icon.js (renamed from contexts/data/fiveui/firefox/options-script.js) | 0 | ||||
-rw-r--r-- | src/js/firefox/injected/platform-compute.js (renamed from contexts/data/fiveui/firefox/firefox-injected-compute.js) | 0 | ||||
-rw-r--r-- | src/js/firefox/injected/platform-ui.js (renamed from contexts/data/fiveui/firefox/firefox-injected-ui.js) | 0 | ||||
-rw-r--r-- | src/js/firefox/js/platform-ajax.js | 8 | ||||
-rw-r--r-- | src/js/firefox/js/platform-options.js (renamed from contexts/data/fiveui/firefox/firefox-options.js) | 0 | ||||
-rw-r--r-- | src/js/firefox/lib/ajax.js (renamed from contexts/data/fiveui/firefox/ajax.js) | 5 | ||||
-rw-r--r-- | src/js/firefox/lib/main.js (renamed from contexts/data/fiveui/firefox/main.js) | 62 | ||||
-rw-r--r-- | src/js/firefox/lib/storage-wrapper.js (renamed from contexts/data/fiveui/firefox/storage.js) | 8 | ||||
-rw-r--r-- | src/js/firefox/lib/tabIds.js (renamed from contexts/data/fiveui/firefox/tabIds.js) | 20 | ||||
-rw-r--r-- | src/js/firefox/package.json (renamed from contexts/package.json) | 4 | ||||
-rw-r--r-- | src/js/firefox/test/test-main.js (renamed from contexts/data/fiveui/firefox/test/test-main.js) | 0 | ||||
-rw-r--r-- | src/js/fiveui/build.mk | 129 | ||||
-rw-r--r-- | src/js/fiveui/css/entry.css (renamed from contexts/data/fiveui/entry.css) | 0 | ||||
-rw-r--r-- | src/js/fiveui/css/options.css (renamed from contexts/data/fiveui/options.css) | 2 | ||||
-rw-r--r-- | src/js/fiveui/images/Gear_3.svg (renamed from contexts/data/fiveui/images/Gear_3.svg) | 0 | ||||
-rw-r--r-- | src/js/fiveui/images/attribution.txt (renamed from contexts/data/fiveui/images/attribution.txt) | 0 | ||||
-rw-r--r-- | src/js/fiveui/images/down-arrow.png (renamed from contexts/data/fiveui/images/down-arrow.png) | bin | 4791 -> 4791 bytes | |||
-rw-r--r-- | src/js/fiveui/images/down-arrow.svg (renamed from contexts/data/fiveui/images/down-arrow.svg) | 0 | ||||
-rw-r--r-- | src/js/fiveui/images/errorCircle.png (renamed from contexts/data/fiveui/images/errorCircle.png) | bin | 22950 -> 22950 bytes | |||
-rw-r--r-- | src/js/fiveui/images/fiveui-icon-128.png (renamed from contexts/data/fiveui/images/fiveui-icon-128.png) | bin | 4703 -> 4703 bytes | |||
-rw-r--r-- | src/js/fiveui/images/fiveui-icon-16.png (renamed from contexts/data/fiveui/images/fiveui-icon-16.png) | bin | 655 -> 655 bytes | |||
-rw-r--r-- | src/js/fiveui/images/fiveui-icon-48.png (renamed from contexts/data/fiveui/images/fiveui-icon-48.png) | bin | 1826 -> 1826 bytes | |||
-rw-r--r-- | src/js/fiveui/images/fiveui-icon-disabled.png (renamed from contexts/data/fiveui/images/fiveui-icon-disabled.png) | bin | 858 -> 858 bytes | |||
-rw-r--r-- | src/js/fiveui/images/fiveui-icon-enabled.png (renamed from contexts/data/fiveui/images/fiveui-icon-enabled.png) | bin | 900 -> 900 bytes | |||
-rw-r--r-- | src/js/fiveui/images/fiveui-icon-working.png (renamed from contexts/data/fiveui/images/fiveui-icon-working.png) | bin | 1107 -> 1107 bytes | |||
-rw-r--r-- | src/js/fiveui/images/right-arrow.png (renamed from contexts/data/fiveui/images/right-arrow.png) | bin | 4991 -> 4991 bytes | |||
-rw-r--r-- | src/js/fiveui/images/right-arrow.svg (renamed from contexts/data/fiveui/images/right-arrow.svg) | 0 | ||||
-rw-r--r-- | src/js/fiveui/images/warningTriangle.png (renamed from contexts/data/fiveui/images/warningTriangle.png) | bin | 21341 -> 21341 bytes | |||
-rw-r--r-- | src/js/fiveui/injected/compute.js (renamed from contexts/data/fiveui/injected/fiveui-injected-compute.js) | 4 | ||||
-rw-r--r-- | src/js/fiveui/injected/injected.css (renamed from contexts/data/fiveui/injected/injected.css) | 0 | ||||
-rw-r--r-- | src/js/fiveui/injected/jquery-plugins.js (renamed from contexts/data/fiveui/injected/jquery-plugins.js) | 0 | ||||
-rw-r--r-- | src/js/fiveui/injected/prelude.js (renamed from contexts/data/fiveui/injected/prelude.js) | 4 | ||||
-rw-r--r-- | src/js/fiveui/injected/ui.js (renamed from contexts/data/fiveui/injected/fiveui-injected-ui.js) | 0 | ||||
-rw-r--r-- | src/js/fiveui/js/background.js (renamed from contexts/data/fiveui/background.js) | 26 | ||||
-rw-r--r-- | src/js/fiveui/js/chan.js (renamed from contexts/data/fiveui/chan.js) | 0 | ||||
-rw-r--r-- | src/js/fiveui/js/entry.js (renamed from contexts/data/fiveui/entry.js) | 0 | ||||
-rw-r--r-- | src/js/fiveui/js/ffcheck.js (renamed from contexts/data/fiveui/ffcheck.js) | 0 | ||||
-rw-r--r-- | src/js/fiveui/js/messenger.js (renamed from contexts/data/fiveui/messenger.js) | 0 | ||||
-rw-r--r-- | src/js/fiveui/js/options.js (renamed from contexts/data/fiveui/options.js) | 0 | ||||
-rw-r--r-- | src/js/fiveui/js/rules.js (renamed from contexts/data/fiveui/rules.js) | 13 | ||||
-rw-r--r-- | src/js/fiveui/js/set.js (renamed from contexts/data/fiveui/set.js) | 0 | ||||
-rw-r--r-- | src/js/fiveui/js/settings.js (renamed from contexts/data/fiveui/settings.js) | 4 | ||||
-rw-r--r-- | src/js/fiveui/js/state.js (renamed from contexts/data/fiveui/state.js) | 0 | ||||
-rw-r--r-- | src/js/fiveui/js/update-manager.js (renamed from contexts/data/fiveui/update-manager.js) | 0 | ||||
-rw-r--r-- | src/js/fiveui/js/url-pat.js (renamed from contexts/data/fiveui/url-pat.js) | 0 | ||||
-rw-r--r-- | src/js/fiveui/js/utils.js (renamed from contexts/data/fiveui/utils.js) | 0 | ||||
-rw-r--r-- | src/js/fiveui/options.html (renamed from contexts/data/fiveui/options.html) | 23 | ||||
-rw-r--r-- | src/js/lib/backbone.js (renamed from contexts/data/lib/backbone.js) | 0 | ||||
-rwxr-xr-x | src/js/lib/jquery/css/ui-lightness/images/ui-bg_diagonals-thick_18_b81900_40x40.png (renamed from contexts/data/lib/jquery/css/ui-lightness/images/ui-bg_diagonals-thick_18_b81900_40x40.png) | bin | 260 -> 260 bytes | |||
-rwxr-xr-x | src/js/lib/jquery/css/ui-lightness/images/ui-bg_diagonals-thick_20_666666_40x40.png (renamed from contexts/data/lib/jquery/css/ui-lightness/images/ui-bg_diagonals-thick_20_666666_40x40.png) | bin | 251 -> 251 bytes | |||
-rwxr-xr-x | src/js/lib/jquery/css/ui-lightness/images/ui-bg_flat_10_000000_40x100.png (renamed from contexts/data/lib/jquery/css/ui-lightness/images/ui-bg_flat_10_000000_40x100.png) | bin | 178 -> 178 bytes | |||
-rwxr-xr-x | src/js/lib/jquery/css/ui-lightness/images/ui-bg_glass_100_f6f6f6_1x400.png (renamed from contexts/data/lib/jquery/css/ui-lightness/images/ui-bg_glass_100_f6f6f6_1x400.png) | bin | 104 -> 104 bytes | |||
-rwxr-xr-x | src/js/lib/jquery/css/ui-lightness/images/ui-bg_glass_100_fdf5ce_1x400.png (renamed from contexts/data/lib/jquery/css/ui-lightness/images/ui-bg_glass_100_fdf5ce_1x400.png) | bin | 153 -> 153 bytes | |||
-rwxr-xr-x | src/js/lib/jquery/css/ui-lightness/images/ui-bg_glass_65_ffffff_1x400.png (renamed from contexts/data/lib/jquery/css/ui-lightness/images/ui-bg_glass_65_ffffff_1x400.png) | bin | 105 -> 105 bytes | |||
-rwxr-xr-x | src/js/lib/jquery/css/ui-lightness/images/ui-bg_gloss-wave_35_f6a828_500x100.png (renamed from contexts/data/lib/jquery/css/ui-lightness/images/ui-bg_gloss-wave_35_f6a828_500x100.png) | bin | 4427 -> 4427 bytes | |||
-rwxr-xr-x | src/js/lib/jquery/css/ui-lightness/images/ui-bg_highlight-soft_100_eeeeee_1x100.png (renamed from contexts/data/lib/jquery/css/ui-lightness/images/ui-bg_highlight-soft_100_eeeeee_1x100.png) | bin | 90 -> 90 bytes | |||
-rwxr-xr-x | src/js/lib/jquery/css/ui-lightness/images/ui-bg_highlight-soft_75_ffe45c_1x100.png (renamed from contexts/data/lib/jquery/css/ui-lightness/images/ui-bg_highlight-soft_75_ffe45c_1x100.png) | bin | 129 -> 129 bytes | |||
-rwxr-xr-x | src/js/lib/jquery/css/ui-lightness/images/ui-icons_222222_256x240.png (renamed from contexts/data/lib/jquery/css/ui-lightness/images/ui-icons_222222_256x240.png) | bin | 4369 -> 4369 bytes | |||
-rwxr-xr-x | src/js/lib/jquery/css/ui-lightness/images/ui-icons_228ef1_256x240.png (renamed from contexts/data/lib/jquery/css/ui-lightness/images/ui-icons_228ef1_256x240.png) | bin | 4369 -> 4369 bytes | |||
-rwxr-xr-x | src/js/lib/jquery/css/ui-lightness/images/ui-icons_ef8c08_256x240.png (renamed from contexts/data/lib/jquery/css/ui-lightness/images/ui-icons_ef8c08_256x240.png) | bin | 4369 -> 4369 bytes | |||
-rwxr-xr-x | src/js/lib/jquery/css/ui-lightness/images/ui-icons_ffd27a_256x240.png (renamed from contexts/data/lib/jquery/css/ui-lightness/images/ui-icons_ffd27a_256x240.png) | bin | 4369 -> 4369 bytes | |||
-rwxr-xr-x | src/js/lib/jquery/css/ui-lightness/images/ui-icons_ffffff_256x240.png (renamed from contexts/data/lib/jquery/css/ui-lightness/images/ui-icons_ffffff_256x240.png) | bin | 4369 -> 4369 bytes | |||
-rwxr-xr-x | src/js/lib/jquery/css/ui-lightness/jquery-ui-1.9.2.custom.css (renamed from contexts/data/lib/jquery/css/ui-lightness/jquery-ui-1.9.2.custom.css) | 0 | ||||
-rwxr-xr-x | src/js/lib/jquery/css/ui-lightness/jquery-ui-1.9.2.custom.min.css (renamed from contexts/data/lib/jquery/css/ui-lightness/jquery-ui-1.9.2.custom.min.css) | 0 | ||||
l--------- | src/js/lib/jquery/css/ui-lightness/jquery-ui.css (renamed from contexts/data/lib/jquery/css/ui-lightness/jquery-ui.css) | 0 | ||||
-rwxr-xr-x | src/js/lib/jquery/jquery-1.8.3.js (renamed from contexts/data/lib/jquery/jquery-1.8.3.js) | 0 | ||||
-rwxr-xr-x | src/js/lib/jquery/jquery-ui-1.9.2.custom.js (renamed from contexts/data/lib/jquery/jquery-ui-1.9.2.custom.js) | 0 | ||||
-rwxr-xr-x | src/js/lib/jquery/jquery-ui-1.9.2.custom.min.js (renamed from contexts/data/lib/jquery/jquery-ui-1.9.2.custom.min.js) | 0 | ||||
l--------- | src/js/lib/jquery/jquery-ui.js (renamed from contexts/data/lib/jquery/jquery-ui.js) | 0 | ||||
l--------- | src/js/lib/jquery/jquery.js (renamed from contexts/data/lib/jquery/jquery.js) | 0 | ||||
-rw-r--r--[-rwxr-xr-x] | src/js/lib/md5.js (renamed from contexts/data/lib/jshash/md5.js) | 0 | ||||
-rw-r--r-- | src/js/lib/phantomjs_jasmine/jasmine-1.0.2/MIT.LICENSE (renamed from contexts/data/lib/phantomjs_jasmine/jasmine-1.0.2/MIT.LICENSE) | 0 | ||||
-rw-r--r-- | src/js/lib/phantomjs_jasmine/jasmine-1.0.2/jasmine-html.js (renamed from contexts/data/lib/phantomjs_jasmine/jasmine-1.0.2/jasmine-html.js) | 0 | ||||
-rw-r--r-- | src/js/lib/phantomjs_jasmine/jasmine-1.0.2/jasmine.css (renamed from contexts/data/lib/phantomjs_jasmine/jasmine-1.0.2/jasmine.css) | 0 | ||||
-rw-r--r-- | src/js/lib/phantomjs_jasmine/jasmine-1.0.2/jasmine.js (renamed from contexts/data/lib/phantomjs_jasmine/jasmine-1.0.2/jasmine.js) | 0 | ||||
-rw-r--r-- | src/js/lib/phantomjs_jasmine/jasmine-reporters/jasmine.phantomjs-reporter.js (renamed from contexts/data/lib/phantomjs_jasmine/jasmine-reporters/jasmine.phantomjs-reporter.js) | 0 | ||||
-rw-r--r-- | src/js/lib/phantomjs_jasmine/jasmine_favicon.png (renamed from contexts/data/lib/jasmine/jasmine_favicon.png) | bin | 905 -> 905 bytes | |||
-rw-r--r-- | src/js/lib/phantomjs_jasmine/phantomjs_jasminexml_runner.js (renamed from contexts/data/lib/phantomjs_jasmine/phantomjs_jasminexml_runner.js) | 0 | ||||
-rw-r--r-- | src/js/lib/phantomjs_jasmine/utils/core.js (renamed from contexts/data/lib/phantomjs_jasmine/utils/core.js) | 0 | ||||
-rw-r--r-- | src/js/lib/underscore.js (renamed from contexts/data/lib/underscore.js) | 0 | ||||
-rw-r--r-- | src/js/selenium/selenium-injected-compute.js (renamed from contexts/data/fiveui/selenium/selenium-injected-compute.js) | 0 | ||||
-rw-r--r-- | src/js/tests/.gitignore | 1 | ||||
-rw-r--r-- | src/js/tests/PhantomJSJasmineRunner.html (renamed from contexts/data/tests/PhantomJSJasmineRunner.html) | 16 | ||||
-rw-r--r-- | src/js/tests/README.md (renamed from contexts/data/tests/README.md) | 0 | ||||
-rw-r--r-- | src/js/tests/SpecRunner.html (renamed from contexts/data/tests/SpecRunner.html) | 26 | ||||
-rw-r--r-- | src/js/tests/build.mk | 18 | ||||
-rw-r--r-- | src/js/tests/jasmine/MIT.LICENSE (renamed from contexts/data/lib/jasmine/MIT.LICENSE) | 0 | ||||
-rw-r--r-- | src/js/tests/jasmine/boot.js (renamed from contexts/data/lib/jasmine/boot.js) | 0 | ||||
-rw-r--r-- | src/js/tests/jasmine/jasmine-html.js (renamed from contexts/data/lib/jasmine/jasmine-html.js) | 0 | ||||
-rw-r--r-- | src/js/tests/jasmine/jasmine.css (renamed from contexts/data/lib/jasmine/jasmine.css) | 0 | ||||
-rw-r--r-- | src/js/tests/jasmine/jasmine.js (renamed from contexts/data/lib/jasmine/jasmine.js) | 0 | ||||
-rw-r--r-- | src/js/tests/jasmine/jasmine_favicon.png (renamed from contexts/data/lib/phantomjs_jasmine/jasmine_favicon.png) | bin | 905 -> 905 bytes | |||
-rw-r--r-- | src/js/tests/mock-storage.js (renamed from contexts/data/tests/mock-storage.js) | 0 | ||||
-rw-r--r-- | src/js/tests/specs/messenger.js (renamed from contexts/data/tests/specs/messenger.js) | 0 | ||||
-rw-r--r-- | src/js/tests/specs/prelude.js (renamed from contexts/data/tests/specs/prelude.js) | 0 | ||||
-rw-r--r-- | src/js/tests/specs/rules.js (renamed from contexts/data/tests/specs/rules.js) | 0 | ||||
-rw-r--r-- | src/js/tests/specs/set.js (renamed from contexts/data/tests/specs/set.js) | 0 | ||||
-rw-r--r-- | src/js/tests/specs/settings.js (renamed from contexts/data/tests/specs/settings.js) | 0 | ||||
-rw-r--r-- | src/js/tests/specs/state.js (renamed from contexts/data/tests/specs/state.js) | 0 | ||||
-rw-r--r-- | src/js/tests/specs/utils.js (renamed from contexts/data/tests/specs/utils.js) | 0 |
123 files changed, 463 insertions, 839 deletions
@@ -11,3 +11,4 @@ fiveui.xpi contexts/data/tests/reports Config.mk +fiveui.pem @@ -59,7 +59,11 @@ clean:: # Subdirs ###################################################################### -$(eval $(call subdir,contexts)) +$(eval $(call subdir,src/js/fiveui)) +$(eval $(call subdir,src/js/chrome)) +$(eval $(call subdir,src/js/firefox)) +$(eval $(call subdir,src/js/tests)) + $(eval $(call subdir,profiles)) $(eval $(call subdir,doc)) @@ -92,16 +96,3 @@ test: fiveui.crx fiveui.xpi $(topdir)/profiles/chrome $(topdir)/profiles/firefox cd $(HEADLESS_DIR) && $(MVN_TEST_CMD) endif - - -# JS Unit Tests ############################################################### - -ifneq "$(PHANTOM_EXE)" "" - -test: test-js -test-js: - cd $(topdir)/contexts/data && $(PHANTOM_EXE) \ - lib/phantomjs_jasmine/phantomjs_jasminexml_runner.js \ - tests/PhantomJSJasmineRunner.html tests/reports/ - -endif diff --git a/contexts/Makefile b/contexts/Makefile deleted file mode 100644 index 530a3dc..0000000 --- a/contexts/Makefile +++ /dev/null @@ -1,364 +0,0 @@ -# Module : Makefile -# Copyright : (c) 2011-2012, Galois, Inc. -# -# Maintainer : -# Stability : Provisional -# Portability: Portable -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - - -# Entry Point ################################################################## - -.PHONY: all -all: compile package install ; - - -# Environment ################################################################## - -BUILD_ROOT := $(CURDIR) -REPO_ROOT := $(CURDIR)/.. -INSTALL_DIR := $(REPO_ROOT)/binaries - -ADDON_SDK := $(REPO_ROOT)/tools/addon-sdk -BUILD_DIR := $(REPO_ROOT)/build - -CHROME_DIR := $(BUILD_ROOT)/chrome -DATA_DIR := $(BUILD_ROOT)/data - -BIN_DIR := $(DATA_DIR)/target -FIVEUI_DATA_DIR := $(DATA_DIR)/fiveui -LIB_DIR := $(DATA_DIR)/lib - -MV := mv - -# FiveUI project Javascript sources -js_sources := $(wildcard $(FIVEUI_DATA_DIR)/*.js) - -# Namespaces, derived from the project sources. -js_namespaces := $(shell ./namespaces.awk $(js_sources)) - -# FiveUI project Javascript, known to contain application code, not library -# code. -js_app_sources := \ - $(FIVEUI_DATA_DIR)/options.js \ - $(FIVEUI_DATA_DIR)/firefox/firefox-options.js \ - $(FIVEUI_DATA_DIR)/chrome/chrome-options.js - -# Namespaces that are known to be just applications -js_app_namespaces := $(shell ./namespaces.awk $(js_app_sources)) - -# Namespaces that contain only library code -js_lib_namespaces := $(foreach ns,$(js_app_namespaces),\ - $(filter-out $(ns),$(js_namespaces))) - -# The path to the closure library -CLOSURE_LIB := $(DATA_DIR)/lib/closure-library - - -# Macros ####################################################################### - -# Generate a set of targets that will allow directory creation to be depended on -# by other targets. -# -# $1 - the directory name -define dir-exists -$1/.token: - mkdir $1 && touch $$@ -endef - -dir-dep = $1/.token - -# The ../../../../../ correpsonds to the relative path from -# goog/base.js to the context directory. -# -# $1 - The path (relative to BUILD_ROOT) to generate a root_with_prefix pair for -goog-relative = $(BUILD_ROOT)/$1 ../../../../../$1 - -# Remove the target of the current rule when the provided command exits on -# failure. -# -# $1 - The command to run -rm-on-failure = ( $1 || ($(RM) $@; exit 1) ) - -define profile -.PHONY: profile-$1 -profile-$1: $(REPO_ROOT)/profiles/$1/.token - -$(REPO_ROOT)/profiles/$1/.token: $(REPO_ROOT)/profiles/$1.tar - $(MAKE) -C $(REPO_ROOT)/profiles $1 - -.PHONY: clean-profile-$1 -clean-profile-$1: - $(MAKE) -C $(REPO_ROOT)/profiles clean-$1 - -clean: clean-profile-$1 -endef - -# General Targets ############################################################## - -.PHONY: compile -compile: - -.PHONY: package -package: - -.PHONY: install -install: - -.PHONY: clean -clean: - -# Print out the value of a variable, useful for debugging. -print-%: - @echo "$* = $($*)" - -# BIN_DIR management -$(eval $(call dir-exists,$(BIN_DIR))) - -clean: clean-BIN_DIR - -.PHONY: clean-BIN_DIR -clean-BIN_DIR: - @echo "Cleaning $(BIN_DIR)" - $(RM) -r $(BIN_DIR) - - -# CSS Utilities ################################################################ - -css_bundle := $(BUILD_DIR)/css-bundle.py - -# The jquery-ui css, in a form that has its image dependencies compiled in as -# base-64 encoded data. -$(BIN_DIR)/bundled.css: $(call dir-dep,$(BIN_DIR)) - cd $(LIB_DIR)/jquery/css/ui-lightness/ && \ - $(css_bundle) jquery-ui.css $@ - -# The injected css, with its images compiled in. -$(BIN_DIR)/injected.css: $(call dir-dep,$(BIN_DIR)) \ - $(FIVEUI_DATA_DIR)/injected/injected.css - cd $(FIVEUI_DATA_DIR)/injected && \ - $(css_bundle) injected.css $@ - - -# Javascript Utilities ######################################################### - -cl_linter := $(BUILD_DIR)/closure-linter -#cl_compiler := $(BUILD_DIR)/closure-compiler -#cl_typecheck := $(BUILD_DIR)/closure-typechecker - -# Files to ignore when running the linter -lint_excludes := lib/jquery.js - -# Run the linter over the project javascript sources. -.PHONY: lint -lint: - find data/fiveui -name "*.js" | xargs $(cl_linter) --strict --exclude_files=$(lint_excludes) - -closurebuilder := $(CLOSURE_LIB)/closure/bin/build/closurebuilder.py \ - --root=$(CLOSURE_LIB) --root=$(FIVEUI_DATA_DIR) \ - --compiler_jar=$(REPO_ROOT)/tools/closure_compiler/compiler.jar \ - --compiler_flags="--jscomp_error=checkTypes" - -# Typecheck all the project javascript source. -.PHONY: typecheck -typecheck: $(js_sources) - $(closurebuilder) --output_file=$(BIN_DIR)/trash.out --output_mode=compiled \ - $(foreach ns,$(js_namespaces),--namespace=$(ns)) && \ - $(RM) $(BIN_DIR)/trash.out - - -depswriter := /usr/bin/env $(CLOSURE_LIB)/closure/bin/build/depswriter.py - -# The dependency graph for the project javascript. -$(BIN_DIR)/deps.js: $(call dir-dep,$(BIN_DIR)) $(js_sources) - $(depswriter) --root_with_prefix="$(call goog-relative,data/fiveui)" \ - --output_file=$@ - -.PHONY: deps -deps: $(BIN_DIR)/deps.js; - -compile: deps - -closure-js := $(CLOSURE_LIB)/closure/bin/build/closurebuilder.py \ - --root=$(CLOSURE_LIB) \ - --root=$(FIVEUI_DATA_DIR) \ - --compiler_jar=$(REPO_ROOT)/tools/closure_compiler/compiler.jar \ - --compiler_flags="--accept_const_keyword" \ - --compiler_flags="--formatting=PRETTY_PRINT" \ - --output_mode="compiled" - -compile-js := $(BUILD_ROOT)/compile-js.sh --output_mode=script - -# Chrome Compilation ########################################################### - -CHROME_OPTS := --pack-extension=$(BIN_DIR)/src \ - --pack-extension-key=$(BIN_DIR)/fiveui.pem - -compile: compile-chrome - -CHROME_TARGETS := $(BIN_DIR)/chrome-background.js $(BIN_DIR)/bundled.css \ - $(BIN_DIR)/chrome-options.js $(BIN_DIR)/injected.css - -.PHONY: compile-chrome -compile-chrome: $(CHROME_TARGETS) - -# Build the compiled chrome backend script. -$(BIN_DIR)/chrome-background.js: $(call dir-dep,$(BIN_DIR)) $(js_sources) - $(call rm-on-failure,$(compile-js) --namespace=fiveui.chrome.background > $@) - -# Build the compiled options script. -$(BIN_DIR)/chrome-options.js: $(call dir-dep,$(BIN_DIR)) $(js_sources) - $(call rm-on-failure,$(compile-js) \ - --namespace=fiveui.chrome.options.init > $@) - -# Clean chrome extension build artifacts. -.PHONY: clean-chrome -clean-chrome: - @echo Cleaning Chrome extension... - $(RM) fiveui.crx - -clean: clean-chrome - - -# Firefox Compilation ########################################################## - -# Sources the correct environment before invoking the cfx command. -# -# $1 - The desired arguments to the cfx command. -cfx = ( cd $(ADDON_SDK) > /dev/null && \ - . bin/activate > /dev/null && \ - cd - > /dev/null && \ - cfx $1) - -.PHONY: firefox -firefox: package-firefox - -$(eval $(call profile,firefox)) - -compile: compile-firefox - -FIREFOX_TARGETS := profile-firefox $(BIN_DIR)/firefox-main.js \ - $(BIN_DIR)/bundled.css $(BIN_DIR)/firefox-options.js \ - $(BIN_DIR)/injected.css - -.PHONY: compile-firefox -compile-firefox: $(FIREFOX_TARGETS) - -$(BIN_DIR)/fiveui.js: $(call dir-dep,$(BIN_DIR)) $(js_sources) - $(call rm-on-failure,$(compile-js) \ - $(foreach ns,$(js_lib_namespaces), --namespace=$(ns)) > $@) - echo 'exports.fiveui = fiveui;' >> $@ - -$(BIN_DIR)/firefox-main.js: $(call dir-dep,$(BIN_DIR)) $(js_sources) - $(call rm-on-failure,$(compile-js) --namespace=fiveui.firefox.main > $@) - - -# TODO: remove 2 lines below, duplicate of above? -# compile with the closure compiler instead of the script output mode -# $(call rm-on-failure,$(closure-js) --namespace=fiveui.firefox.main > $@) - -# Build the compiled options script. -$(BIN_DIR)/firefox-options.js: $(call dir-dep,$(BIN_DIR)) $(js_sources) - $(call rm-on-failure,$(compile-js) \ - --namespace=fiveui.firefox.options.init > $@) - -# Use the cfx command to debug a firefox extension. -.PHONY: run-firefox -run-firefox: $(FIREFOX_TARGETS) - @echo Running Firefox extension... - $(call cfx,run -p $(REPO_ROOT)/profiles/firefox) - -# Use the cfx command to debug a firefox extension. -.PHONY: test-firefox -test-firefox: $(FIREFOX_TARGETS) $(BIN_DIR)/fiveui.js - @echo Testing Firefox extension... - $(call cfx,test -v -p $(REPO_ROOT)/profiles/firefox) - -# Clean firefox extension build artifacts. -.PHONY: clean-firefox -clean-firefox: - @echo Cleaning Firefox extension... - rm -rf profile - -clean: clean-firefox - - -# Package Staging ############################################################## - -STAGE_DIR := $(BUILD_ROOT)/stage - -$(eval $(call dir-exists,$(STAGE_DIR))) - -define copy-dir -mkdir -p $(STAGE_DIR)/$(dir $1) -cp -r $(BUILD_ROOT)/$1 $(STAGE_DIR)/$(dir $1) -endef - -PACKAGE_SPECS := $(addprefix $(BUILD_ROOT)/,manifest.json package.json) - -.PHONY: stage -stage: $(call dir-dep,$(STAGE_DIR)) compile $(PACKAGE_SPECS) - $(call copy-dir,data/target) - $(call copy-dir,data/fiveui) - $(call copy-dir,data/lib) - cp $(PACKAGE_SPECS) $(STAGE_DIR) - -.PHONY: clean-stage -clean-stage: - $(RM) -r $(STAGE_DIR) -clean: clean-stage - - -# CRX Generation ############################################################### - -MAKE_CRX := $(BUILD_DIR)/makecrx - -$(BUILD_ROOT)/fiveui.crx: stage - $(MAKE_CRX) $(STAGE_DIR) $(CHROME_DIR)/fiveui.pem fiveui - -.PHONY: clean-crx -clean-crx: - $(RM) $(BUILD_ROOT)/fiveui.crx -clean: clean-crx - -.PHONY: package-chrome -package-chrome: $(BUILD_ROOT)/fiveui.crx -package: package-chrome - - -# XPI Generation ############################################################### - -$(BUILD_ROOT)/fiveui.xpi: stage - $(call cfx,xpi \ - -p $(REPO_ROOT)/profiles/firefox \ - --pkgdir=$(STAGE_DIR)) - -.PHONY: run-firefox-staged -run-firefox-staged: stage - $(call cfx,run -p $(REPO_ROOT)/profiles/firefox \ - --pkgdir=$(STAGE_DIR)) - -.PHONY: clean-xpi -clean-xpi: - $(RM) $(BUILD_ROOT)/fiveui.xpi -clean: clean-xpi - -.PHONY: package-firefox -package-firefox: $(BUILD_ROOT)/fiveui.xpi ; -package: package-firefox - -# Installation ################################################################# - -install: - $(MV) $(BUILD_ROOT)/fiveui.{crx,xpi} $(INSTALL_DIR) diff --git a/contexts/README.md b/contexts/README.md deleted file mode 100644 index 0f1a6c2..0000000 --- a/contexts/README.md +++ /dev/null @@ -1,40 +0,0 @@ -# FiveUI - -FiveUI is an extensible tool for evaluating HTML user interfaces -against sets of codified UI Guidelines. - -## Installation and getting started - -FiveUI is a basic browser extension with support for Firefox and -Google Chrome. If you're familiar with browser extensions, you can -quickly install FiveUI from the binaries: - - - Chrome: [fiveui.crx](http://galoisinc.github.com/FiveUI/binaries/fiveui.crx) - - FireFox: [fiveui.xpi](http://galoisinc.github.com/FiveUI/binaries/fiveui.xpi) - -The [Installation Guide](doc/manual_src/install.md) describes the -installation process for Firefox and Google Chrome. - -After you've installed FiveUI, take a look at the [Getting Started -Guide](doc/manual_src/gettingStarted.md) to learn about Rule Sets and -setting URL Patterns to match web sites to codified guidelines. - -## Building FiveUI - -Most (if not all) the FiveUI dependencies are included in the -repository, so building FiveUI should be as simple as running: - - $ make - -In the top-level FiveUI repository root. On success, this will put -the generated extensions in the repository root. - -### Chrome signing key - -Note that you will need to first place a Chrome key in: - - chrome\fiveui.pem - -before the chrome extension will build successfully. - - diff --git a/contexts/build.mk b/contexts/build.mk deleted file mode 100644 index 0e55997..0000000 --- a/contexts/build.mk +++ /dev/null @@ -1,280 +0,0 @@ - -# Source Info ################################################################## - -# source and resources -data-dir := $(path)/data - -# fiveui source directory -fiveui-dir := $(data-dir)/fiveui - -lib-dir := $(data-dir)/lib - -# packaged extension directory -bin-dir := $(data-dir)/target - - -# Extension Staging ############################################################ -# -# The purpose of this step is to setup all the compiled scripts necessary for -# both plugins in a common tree. From this state, we can pick and choose what -# goes into each extension. - -stage-dir := $(build-dir)/stage -target-dir := $(stage-dir)/data/target - -define stage-files-from -$(stage-dir)/$1/$2: | $(stage-dir)/$1 - $$(call cmd,mkdir) - -$(stage-dir)/$1/$2/%: $(path)/$1/$2/% | $(stage-dir)/$1/$2 - $$(call cmd,cp) -endef - -$(eval $(call stage-files-from,data/fiveui,images)) -$(eval $(call stage-files-from,data/fiveui,chrome)) -$(eval $(call stage-files-from,data/fiveui,injected)) -$(eval $(call stage-files-from,data/lib,codemirror)) -$(eval $(call stage-files-from,data/lib,jquery)) -$(eval $(call stage-files-from,data/lib,jshash)) - - - -$(eval $(call stage-files-from,data/fiveui/firefox,test)) -$(eval $(call stage-files-from,data/fiveui,firefox)) - -$(eval $(call stage-files-from,data,fiveui)) -$(eval $(call stage-files-from,data,lib)) - - -$(target-dir): | $(stage-dir)/data - $(call cmd,mkdir) - -$(stage-dir)/data: | $(stage-dir) - $(call cmd,mkdir) - -$(stage-dir): | $(build-dir) - $(call cmd,mkdir) - - -stage-path = $(patsubst $(path)/%,$(stage-dir)/%,$1) -stage-all = $(call stage-path,$(wildcard $(path)/$1/*)) - - -# Javascript "Compilation" ##################################################### -# -# In order to turn a number of different javascript modules into a single one, -# we just concatenate them all together. This should be fine, as all of the -# modules we define just provide functions, or register callbacks. - -quiet_cmd_compilejs = JSC $(call drop-prefix,$@) - cmd_compilejs = cat $^ > $@ - -# generic background script dependencies -background-deps := \ - $(addprefix $(fiveui-dir)/, \ - set.js \ - background.js \ - url-pat.js \ - settings.js \ - messenger.js \ - state.js \ - rules.js) - -# generic options page dependencies -options-deps := $(addprefix $(fiveui-dir)/,\ - settings.js \ - chan.js \ - messenger.js \ - options.js \ - update-manager.js \ - utils.js \ - entry.js \ - rules.js \ - url-pat.js ) - - -# CSS Staging ################################################################## - -css-bundle := $(topdir)/tools/bin/css-bundle.py - -quiet_cmd_cssbundle = CSSC $(call drop-prefix,$@) - cmd_cssbundle = ( cd $(dir $(TARGET)) && \ - $(css-bundle) $(notdir $(TARGET)) $@ $(redir) ) - -$(stage-dir)/data/target/bundled.css: TARGET := $(lib-dir)/jquery/css/ui-lightness/jquery-ui.css -$(stage-dir)/data/target/bundled.css: \ - $(wildcard $(lib-dir)/jquery/css/ui-lightness/*.css) \ - $(wildcard $(lib-dir)/jquery/css/ui-lightness/images/*.png) \ - | $(stage-dir)/data - $(call cmd,cssbundle) - -$(stage-dir)/data/target/injected.css: TARGET := $(fiveui-dir)/injected/injected.css -$(stage-dir)/data/target/injected.css: \ - $(fiveui-dir)/injected/injected.css \ - $(fiveui-dir)/images/errorCircle.png \ - $(fiveui-dir)/images/warningTriangle.png \ - $(fiveui-dir)/images/right-arrow.png \ - $(fiveui-dir)/images/down-arrow.png \ - | $(stage-dir)/data/target - $(call cmd,cssbundle) - - - -# Both Extensions ############################################################## - -jquery := $(addprefix $(path)/data/lib/jquery/,\ - jquery-1.8.3.js \ - jquery-ui-1.9.2.custom.js) - -$(stage-dir)/data/underscore.js: $(lib-dir)/underscore.js - $(call cmd,cp) - -$(stage-dir)/data/backbone.js: $(lib-dir)/backbone.js - $(call cmd,cp) - -all: $(stage-dir)/data/fiveui/options.html \ - $(stage-dir)/data/fiveui/options.css \ - $(stage-dir)/data/fiveui/entry.css \ - $(stage-dir)/data/fiveui/ffcheck.js \ - $(stage-dir)/data/target/injected.css \ - $(stage-dir)/data/target/bundled.css \ - $(call stage-all,data/fiveui/images) \ - $(call stage-all,data/lib/codemirror) \ - $(call stage-path,$(jquery)) \ - $(call stage-all,data/lib/jshash) \ - $(stage-dir)/data/fiveui/injected/prelude.js \ - $(stage-dir)/data/fiveui/injected/jquery-plugins.js \ - $(stage-dir)/data/fiveui/injected/fiveui-injected-compute.js \ - $(stage-dir)/data/fiveui/injected/fiveui-injected-ui.js \ - $(stage-dir)/data/underscore.js \ - $(stage-dir)/data/backbone.js - -# Chrome Extension ############################################################# -# -# Use the staged artifacts to build the chrome extension in contexts/fiveui.crx - -chrome-dir := $(path)/chrome - -all: $(topdir)/fiveui.crx - -clean:: - $(RM) $(topdir)/fiveui.crx - -$(topdir)/fiveui.crx: $(build-dir)/fiveui.crx - $(call cmd,cp) - -# Create the chrome extension -$(build-dir)/fiveui.crx: \ - $(target-dir)/chrome-background.js \ - $(target-dir)/chrome-options.js \ - $(stage-dir)/manifest.json \ - $(stage-dir)/data/fiveui/chrome/background.html \ - $(stage-dir)/data/fiveui/chrome/chrome-port.js \ - $(stage-dir)/data/fiveui/chrome/chrome-injected-compute.js \ - $(stage-dir)/data/fiveui/chrome/chrome-injected-ui.js - $(call label,MAKECRX $(call drop-prefix,$@)) ( cd $(build-dir) \ - && $(topdir)/tools/bin/makecrx stage \ - $(topdir)/contexts/chrome/fiveui.pem fiveui \ - $(redir) ) - - -# install the extension manifest in the stage directory -$(stage-dir)/manifest.json: $(path)/manifest.json | $(stage-dir) - $(call cmd,cp) - -chrome-src := $(fiveui-dir)/chrome - -# the chrome-specific background javascript -$(target-dir)/chrome-background.js: $(background-deps) \ - $(chrome-src)/background.js \ - $(chrome-src)/chrome-port.js \ - | $(target-dir) - $(call cmd,compilejs) - - -# the chrome-specific options javascript -$(target-dir)/chrome-options.js: $(options-deps) \ - $(chrome-src)/ajax.js \ - $(chrome-src)/chrome-options.js \ - | $(target-dir) - $(call cmd,compilejs) - - -# Firefox Compilation ########################################################## - -firefox-dir := $(fiveui-dir)/firefox - -addon-sdk := $(topdir)/tools/addon-sdk - -all: $(topdir)/fiveui.xpi - -clean:: - $(RM) $(topdir)/fiveui.xpi - -$(topdir)/fiveui.xpi: $(build-dir)/fiveui.xpi - $(call cmd,cp) - - -# wrapper for setting up the environment for the running the cfx command -cfx = ( cd $(addon-sdk) $(redir) && \ - . bin/activate $(redir) && \ - cd $1 $(redir) && \ - cfx $2 $(redir) ) - -run-firefox: $(build-dir)/fiveui.xpi - $(call cfx,$(stage-dir),run) - -test-firefox: $(build-dir)/fiveui.xpi \ - $(stage-dir)/data/fiveui/firefox/test \ - $(call stage-all,data/fiveui/firefox/test) \ - | $(topdir)/profiles/firefox - $(call cfx,$(stage-dir),test -v -p $(topdir)/profiles/firefox) - -# build the actual extension -$(build-dir)/fiveui.xpi: \ - $(stage-dir)/package.json \ - $(target-dir)/firefox-main.js \ - $(target-dir)/firefox-options.js \ - $(call stage-path,$(path)/data/fiveui/firefox/firefox-injected-compute.js) \ - $(call stage-path,$(path)/data/fiveui/firefox/firefox-injected-ui.js) \ - $(call stage-path,$(path)/data/fiveui/firefox/icon-content.html) \ - $(call stage-path,$(path)/data/fiveui/firefox/icon-script.js) \ - $(call stage-path,$(path)/data/fiveui/firefox/options-icon.html) \ - $(call stage-path,$(path)/data/fiveui/firefox/options-script.js) \ - $(call stage-path,$(path)/data/fiveui/firefox/firefox-options.js) \ - | $(topdir)/profiles/firefox - $(call label,XPI $(call drop-prefix,$@))\ - $(call cfx,$(build-dir),xpi -p $(topdir)/profiles/firefox \ - --pkgdir=$(stage-dir) ) - -# stage the package description -$(stage-dir)/package.json: $(path)/package.json | $(stage-dir) - $(call cmd,cp) - -# build the main script -$(target-dir)/firefox-main.js: \ - $(firefox-dir)/main.js \ - $(firefox-dir)/storage.js \ - $(firefox-dir)/tabIds.js \ - $(firefox-dir)/ajax.js \ - $(fiveui-dir)/settings.js \ - $(fiveui-dir)/messenger.js \ - $(fiveui-dir)/rules.js \ - $(fiveui-dir)/background.js \ - $(fiveui-dir)/utils.js \ - $(fiveui-dir)/set.js \ - $(fiveui-dir)/state.js \ - $(fiveui-dir)/url-pat.js \ - | $(target-dir) - $(call cmd,compilejs) - - -# the chrome-specific options javascript -$(target-dir)/firefox-options.js: \ - $(lib-dir)/jquery/jquery-1.8.3.js \ - $(lib-dir)/underscore.js \ - $(lib-dir)/backbone.js \ - $(options-deps) \ - $(firefox-dir)/firefox-options.js \ - | $(target-dir) - $(call cmd,compilejs) diff --git a/contexts/chrome/.gitignore b/contexts/chrome/.gitignore deleted file mode 100644 index 3fe6a20..0000000 --- a/contexts/chrome/.gitignore +++ /dev/null @@ -1 +0,0 @@ -fiveui.pem diff --git a/contexts/data/fiveui/firefox/bootstrap.js b/contexts/data/fiveui/firefox/bootstrap.js deleted file mode 100644 index e7f0b34..0000000 --- a/contexts/data/fiveui/firefox/bootstrap.js +++ /dev/null @@ -1,22 +0,0 @@ -/* - * Module : firefox/bootstrap.js - * Copyright : (c) 2011-2012, Galois, Inc. - * - * Maintainer : - * Stability : Provisional - * Portability: Portable - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -var fiveui = fiveui || {}; diff --git a/doc/build.mk b/doc/build.mk index f62ef54..f628a6c 100644 --- a/doc/build.mk +++ b/doc/build.mk @@ -60,7 +60,7 @@ $(eval $(call stage-doc-dir,$(path)/images)) doc: $(jsdoc-dir)/index.html $(jsdoc-dir)/index.html: \ - $(topdir)/contexts/data/fiveui/injected/prelude.js \ - $(topdir)/contexts/data/fiveui/injected/jquery-plugins.js \ + $(topdir)/src/js/fiveui/injected/prelude.js \ + $(topdir)/src/js/fiveui/injected/jquery-plugins.js \ | $(build-dir) $(call label,JSDOC)$(topdir)/tools/bin/jsdoc $^ $(redir) diff --git a/exampleData/ruleSets/colorRules/backgroundCheck.js b/exampleData/ruleSets/colorRules/backgroundCheck.js index 4ce7043..98df08c 100644 --- a/exampleData/ruleSets/colorRules/backgroundCheck.js +++ b/exampleData/ruleSets/colorRules/backgroundCheck.js @@ -8,11 +8,11 @@ exports.description = exports.rule = function() { var allow = '#00 #FF #3D #F7 #C2 #B4 #4E'.split(' '); - report("broken"); + this.report("broken"); $5(':visible') .cssIsNot('background-color', allow, fiveui.color.colorToHex) .each(function(i, elt) { var color = fiveui.color.colorToHex($(elt).css('background-color')); - report('non-standard background color: ' + color, $(elt)); + this.report('non-standard background color: ' + color, $(elt)); }); }; diff --git a/exampleData/ruleSets/colorRules/foregroundCheck.js b/exampleData/ruleSets/colorRules/foregroundCheck.js index 5b1e04b..2cf2b5f 100644 --- a/exampleData/ruleSets/colorRules/foregroundCheck.js +++ b/exampleData/ruleSets/colorRules/foregroundCheck.js @@ -11,6 +11,6 @@ exports.rule = function() { .cssIsNot('color', allow, fiveui.color.colorToHex) .each(function(i, elt) { var color = fiveui.color.colorToHex($(elt).css('color')); - report('foreground color: ' + color, elt); + this.report('foreground color: ' + color, elt); }); }; diff --git a/contexts/data/fiveui/chrome/background.html b/src/js/chrome/background.html index ea90678..8ca54fd 100644 --- a/contexts/data/fiveui/chrome/background.html +++ b/src/js/chrome/background.html @@ -22,10 +22,17 @@ <html> <head> <title>Background Page</title> - <script src="../../lib/jquery/jquery-1.8.3.js"></script> - <script src="../../underscore.js"></script> - <script src="../../backbone.js"></script> - <script src="../../target/chrome-background.js"></script> + <script src="underscore.js"></script> + <script src="backbone.js"></script> + <script src="js/set.js"></script> + <script src="js/background.js"></script> + <script src="js/url-pat.js"></script> + <script src="js/settings.js"></script> + <script src="js/messenger.js"></script> + <script src="js/state.js"></script> + <script src="js/rules.js"></script> + <script src="js/platform-port.js"></script> + <script src="js/platform-background.js"></script> </head> <body/> </html> diff --git a/src/js/chrome/build.mk b/src/js/chrome/build.mk new file mode 100644 index 0000000..b93cc6f --- /dev/null +++ b/src/js/chrome/build.mk @@ -0,0 +1,48 @@ + + +# Chrome Extension ############################################################# + +all: $(build-dir)/fiveui.crx + +chrome-dir := $(path) + +chrome-build := $(build-dir)/chrome + + +# Generic Extension Parts ###################################################### + +# pull in the base fiveui extension +$(eval $(call stage-fiveui,$(chrome-build),$(build-dir)/fiveui.crx)) + + +# Chrome File Staging ########################################################## + +# copy over scripts from the chrome extension +$(chrome-build)/data/js/%: $(chrome-dir)/js/% | $(chrome-build)/data/js + $(call cmd,cp) + +$(chrome-build)/data/injected/%: $(chrome-dir)/injected/% | $(chrome-build)/data/injected + $(call cmd,cp) + +$(chrome-build)/data/%: $(chrome-dir)/% | $(chrome-build)/data + $(call cmd,cp) + +$(chrome-build)/%: $(chrome-dir)/% | $(chrome-build) + $(call cmd,cp) + +$(chrome-build): | $(build-dir) + $(call cmd,mkdir) + + +# Packaging #################################################################### + +# generate the executable after copying over all files +$(build-dir)/fiveui.crx: $(chrome-build)/manifest.json \ + $(chrome-build)/data/background.html \ + $(chrome-build)/data/js/platform-port.js \ + $(chrome-build)/data/js/platform-background.js \ + | $(chrome-build) + $(call label,MAKECRX $(call drop-prefix,$@)) ( cd $(build-dir) \ + && $(topdir)/tools/bin/makecrx $(chrome-build) \ + $(topdir)/fiveui.pem fiveui \ + $(redir) ) diff --git a/contexts/data/fiveui/chrome/chrome-injected-compute.js b/src/js/chrome/injected/platform-compute.js index a372913..a372913 100644 --- a/contexts/data/fiveui/chrome/chrome-injected-compute.js +++ b/src/js/chrome/injected/platform-compute.js diff --git a/contexts/data/fiveui/chrome/chrome-injected-ui.js b/src/js/chrome/injected/platform-ui.js index 939a62d..939a62d 100644 --- a/contexts/data/fiveui/chrome/chrome-injected-ui.js +++ b/src/js/chrome/injected/platform-ui.js diff --git a/contexts/data/fiveui/chrome/ajax.js b/src/js/chrome/js/platform-ajax.js index 68ced39..68ced39 100644 --- a/contexts/data/fiveui/chrome/ajax.js +++ b/src/js/chrome/js/platform-ajax.js diff --git a/contexts/data/fiveui/chrome/background.js b/src/js/chrome/js/platform-background.js index 7f74a33..6ffecf8 100644 --- a/contexts/data/fiveui/chrome/background.js +++ b/src/js/chrome/js/platform-background.js @@ -40,11 +40,11 @@ fiveui.chrome.background = function() { * @return {void} */ var loadScripts = function(tabid, inScripts, inFrames) { - var chromeScripts = [dataLoader('fiveui/chrome/chrome-port.js')]; + var chromeScripts = [dataLoader('js/platform-port.js')]; if(inFrames) { - chromeScripts.push(dataLoader('fiveui/chrome/chrome-injected-compute.js')); + chromeScripts.push(dataLoader('injected/platform-compute.js')); } else { - chromeScripts.push(dataLoader('fiveui/chrome/chrome-injected-ui.js')); + chromeScripts.push(dataLoader('injected/platform-ui.js')); } var scripts = _.flatten([chromeScripts, inScripts]); @@ -108,9 +108,9 @@ fiveui.chrome.background = function() { var updateWidget = function(tabState) { if(null == tabState) { - setIcon('../images/fiveui-icon-disabled.png'); + setIcon('images/fiveui-icon-disabled.png'); } else { - setIcon('../images/fiveui-icon-enabled.png'); + setIcon('images/fiveui-icon-enabled.png'); updateIconText(tabState); } }; @@ -160,6 +160,6 @@ fiveui.chrome.background = function() { // Add event listeners once the DOM has fully loaded by listening for the // `DOMContentLoaded` event on the document, and adding your listeners to // specific elements when it triggers. -jQuery(fiveui.chrome.background); +fiveui.chrome.background(); })(); diff --git a/contexts/data/fiveui/chrome/chrome-options.js b/src/js/chrome/js/platform-options.js index 9abccea..b049122 100644 --- a/contexts/data/fiveui/chrome/chrome-options.js +++ b/src/js/chrome/js/platform-options.js @@ -42,4 +42,7 @@ _.extend(fiveui.chrome.options, { } }); +// run the init function when the page loads +jQuery(fiveui.chrome.options.init); + })(); diff --git a/contexts/data/fiveui/chrome/chrome-port.js b/src/js/chrome/js/platform-port.js index 8a5aeae..8a5aeae 100644 --- a/contexts/data/fiveui/chrome/chrome-port.js +++ b/src/js/chrome/js/platform-port.js diff --git a/contexts/manifest.json b/src/js/chrome/manifest.json index 584f5d0..9202276 100644 --- a/contexts/manifest.json +++ b/src/js/chrome/manifest.json @@ -5,20 +5,20 @@ "version": "0.2", "description": "UI Constraint Checker", - "icons": { "16": "data/fiveui/images/fiveui-icon-16.png", - "48": "data/fiveui/images/fiveui-icon-48.png", - "128": "data/fiveui/images/fiveui-icon-128.png" + "icons": { "16": "data/images/fiveui-icon-16.png", + "48": "data/images/fiveui-icon-48.png", + "128": "data/images/fiveui-icon-128.png" }, "background": { "persistent": true, - "page": "data/fiveui/chrome/background.html" + "page": "data/background.html" }, - "options_page": "data/fiveui/options.html", + "options_page": "data/options.html", "browser_action": { - "default_icon": "data/fiveui/images/fiveui-icon-disabled.png", + "default_icon": "data/images/fiveui-icon-disabled.png", "default_title": "Five UI" }, "permissions": [ diff --git a/src/js/firefox/build.mk b/src/js/firefox/build.mk new file mode 100644 index 0000000..4696930 --- /dev/null +++ b/src/js/firefox/build.mk @@ -0,0 +1,102 @@ + +# Firefox Extension ############################################################ + +all: $(build-dir)/firefox.xpi + +firefox-dir := $(path) + +firefox-build := $(build-dir)/firefox + +$(firefox-build): | $(build-dir) + $(call cmd,mkdir) + + +# Generic Extension ############################################################ + +$(eval $(call stage-fiveui,$(firefox-build),stage-firefox)) + + +# Firefox File Staging ######################################################### + +# copy in firefox scripts +$(firefox-build)/data/js/%: $(firefox-dir)/js/% | $(firefox-build)/data/js + $(call cmd,cp) + +# copy in firefox scripts +$(firefox-build)/data/injected/%: $(firefox-dir)/injected/% \ + | $(firefox-build)/data/injected + $(call cmd,cp) + +$(firefox-build)/data/icons/%: $(firefox-dir)/icons/% \ + | $(firefox-build)/data/icons + $(call cmd,cp) + +$(firefox-build)/data/icons: | $(firefox-build)/data + $(call cmd,mkdir) + +$(firefox-build)/data/%: $(firefox-dir)/lib/% | $(firefox-build)/data + $(call cmd,cp) + + +$(firefox-build)/%: $(firefox-dir)/% | $(firefox-build) + $(call cmd,cp) + + +# Wrapper Compilation ########################################################## + +# In order to turn a number of different javascript modules into a single one, +# we just concatenate them all together. This should be fine, as all of the +# modules we define just provide functions, or register callbacks. +quiet_cmd_compilejs = JSC $(call drop-prefix,$@) + cmd_compilejs = cat $^ > $@ + +# we have to build one big source for the firefox main.js, as we can't really +# share reuse the CommonJS module system in the chrome version. +$(firefox-build)/data/main.js: \ + $(firefox-dir)/lib/main.js \ + $(fiveui-dir)/js/set.js \ + $(fiveui-dir)/js/url-pat.js \ + $(fiveui-dir)/js/url-pat.js \ + $(fiveui-dir)/js/settings.js \ + $(fiveui-dir)/js/messenger.js \ + $(fiveui-dir)/js/state.js \ + $(fiveui-dir)/js/utils.js \ + $(fiveui-dir)/js/rules.js \ + $(fiveui-dir)/js/background.js \ + | $(firefox-build)/data + $(call cmd,compilejs) + + +# Packaging #################################################################### + +addon-sdk := $(topdir)/tools/addon-sdk + +# wrapper for setting up the environment for the running the cfx command +cfx = ( cd $(addon-sdk) $(redir) && \ + . bin/activate $(redir) && \ + cd $1 $(redir) && \ + cfx $2 $(redir) ) + +.PHONY: stage-firefox +stage-firefox: \ + $(firefox-build)/package.json \ + $(firefox-build)/data/main.js \ + $(firefox-build)/data/ajax.js \ + $(firefox-build)/data/storage-wrapper.js \ + $(firefox-build)/data/tabIds.js \ + $(firefox-build)/data/icons/fiveui-icon.html \ + $(firefox-build)/data/icons/fiveui-icon.js \ + $(firefox-build)/data/icons/options-icon.html \ + $(firefox-build)/data/icons/options-icon.js \ + | $(firefox-build) + +$(build-dir)/firefox.xpi: stage-firefox + $(call label,XPI $(call drop-prefix,$@))\ + $(call cfx,$(build-dir),xpi -p $(topdir)/profiles/firefox \ + --pkgdir=$(firefox-build) ) + + +# Testing ###################################################################### + +run-firefox: stage-firefox + $(call label,RUNFF)$(call cfx,$(firefox-build),run) diff --git a/contexts/data/fiveui/firefox/icon-content.html b/src/js/firefox/icons/fiveui-icon.html index d943367..d943367 100644 --- a/contexts/data/fiveui/firefox/icon-content.html +++ b/src/js/firefox/icons/fiveui-icon.html diff --git a/contexts/data/fiveui/firefox/icon-script.js b/src/js/firefox/icons/fiveui-icon.js index 61545da..61545da 100644 --- a/contexts/data/fiveui/firefox/icon-script.js +++ b/src/js/firefox/icons/fiveui-icon.js diff --git a/contexts/data/fiveui/firefox/options-icon.html b/src/js/firefox/icons/options-icon.html index 850b530..850b530 100644 --- a/contexts/data/fiveui/firefox/options-icon.html +++ b/src/js/firefox/icons/options-icon.html diff --git a/contexts/data/fiveui/firefox/options-script.js b/src/js/firefox/icons/options-icon.js index 2008883..2008883 100644 --- a/contexts/data/fiveui/firefox/options-script.js +++ b/src/js/firefox/icons/options-icon.js diff --git a/contexts/data/fiveui/firefox/firefox-injected-compute.js b/src/js/firefox/injected/platform-compute.js index 1f1dc48..1f1dc48 100644 --- a/contexts/data/fiveui/firefox/firefox-injected-compute.js +++ b/src/js/firefox/injected/platform-compute.js diff --git a/contexts/data/fiveui/firefox/firefox-injected-ui.js b/src/js/firefox/injected/platform-ui.js index 79636c1..79636c1 100644 --- a/contexts/data/fiveui/firefox/firefox-injected-ui.js +++ b/src/js/firefox/injected/platform-ui.js diff --git a/src/js/firefox/js/platform-ajax.js b/src/js/firefox/js/platform-ajax.js new file mode 100644 index 0000000..e32225a --- /dev/null +++ b/src/js/firefox/js/platform-ajax.js @@ -0,0 +1,8 @@ + +/** + * Placeholder function, as all ajax should be done in the backend + */ +var fiveui = fiveui || {}; +fiveui.ajax = fiveui.ajax || {}; + +fiveui.ajax.get = function () {}; diff --git a/contexts/data/fiveui/firefox/firefox-options.js b/src/js/firefox/js/platform-options.js index 0ae65f9..0ae65f9 100644 --- a/contexts/data/fiveui/firefox/firefox-options.js +++ b/src/js/firefox/js/platform-options.js diff --git a/contexts/data/fiveui/firefox/ajax.js b/src/js/firefox/lib/ajax.js index da95c38..404deee 100644 --- a/contexts/data/fiveui/firefox/ajax.js +++ b/src/js/firefox/lib/ajax.js @@ -1,17 +1,16 @@ var fiveui = fiveui || {}; var Request = require('request').Request; +var _ = require('underscore'); (function() { -fiveui.ajax = fiveui.ajax || {}; - /** * Use the request api to make an XHR request from the extension context. * Behaves somewhat like the jQuery.ajax method, but only ever returns the text * content of the response. */ -fiveui.ajax.get = function(url, opts) { +exports.get = function(url, opts) { _.defaults(opts, { success: function() {}, diff --git a/contexts/data/fiveui/firefox/main.js b/src/js/firefox/lib/main.js index 2723c72..84619ea 100644 --- a/contexts/data/fiveui/firefox/main.js +++ b/src/js/firefox/lib/main.js @@ -19,11 +19,15 @@ * limitations under the License. */ -_ = require('underscore'); -Backbone = require('backbone'); +_ = require('underscore'); +Backbone = require('backbone'); +StorageWrapper = require('storage-wrapper').StorageWrapper; +TabIds = require('tabIds').TabIds; var fiveui = fiveui || {}; +fiveui.ajax = require('ajax'); + (function() { fiveui.firefox = fiveui.firefox || {}; @@ -34,7 +38,7 @@ const data = require("self").data; const pageMod = require("page-mod"); fiveui.firefox.main = function() { - var settings = new fiveui.Settings(new fiveui.firefox.StorageWrapper()); + var settings = new fiveui.Settings(new StorageWrapper()); var activeId = 0; // initialze the background functionality @@ -43,10 +47,10 @@ fiveui.firefox.main = function() { var icon = widgets.Widget({ id: "FiveUI-Icon", label: "FiveUI", - contentURL: data.url('fiveui/firefox/icon-content.html'), + contentURL: data.url('icons/fiveui-icon.html'), contentScriptFile: [ - data.url('lib/jquery/jquery-1.8.3.js'), - data.url('fiveui/firefox/icon-script.js') + data.url('jquery/jquery-1.8.3.js'), + data.url('icons/fiveui-icon.js') ], onClick: function() { background.showUI(activeId); @@ -56,10 +60,10 @@ fiveui.firefox.main = function() { var optionsButton = widgets.Widget( { id: "FiveUI-Options", label: "FiveUI", - contentURL: data.url('fiveui/firefox/options-icon.html'), + contentURL: data.url('icons/options-icon.html'), contentScriptFile: [ - data.url('lib/jquery/jquery-1.8.3.js'), - data.url('fiveui/firefox/options-script.js') + data.url('jquery/jquery-1.8.3.js'), + data.url('icons/options-icon.js') ] } ); @@ -84,8 +88,8 @@ fiveui.firefox.main = function() { // store the contents of the injected css, so that we can inject it later var injectedCSS = [ - data.load('target/injected.css'), - data.load('target/bundled.css') + data.load('injected/injected.css'), + data.load('jquery/bundled.css') ].join('\n'); /** @@ -100,15 +104,14 @@ fiveui.firefox.main = function() { var loadScripts = function(tabId, inScripts, inFrames, tab) { if(inFrames) { - var firefoxScripts = [dataLoader('fiveui/firefox/firefox-injected-compute.js')]; + var firefoxScripts = [dataLoader('injected/platform-compute.js')]; } else { - var firefoxScripts = [dataLoader('fiveui/firefox/firefox-injected-ui.js')]; + var firefoxScripts = [dataLoader('injected/platform-ui.js')]; } // just scripts, css gets filtered out. var scripts = _.filter(_.flatten([firefoxScripts, inScripts]), function(script) { - console.log(script); return script.search(/\.css$/i) == -1; }); @@ -129,7 +132,7 @@ fiveui.firefox.main = function() { var background = new fiveui.Background(settings, updateWidget, loadScripts, dataLoader); - var tabIds = new fiveui.firefox.TabIds(); + var tabIds = new TabIds(); var handleNewTab = function(tab) { var tabId = tabIds.allocate(); @@ -175,19 +178,32 @@ fiveui.firefox.main = function() { var showOptions = function() { // TODO does not make use of existing options tabs, if any are open: - tabs.open(data.url('fiveui/options.html')); + tabs.open(data.url('options.html')); }; // set up a page-mod to be active on the options page, so that // page can communicate with the add-on: pageMod.PageMod( - { include: data.url('fiveui/options.html'), - contentScriptWhen: 'end', - contentScriptFile: [ - data.url("target/firefox-options.js") - ], - contentScript: "fiveui.firefox.options.init()", - onAttach: function (worker) { + { include: data.url('options.html') + , contentScriptWhen: 'end' + , contentScriptFile: + [ data.url('jquery/jquery-1.8.3.js') + , data.url('underscore.js') + , data.url('backbone.js') + , data.url('js/settings.js') + , data.url('js/chan.js') + , data.url('js/messenger.js') + , data.url('js/options.js') + , data.url('js/update-manager.js') + , data.url('js/utils.js') + , data.url('js/entry.js') + , data.url('js/rules.js') + , data.url('js/url-pat.js') + , data.url('js/platform-ajax.js') + , data.url('js/platform-options.js') + ] + , contentScript: 'fiveui.firefox.options.init();' + , onAttach: function (worker) { fiveui.Settings.manager(worker.port, settings); } }); diff --git a/contexts/data/fiveui/firefox/storage.js b/src/js/firefox/lib/storage-wrapper.js index 9aa51aa..03bfeec 100644 --- a/contexts/data/fiveui/firefox/storage.js +++ b/src/js/firefox/lib/storage-wrapper.js @@ -19,15 +19,11 @@ * limitations under the License. */ -if (typeof goog != 'undefined') { - goog.provide('fiveui.firefox.StorageWrapper'); -} else { - var fiveui = fiveui || {}; - fiveui.firefox = fiveui.firefox || {}; -} const ss = require('simple-storage'); +var fiveui = { firefox : {} }; + /** * A wraper around the Firefox Simple-Storage API to match the w3c Storage interface: * http://dev.w3.org/html5/webstorage/#storage-0 diff --git a/contexts/data/fiveui/firefox/tabIds.js b/src/js/firefox/lib/tabIds.js index babd7cf..f5dad78 100644 --- a/contexts/data/fiveui/firefox/tabIds.js +++ b/src/js/firefox/lib/tabIds.js @@ -19,18 +19,20 @@ * limitations under the License. */ -(function() { +var _ = require('underscore'); -fiveui.firefox.TabIds = function() { +exports.TabIds = function() { this.next = 0; }; -fiveui.firefox.TabIds.prototype.allocate = function() { - var tabId = this.next; - this.next = this.next + 1; - return tabId; -}; +_.extend(exports.TabIds.prototype, { + + allocate:function() { + var tabId = this.next; + this.next = this.next + 1; + return tabId; + }, -fiveui.firefox.TabIds.prototype.free = function(tabId) {}; + free:function(tabId) {} -})(); +}); diff --git a/contexts/package.json b/src/js/firefox/package.json index eea95f1..b3b2df2 100644 --- a/contexts/package.json +++ b/src/js/firefox/package.json @@ -11,6 +11,6 @@ "id": "jid1-oquzbbbog1fmxq", "description": "UI Constraint Checker", "lib": "data/", - "main": "target/firefox-main", - "tests": "data/fiveui/firefox/test" + "main": "main.js", + "tests": "test" } diff --git a/contexts/data/fiveui/firefox/test/test-main.js b/src/js/firefox/test/test-main.js index c25fec5..c25fec5 100644 --- a/contexts/data/fiveui/firefox/test/test-main.js +++ b/src/js/firefox/test/test-main.js diff --git a/src/js/fiveui/build.mk b/src/js/fiveui/build.mk new file mode 100644 index 0000000..aeb00a1 --- /dev/null +++ b/src/js/fiveui/build.mk @@ -0,0 +1,129 @@ + +# Generic FiveUI Build Staging ################################################# + +fiveui-dir := $(path) +lib-dir := $(topdir)/src/js/lib +fiveui-files := $(shell find $(fiveui-dir)) + + +# $1 - target directory +# $2 - $(topdir)/src/js/fiveui relative directory +define fiveui-files + +# scripts in the target +$1/$2: | $1 + $$(call cmd,mkdir) + +$1/$2/%: $(fiveui-dir)/$2/% | $1/$2 + $$(call cmd,cp) + +endef + + +# Because firefox has strange requirements on the layout of the extension +# directory, we just use that as the layout for all extensions. +# +# $1 - sub-directory off of $(build-dir) to stage into +# $2 - top-level target to augment with dependencies +define stage-fiveui + +# Common Files ################################################################# + +$1/data/injected/injected.css: $(build-dir)/injected.css + $$(call cmd,cp) + +$(call fiveui-files,$1/data,injected) +$2: $1/data/injected/compute.js \ + $1/data/injected/ui.js \ + $1/data/injected/injected.css \ + $1/data/injected/prelude.js \ + $1/data/injected/jquery-plugins.js + + +$(call fiveui-files,$1/data,js) +$2: $(patsubst $(fiveui-dir)/%,$1/data/%,$(wildcard $(fiveui-dir)/js/*)) + + +$(call fiveui-files,$1/data,css) +$2: $1/data/css/entry.css \ + $1/data/css/options.css + + +$(call fiveui-files,$1/data,images) +$2: $(patsubst $(fiveui-dir)/%,$1/data/%,$(wildcard $(fiveui-dir)/images/*)) + + +# Libraries #################################################################### + +# simple libraries +$1/data/%: $(lib-dir)/% | $1/data + $$(call cmd,cp) + +$2: $1/data/underscore.js \ + $1/data/backbone.js \ + $1/data/md5.js + + +# jquery +$1/data/jquery: | $1/data + $$(call cmd,mkdir) + +$1/data/jquery/bundled.css: $(build-dir)/bundled.css + $$(call cmd,cp) + +$1/data/jquery/%: $(lib-dir)/jquery/% | $1/data/jquery + $$(call cmd,cp) + +$2: $1/data/jquery/jquery-1.8.3.js \ + $1/data/jquery/jquery-ui-1.9.2.custom.js \ + $1/data/jquery/bundled.css + + +# Other Files ################################################################## + +# top-level fiveui stuff +$1/data/%: $(fiveui-dir)/% | $1/data + $$(call cmd,cp) + +$2: $1/data/options.html + + +$1/data: | $1 + $$(call cmd,mkdir) + + + +# files provided by the platform +$2: $1/data/js/platform-ajax.js \ + $1/data/js/platform-options.js \ + $1/data/injected/platform-compute.js \ + $1/data/injected/platform-ui.js + + +endef + + +# Generic Bundled jQuery CSS ################################################### + +css-bundle := $(topdir)/tools/bin/css-bundle.py + +quiet_cmd_cssbundle = CSSC $(call drop-prefix,$@) + cmd_cssbundle = ( cd $(dir $(TARGET)) && \ + $(css-bundle) $(notdir $(TARGET)) $@ $(redir) ) + +$(build-dir)/bundled.css: TARGET := $(lib-dir)/jquery/css/ui-lightness/jquery-ui.css +$(build-dir)/bundled.css: \ + $(wildcard $(lib-dir)/jquery/css/ui-lightness/*.css) \ + $(wildcard $(lib-dir)/jquery/css/ui-lightness/images/*.png) \ + | $(build-dir) + $(call cmd,cssbundle) + +$(build-dir)/injected.css: TARGET := $(fiveui-dir)/injected/injected.css +$(build-dir)/injected.css: \ + $(fiveui-dir)/injected/injected.css \ + $(fiveui-dir)/images/errorCircle.png \ + $(fiveui-dir)/images/warningTriangle.png \ + $(fiveui-dir)/images/right-arrow.png \ + $(fiveui-dir)/images/down-arrow.png \ + | $(build-dir) + $(call cmd,cssbundle) diff --git a/contexts/data/fiveui/entry.css b/src/js/fiveui/css/entry.css index ec4791c..ec4791c 100644 --- a/contexts/data/fiveui/entry.css +++ b/src/js/fiveui/css/entry.css diff --git a/contexts/data/fiveui/options.css b/src/js/fiveui/css/options.css index efe7d05..5070572 100644 --- a/contexts/data/fiveui/options.css +++ b/src/js/fiveui/css/options.css @@ -32,7 +32,7 @@ html body, body { div#icon { float: right; opacity: 0.25; - background-image: url(images/fiveui-icon-128.png); + background-image: url(../images/fiveui-icon-128.png); background-repeat: no-repeat; background-position-x: 16px; background-position: 0px 16px; diff --git a/contexts/data/fiveui/images/Gear_3.svg b/src/js/fiveui/images/Gear_3.svg index ca241ce..ca241ce 100644 --- a/contexts/data/fiveui/images/Gear_3.svg +++ b/src/js/fiveui/images/Gear_3.svg diff --git a/contexts/data/fiveui/images/attribution.txt b/src/js/fiveui/images/attribution.txt index fb8c49c..fb8c49c 100644 --- a/contexts/data/fiveui/images/attribution.txt +++ b/src/js/fiveui/images/attribution.txt diff --git a/contexts/data/fiveui/images/down-arrow.png b/src/js/fiveui/images/down-arrow.png Binary files differindex 4fd7d54..4fd7d54 100644 --- a/contexts/data/fiveui/images/down-arrow.png +++ b/src/js/fiveui/images/down-arrow.png diff --git a/contexts/data/fiveui/images/down-arrow.svg b/src/js/fiveui/images/down-arrow.svg index 6b4ba07..6b4ba07 100644 --- a/contexts/data/fiveui/images/down-arrow.svg +++ b/src/js/fiveui/images/down-arrow.svg diff --git a/contexts/data/fiveui/images/errorCircle.png b/src/js/fiveui/images/errorCircle.png Binary files differindex d5c1dc0..d5c1dc0 100644 --- a/contexts/data/fiveui/images/errorCircle.png +++ b/src/js/fiveui/images/errorCircle.png diff --git a/contexts/data/fiveui/images/fiveui-icon-128.png b/src/js/fiveui/images/fiveui-icon-128.png Binary files differindex 1f0b6c4..1f0b6c4 100644 --- a/contexts/data/fiveui/images/fiveui-icon-128.png +++ b/src/js/fiveui/images/fiveui-icon-128.png diff --git a/contexts/data/fiveui/images/fiveui-icon-16.png b/src/js/fiveui/images/fiveui-icon-16.png Binary files differindex cc256e0..cc256e0 100644 --- a/contexts/data/fiveui/images/fiveui-icon-16.png +++ b/src/js/fiveui/images/fiveui-icon-16.png diff --git a/contexts/data/fiveui/images/fiveui-icon-48.png b/src/js/fiveui/images/fiveui-icon-48.png Binary files differindex 2d586fa..2d586fa 100644 --- a/contexts/data/fiveui/images/fiveui-icon-48.png +++ b/src/js/fiveui/images/fiveui-icon-48.png diff --git a/contexts/data/fiveui/images/fiveui-icon-disabled.png b/src/js/fiveui/images/fiveui-icon-disabled.png Binary files differindex 66b6a63..66b6a63 100644 --- a/contexts/data/fiveui/images/fiveui-icon-disabled.png +++ b/src/js/fiveui/images/fiveui-icon-disabled.png diff --git a/contexts/data/fiveui/images/fiveui-icon-enabled.png b/src/js/fiveui/images/fiveui-icon-enabled.png Binary files differindex 144f64e..144f64e 100644 --- a/contexts/data/fiveui/images/fiveui-icon-enabled.png +++ b/src/js/fiveui/images/fiveui-icon-enabled.png diff --git a/contexts/data/fiveui/images/fiveui-icon-working.png b/src/js/fiveui/images/fiveui-icon-working.png Binary files differindex 94643c7..94643c7 100644 --- a/contexts/data/fiveui/images/fiveui-icon-working.png +++ b/src/js/fiveui/images/fiveui-icon-working.png diff --git a/contexts/data/fiveui/images/right-arrow.png b/src/js/fiveui/images/right-arrow.png Binary files differindex 614e65d..614e65d 100644 --- a/contexts/data/fiveui/images/right-arrow.png +++ b/src/js/fiveui/images/right-arrow.png diff --git a/contexts/data/fiveui/images/right-arrow.svg b/src/js/fiveui/images/right-arrow.svg index 192f654..192f654 100644 --- a/contexts/data/fiveui/images/right-arrow.svg +++ b/src/js/fiveui/images/right-arrow.svg diff --git a/contexts/data/fiveui/images/warningTriangle.png b/src/js/fiveui/images/warningTriangle.png Binary files differindex dac1d03..dac1d03 100644 --- a/contexts/data/fiveui/images/warningTriangle.png +++ b/src/js/fiveui/images/warningTriangle.png diff --git a/contexts/data/fiveui/injected/fiveui-injected-compute.js b/src/js/fiveui/injected/compute.js index 7ae9848..225c794 100644 --- a/contexts/data/fiveui/injected/fiveui-injected-compute.js +++ b/src/js/fiveui/injected/compute.js @@ -220,7 +220,9 @@ var scope = { name: theRule.name, description: theRule.description, - ruleSet: core.rules + ruleSet: core.rules, + // maybe it would be better for this to be an argument to the rule? + report: report }; if (theRule.rule) { diff --git a/contexts/data/fiveui/injected/injected.css b/src/js/fiveui/injected/injected.css index 2f50058..2f50058 100644 --- a/contexts/data/fiveui/injected/injected.css +++ b/src/js/fiveui/injected/injected.css diff --git a/contexts/data/fiveui/injected/jquery-plugins.js b/src/js/fiveui/injected/jquery-plugins.js index 0f13c2a..0f13c2a 100644 --- a/contexts/data/fiveui/injected/jquery-plugins.js +++ b/src/js/fiveui/injected/jquery-plugins.js diff --git a/contexts/data/fiveui/injected/prelude.js b/src/js/fiveui/injected/prelude.js index 3f3b4f5..a77a1de 100644 --- a/contexts/data/fiveui/injected/prelude.js +++ b/src/js/fiveui/injected/prelude.js @@ -32,8 +32,6 @@ */ var fiveui = fiveui || {}; -(function() { - /** * A global namespace for statistics collection. * @@ -428,5 +426,3 @@ JSON.stringify = JSON.stringify || function (obj) { return (arr ? "[" : "{") + String(json) + (arr ? "]" : "}"); } }; - -})(); diff --git a/contexts/data/fiveui/injected/fiveui-injected-ui.js b/src/js/fiveui/injected/ui.js index 6831436..6831436 100644 --- a/contexts/data/fiveui/injected/fiveui-injected-ui.js +++ b/src/js/fiveui/injected/ui.js diff --git a/contexts/data/fiveui/background.js b/src/js/fiveui/js/background.js index 284b443..c0d4e07 100644 --- a/contexts/data/fiveui/background.js +++ b/src/js/fiveui/js/background.js @@ -19,7 +19,7 @@ * limitations under the License. */ -fiveui = fiveui || {}; +var fiveui = fiveui || {}; (function() { /** @@ -148,25 +148,25 @@ fiveui.Background.prototype.pageLoad = function(tabId, url, data) { } var computeScripts = _.flatten( - [ [ this.dataLoader('lib/jquery/jquery-1.8.3.js') - , this.dataLoader('fiveui/injected/prelude.js') - , this.dataLoader('lib/jshash/md5.js') - , this.dataLoader('fiveui/injected/jquery-plugins.js') + [ [ this.dataLoader('jquery/jquery-1.8.3.js') + , this.dataLoader('md5.js') + , this.dataLoader('injected/prelude.js') + , this.dataLoader('injected/jquery-plugins.js') ] , dependencies - , [ this.dataLoader('fiveui/injected/fiveui-injected-compute.js') + , [ this.dataLoader('injected/compute.js') ] ]); this.loadScripts(tabId, computeScripts, true, data); var uiScripts = _.flatten( - [ this.dataLoader('target/injected.css') - , this.dataLoader('target/bundled.css') - , this.dataLoader('lib/jquery/jquery-1.8.3.js') - , this.dataLoader('lib/jquery/jquery-ui-1.9.2.custom.js') - , this.dataLoader('fiveui/injected/prelude.js') - , this.dataLoader('fiveui/injected/fiveui-injected-ui.js') - , this.dataLoader('fiveui/injected/jquery-plugins.js') + [ this.dataLoader('jquery/bundled.css') + , this.dataLoader('jquery/jquery-1.8.3.js') + , this.dataLoader('jquery/jquery-ui-1.9.2.custom.js') + , this.dataLoader('injected/injected.css') + , this.dataLoader('injected/prelude.js') + , this.dataLoader('injected/ui.js') + , this.dataLoader('injected/jquery-plugins.js') ]); this.loadScripts(tabId, uiScripts, false, data); } diff --git a/contexts/data/fiveui/chan.js b/src/js/fiveui/js/chan.js index 47c6145..47c6145 100644 --- a/contexts/data/fiveui/chan.js +++ b/src/js/fiveui/js/chan.js diff --git a/contexts/data/fiveui/entry.js b/src/js/fiveui/js/entry.js index 025034a..025034a 100644 --- a/contexts/data/fiveui/entry.js +++ b/src/js/fiveui/js/entry.js diff --git a/contexts/data/fiveui/ffcheck.js b/src/js/fiveui/js/ffcheck.js index 2157ed0..2157ed0 100644 --- a/contexts/data/fiveui/ffcheck.js +++ b/src/js/fiveui/js/ffcheck.js diff --git a/contexts/data/fiveui/messenger.js b/src/js/fiveui/js/messenger.js index fc1962c..fc1962c 100644 --- a/contexts/data/fiveui/messenger.js +++ b/src/js/fiveui/js/messenger.js diff --git a/contexts/data/fiveui/options.js b/src/js/fiveui/js/options.js index 2b29f8d..2b29f8d 100644 --- a/contexts/data/fiveui/options.js +++ b/src/js/fiveui/js/options.js diff --git a/contexts/data/fiveui/rules.js b/src/js/fiveui/js/rules.js index 68d821d..314d50b 100644 --- a/contexts/data/fiveui/rules.js +++ b/src/js/fiveui/js/rules.js @@ -136,12 +136,13 @@ fiveui.RuleSet.load = function(manifest_url, options) { success: function(text) { try { - var manifest = JSON.parse(fiveui.utils.filterJSON(text,'json')); + var sanitized = fiveui.utils.filterJSON(text,'json'); + var manifest = JSON.parse(sanitized); } catch(e) { // XXX incoming error continuation is empty // (and we may have syntax error details in e) - options.error(); + options.error('failed to parse manifest'); return; } @@ -152,7 +153,9 @@ fiveui.RuleSet.load = function(manifest_url, options) { loadRules(manifest, rules); }, - error: options.error, + error: function() { + options.error('failed to retrieve manifest'); + }, }); @@ -199,13 +202,13 @@ fiveui.RuleSetModel = Backbone.Model.extend({ var rsMethod = method == 'update' ? 'updateRuleSet' : 'addRuleSet'; msg.send('loadRuleSet', source, function(obj) { - if(obj) { + if(!obj.error) { obj.id = id; obj.source = source; msg.send(rsMethod, obj, options.success); } else { - options.error('failed to load manifest'); + options.error(obj.error); } }); break; diff --git a/contexts/data/fiveui/set.js b/src/js/fiveui/js/set.js index 7015a3e..7015a3e 100644 --- a/contexts/data/fiveui/set.js +++ b/src/js/fiveui/js/set.js diff --git a/contexts/data/fiveui/settings.js b/src/js/fiveui/js/settings.js index c284db8..a17a9e0 100644 --- a/contexts/data/fiveui/settings.js +++ b/src/js/fiveui/js/settings.js @@ -336,8 +336,8 @@ fiveui.Settings.manager = function(chan, settings) { fiveui.RuleSet.load(url, { success:respond, - error:function() { - respond(null); + error:function(msg) { + respond({ error : msg }); }, }); }); diff --git a/contexts/data/fiveui/state.js b/src/js/fiveui/js/state.js index 226a439..226a439 100644 --- a/contexts/data/fiveui/state.js +++ b/src/js/fiveui/js/state.js diff --git a/contexts/data/fiveui/update-manager.js b/src/js/fiveui/js/update-manager.js index 8013d2f..8013d2f 100644 --- a/contexts/data/fiveui/update-manager.js +++ b/src/js/fiveui/js/update-manager.js diff --git a/contexts/data/fiveui/url-pat.js b/src/js/fiveui/js/url-pat.js index d723021..d723021 100644 --- a/contexts/data/fiveui/url-pat.js +++ b/src/js/fiveui/js/url-pat.js diff --git a/contexts/data/fiveui/utils.js b/src/js/fiveui/js/utils.js index 0ab3128..0ab3128 100644 --- a/contexts/data/fiveui/utils.js +++ b/src/js/fiveui/js/utils.js diff --git a/contexts/data/fiveui/options.html b/src/js/fiveui/options.html index 8994a69..1da5e33 100644 --- a/contexts/data/fiveui/options.html +++ b/src/js/fiveui/options.html @@ -26,13 +26,22 @@ <title id="title">Five UI</title> <link id="favicon" rel="icon" href="images/fiveui-icon-16.png" /> - <link rel="stylesheet" href="options.css" /> - <link rel="stylesheet" href="entry.css" /> - <script src="../lib/jquery/jquery-1.8.3.js"></script> - <script src="../underscore.js"></script> - <script src="../backbone.js"></script> - <script src="../target/chrome-options.js"></script> - <script src="ffcheck.js"></script> + <link rel="stylesheet" href="css/options.css" /> + <link rel="stylesheet" href="css/entry.css" /> + <script src="jquery/jquery-1.8.3.js"></script> + <script src="underscore.js"></script> + <script src="backbone.js"></script> + <script src="js/settings.js"></script> + <script src="js/chan.js"></script> + <script src="js/messenger.js"></script> + <script src="js/options.js"></script> + <script src="js/update-manager.js"></script> + <script src="js/utils.js"></script> + <script src="js/entry.js"></script> + <script src="js/rules.js"></script> + <script src="js/url-pat.js"></script> + <script src="js/platform-ajax.js"></script> + <script src="js/platform-options.js"></script> </head> <body> diff --git a/contexts/data/lib/backbone.js b/src/js/lib/backbone.js index 3512d42..3512d42 100644 --- a/contexts/data/lib/backbone.js +++ b/src/js/lib/backbone.js diff --git a/contexts/data/lib/jquery/css/ui-lightness/images/ui-bg_diagonals-thick_18_b81900_40x40.png b/src/js/lib/jquery/css/ui-lightness/images/ui-bg_diagonals-thick_18_b81900_40x40.png Binary files differindex 954e22d..954e22d 100755 --- a/contexts/data/lib/jquery/css/ui-lightness/images/ui-bg_diagonals-thick_18_b81900_40x40.png +++ b/src/js/lib/jquery/css/ui-lightness/images/ui-bg_diagonals-thick_18_b81900_40x40.png diff --git a/contexts/data/lib/jquery/css/ui-lightness/images/ui-bg_diagonals-thick_20_666666_40x40.png b/src/js/lib/jquery/css/ui-lightness/images/ui-bg_diagonals-thick_20_666666_40x40.png Binary files differindex 64ece57..64ece57 100755 --- a/contexts/data/lib/jquery/css/ui-lightness/images/ui-bg_diagonals-thick_20_666666_40x40.png +++ b/src/js/lib/jquery/css/ui-lightness/images/ui-bg_diagonals-thick_20_666666_40x40.png diff --git a/contexts/data/lib/jquery/css/ui-lightness/images/ui-bg_flat_10_000000_40x100.png b/src/js/lib/jquery/css/ui-lightness/images/ui-bg_flat_10_000000_40x100.png Binary files differindex abdc010..abdc010 100755 --- a/contexts/data/lib/jquery/css/ui-lightness/images/ui-bg_flat_10_000000_40x100.png +++ b/src/js/lib/jquery/css/ui-lightness/images/ui-bg_flat_10_000000_40x100.png diff --git a/contexts/data/lib/jquery/css/ui-lightness/images/ui-bg_glass_100_f6f6f6_1x400.png b/src/js/lib/jquery/css/ui-lightness/images/ui-bg_glass_100_f6f6f6_1x400.png Binary files differindex 9b383f4..9b383f4 100755 --- a/contexts/data/lib/jquery/css/ui-lightness/images/ui-bg_glass_100_f6f6f6_1x400.png +++ b/src/js/lib/jquery/css/ui-lightness/images/ui-bg_glass_100_f6f6f6_1x400.png diff --git a/contexts/data/lib/jquery/css/ui-lightness/images/ui-bg_glass_100_fdf5ce_1x400.png b/src/js/lib/jquery/css/ui-lightness/images/ui-bg_glass_100_fdf5ce_1x400.png Binary files differindex 859c264..859c264 100755 --- a/contexts/data/lib/jquery/css/ui-lightness/images/ui-bg_glass_100_fdf5ce_1x400.png +++ b/src/js/lib/jquery/css/ui-lightness/images/ui-bg_glass_100_fdf5ce_1x400.png diff --git a/contexts/data/lib/jquery/css/ui-lightness/images/ui-bg_glass_65_ffffff_1x400.png b/src/js/lib/jquery/css/ui-lightness/images/ui-bg_glass_65_ffffff_1x400.png Binary files differindex 42ccba2..42ccba2 100755 --- a/contexts/data/lib/jquery/css/ui-lightness/images/ui-bg_glass_65_ffffff_1x400.png +++ b/src/js/lib/jquery/css/ui-lightness/images/ui-bg_glass_65_ffffff_1x400.png diff --git a/contexts/data/lib/jquery/css/ui-lightness/images/ui-bg_gloss-wave_35_f6a828_500x100.png b/src/js/lib/jquery/css/ui-lightness/images/ui-bg_gloss-wave_35_f6a828_500x100.png Binary files differindex 1b1972b..1b1972b 100755 --- a/contexts/data/lib/jquery/css/ui-lightness/images/ui-bg_gloss-wave_35_f6a828_500x100.png +++ b/src/js/lib/jquery/css/ui-lightness/images/ui-bg_gloss-wave_35_f6a828_500x100.png diff --git a/contexts/data/lib/jquery/css/ui-lightness/images/ui-bg_highlight-soft_100_eeeeee_1x100.png b/src/js/lib/jquery/css/ui-lightness/images/ui-bg_highlight-soft_100_eeeeee_1x100.png Binary files differindex f127367..f127367 100755 --- a/contexts/data/lib/jquery/css/ui-lightness/images/ui-bg_highlight-soft_100_eeeeee_1x100.png +++ b/src/js/lib/jquery/css/ui-lightness/images/ui-bg_highlight-soft_100_eeeeee_1x100.png diff --git a/contexts/data/lib/jquery/css/ui-lightness/images/ui-bg_highlight-soft_75_ffe45c_1x100.png b/src/js/lib/jquery/css/ui-lightness/images/ui-bg_highlight-soft_75_ffe45c_1x100.png Binary files differindex 359397a..359397a 100755 --- a/contexts/data/lib/jquery/css/ui-lightness/images/ui-bg_highlight-soft_75_ffe45c_1x100.png +++ b/src/js/lib/jquery/css/ui-lightness/images/ui-bg_highlight-soft_75_ffe45c_1x100.png diff --git a/contexts/data/lib/jquery/css/ui-lightness/images/ui-icons_222222_256x240.png b/src/js/lib/jquery/css/ui-lightness/images/ui-icons_222222_256x240.png Binary files differindex b273ff1..b273ff1 100755 --- a/contexts/data/lib/jquery/css/ui-lightness/images/ui-icons_222222_256x240.png +++ b/src/js/lib/jquery/css/ui-lightness/images/ui-icons_222222_256x240.png diff --git a/contexts/data/lib/jquery/css/ui-lightness/images/ui-icons_228ef1_256x240.png b/src/js/lib/jquery/css/ui-lightness/images/ui-icons_228ef1_256x240.png Binary files differindex a641a37..a641a37 100755 --- a/contexts/data/lib/jquery/css/ui-lightness/images/ui-icons_228ef1_256x240.png +++ b/src/js/lib/jquery/css/ui-lightness/images/ui-icons_228ef1_256x240.png diff --git a/contexts/data/lib/jquery/css/ui-lightness/images/ui-icons_ef8c08_256x240.png b/src/js/lib/jquery/css/ui-lightness/images/ui-icons_ef8c08_256x240.png Binary files differindex 85e63e9..85e63e9 100755 --- a/contexts/data/lib/jquery/css/ui-lightness/images/ui-icons_ef8c08_256x240.png +++ b/src/js/lib/jquery/css/ui-lightness/images/ui-icons_ef8c08_256x240.png diff --git a/contexts/data/lib/jquery/css/ui-lightness/images/ui-icons_ffd27a_256x240.png b/src/js/lib/jquery/css/ui-lightness/images/ui-icons_ffd27a_256x240.png Binary files differindex e117eff..e117eff 100755 --- a/contexts/data/lib/jquery/css/ui-lightness/images/ui-icons_ffd27a_256x240.png +++ b/src/js/lib/jquery/css/ui-lightness/images/ui-icons_ffd27a_256x240.png diff --git a/contexts/data/lib/jquery/css/ui-lightness/images/ui-icons_ffffff_256x240.png b/src/js/lib/jquery/css/ui-lightness/images/ui-icons_ffffff_256x240.png Binary files differindex 42f8f99..42f8f99 100755 --- a/contexts/data/lib/jquery/css/ui-lightness/images/ui-icons_ffffff_256x240.png +++ b/src/js/lib/jquery/css/ui-lightness/images/ui-icons_ffffff_256x240.png diff --git a/contexts/data/lib/jquery/css/ui-lightness/jquery-ui-1.9.2.custom.css b/src/js/lib/jquery/css/ui-lightness/jquery-ui-1.9.2.custom.css index 330a89c..330a89c 100755 --- a/contexts/data/lib/jquery/css/ui-lightness/jquery-ui-1.9.2.custom.css +++ b/src/js/lib/jquery/css/ui-lightness/jquery-ui-1.9.2.custom.css diff --git a/contexts/data/lib/jquery/css/ui-lightness/jquery-ui-1.9.2.custom.min.css b/src/js/lib/jquery/css/ui-lightness/jquery-ui-1.9.2.custom.min.css index 294a082..294a082 100755 --- a/contexts/data/lib/jquery/css/ui-lightness/jquery-ui-1.9.2.custom.min.css +++ b/src/js/lib/jquery/css/ui-lightness/jquery-ui-1.9.2.custom.min.css diff --git a/contexts/data/lib/jquery/css/ui-lightness/jquery-ui.css b/src/js/lib/jquery/css/ui-lightness/jquery-ui.css index 59dfc3c..59dfc3c 120000 --- a/contexts/data/lib/jquery/css/ui-lightness/jquery-ui.css +++ b/src/js/lib/jquery/css/ui-lightness/jquery-ui.css diff --git a/contexts/data/lib/jquery/jquery-1.8.3.js b/src/js/lib/jquery/jquery-1.8.3.js index a86bf79..a86bf79 100755 --- a/contexts/data/lib/jquery/jquery-1.8.3.js +++ b/src/js/lib/jquery/jquery-1.8.3.js diff --git a/contexts/data/lib/jquery/jquery-ui-1.9.2.custom.js b/src/js/lib/jquery/jquery-ui-1.9.2.custom.js index a2ea7bc..a2ea7bc 100755 --- a/contexts/data/lib/jquery/jquery-ui-1.9.2.custom.js +++ b/src/js/lib/jquery/jquery-ui-1.9.2.custom.js diff --git a/contexts/data/lib/jquery/jquery-ui-1.9.2.custom.min.js b/src/js/lib/jquery/jquery-ui-1.9.2.custom.min.js index 9529672..9529672 100755 --- a/contexts/data/lib/jquery/jquery-ui-1.9.2.custom.min.js +++ b/src/js/lib/jquery/jquery-ui-1.9.2.custom.min.js diff --git a/contexts/data/lib/jquery/jquery-ui.js b/src/js/lib/jquery/jquery-ui.js index 072d3a5..072d3a5 120000 --- a/contexts/data/lib/jquery/jquery-ui.js +++ b/src/js/lib/jquery/jquery-ui.js diff --git a/contexts/data/lib/jquery/jquery.js b/src/js/lib/jquery/jquery.js index 6217889..6217889 120000 --- a/contexts/data/lib/jquery/jquery.js +++ b/src/js/lib/jquery/jquery.js diff --git a/contexts/data/lib/jshash/md5.js b/src/js/lib/md5.js index 8773a96..8773a96 100755..100644 --- a/contexts/data/lib/jshash/md5.js +++ b/src/js/lib/md5.js diff --git a/contexts/data/lib/phantomjs_jasmine/jasmine-1.0.2/MIT.LICENSE b/src/js/lib/phantomjs_jasmine/jasmine-1.0.2/MIT.LICENSE index 1eb9b49..1eb9b49 100644 --- a/contexts/data/lib/phantomjs_jasmine/jasmine-1.0.2/MIT.LICENSE +++ b/src/js/lib/phantomjs_jasmine/jasmine-1.0.2/MIT.LICENSE diff --git a/contexts/data/lib/phantomjs_jasmine/jasmine-1.0.2/jasmine-html.js b/src/js/lib/phantomjs_jasmine/jasmine-1.0.2/jasmine-html.js index 046cb5c..046cb5c 100644 --- a/contexts/data/lib/phantomjs_jasmine/jasmine-1.0.2/jasmine-html.js +++ b/src/js/lib/phantomjs_jasmine/jasmine-1.0.2/jasmine-html.js diff --git a/contexts/data/lib/phantomjs_jasmine/jasmine-1.0.2/jasmine.css b/src/js/lib/phantomjs_jasmine/jasmine-1.0.2/jasmine.css index 6583fe7..6583fe7 100644 --- a/contexts/data/lib/phantomjs_jasmine/jasmine-1.0.2/jasmine.css +++ b/src/js/lib/phantomjs_jasmine/jasmine-1.0.2/jasmine.css diff --git a/contexts/data/lib/phantomjs_jasmine/jasmine-1.0.2/jasmine.js b/src/js/lib/phantomjs_jasmine/jasmine-1.0.2/jasmine.js index 63e415d..63e415d 100644 --- a/contexts/data/lib/phantomjs_jasmine/jasmine-1.0.2/jasmine.js +++ b/src/js/lib/phantomjs_jasmine/jasmine-1.0.2/jasmine.js diff --git a/contexts/data/lib/phantomjs_jasmine/jasmine-reporters/jasmine.phantomjs-reporter.js b/src/js/lib/phantomjs_jasmine/jasmine-reporters/jasmine.phantomjs-reporter.js index c326ded..c326ded 100644 --- a/contexts/data/lib/phantomjs_jasmine/jasmine-reporters/jasmine.phantomjs-reporter.js +++ b/src/js/lib/phantomjs_jasmine/jasmine-reporters/jasmine.phantomjs-reporter.js diff --git a/contexts/data/lib/jasmine/jasmine_favicon.png b/src/js/lib/phantomjs_jasmine/jasmine_favicon.png Binary files differindex 218f3b4..218f3b4 100644 --- a/contexts/data/lib/jasmine/jasmine_favicon.png +++ b/src/js/lib/phantomjs_jasmine/jasmine_favicon.png diff --git a/contexts/data/lib/phantomjs_jasmine/phantomjs_jasminexml_runner.js b/src/js/lib/phantomjs_jasmine/phantomjs_jasminexml_runner.js index 8804a29..8804a29 100644 --- a/contexts/data/lib/phantomjs_jasmine/phantomjs_jasminexml_runner.js +++ b/src/js/lib/phantomjs_jasmine/phantomjs_jasminexml_runner.js diff --git a/contexts/data/lib/phantomjs_jasmine/utils/core.js b/src/js/lib/phantomjs_jasmine/utils/core.js index 8441e13..8441e13 100644 --- a/contexts/data/lib/phantomjs_jasmine/utils/core.js +++ b/src/js/lib/phantomjs_jasmine/utils/core.js diff --git a/contexts/data/lib/underscore.js b/src/js/lib/underscore.js index 32ca0c1..32ca0c1 100644 --- a/contexts/data/lib/underscore.js +++ b/src/js/lib/underscore.js diff --git a/contexts/data/fiveui/selenium/selenium-injected-compute.js b/src/js/selenium/selenium-injected-compute.js index d0327b3..d0327b3 100644 --- a/contexts/data/fiveui/selenium/selenium-injected-compute.js +++ b/src/js/selenium/selenium-injected-compute.js diff --git a/src/js/tests/.gitignore b/src/js/tests/.gitignore new file mode 100644 index 0000000..a9a1bd3 --- /dev/null +++ b/src/js/tests/.gitignore @@ -0,0 +1 @@ +reports/ diff --git a/contexts/data/tests/PhantomJSJasmineRunner.html b/src/js/tests/PhantomJSJasmineRunner.html index b240f46..e8e07e6 100644 --- a/contexts/data/tests/PhantomJSJasmineRunner.html +++ b/src/js/tests/PhantomJSJasmineRunner.html @@ -18,14 +18,14 @@ <script type="text/javascript" src="mock-storage.js"></script> <!-- source files --> - <script type="text/javascript" src="../fiveui/set.js"></script> - <script type="text/javascript" src="../fiveui/utils.js"></script> - <script type="text/javascript" src="../fiveui/chan.js"></script> - <script type="text/javascript" src="../fiveui/rules.js"></script> - <script type="text/javascript" src="../fiveui/messenger.js"></script> - <script type="text/javascript" src="../fiveui/url-pat.js"></script> - <script type="text/javascript" src="../fiveui/settings.js"></script> - <script type="text/javascript" src="../fiveui/state.js"></script> + <script type="text/javascript" src="../fiveui/js/set.js"></script> + <script type="text/javascript" src="../fiveui/js/utils.js"></script> + <script type="text/javascript" src="../fiveui/js/chan.js"></script> + <script type="text/javascript" src="../fiveui/js/rules.js"></script> + <script type="text/javascript" src="../fiveui/js/messenger.js"></script> + <script type="text/javascript" src="../fiveui/js/url-pat.js"></script> + <script type="text/javascript" src="../fiveui/js/settings.js"></script> + <script type="text/javascript" src="../fiveui/js/state.js"></script> <script type="text/javascript" src="../fiveui/injected/prelude.js"></script> <!-- spec files --> diff --git a/contexts/data/tests/README.md b/src/js/tests/README.md index dbd8435..dbd8435 100644 --- a/contexts/data/tests/README.md +++ b/src/js/tests/README.md diff --git a/contexts/data/tests/SpecRunner.html b/src/js/tests/SpecRunner.html index 4a7ec8c..3469bfd 100644 --- a/contexts/data/tests/SpecRunner.html +++ b/src/js/tests/SpecRunner.html @@ -4,26 +4,26 @@ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Jasmine Spec Runner v2.0.0-alpha</title> - <link rel="shortcut icon" type="image/png" href="../lib/jasmine/jasmine_favicon.png"> - <link rel="stylesheet" type="text/css" href="../lib/jasmine/jasmine.css"> + <link rel="shortcut icon" type="image/png" href="jasmine/jasmine_favicon.png"> + <link rel="stylesheet" type="text/css" href="jasmine/jasmine.css"> - <script type="text/javascript" src="../lib/jasmine/jasmine.js"></script> - <script type="text/javascript" src="../lib/jasmine/jasmine-html.js"></script> - <script type="text/javascript" src="../lib/jasmine/boot.js"></script> + <script type="text/javascript" src="jasmine/jasmine.js"></script> + <script type="text/javascript" src="jasmine/jasmine-html.js"></script> + <script type="text/javascript" src="jasmine/boot.js"></script> <script type="text/javascript" src="../lib/jquery/jquery-1.8.3.js"></script> <script type="text/javascript" src="../lib/underscore.js"></script> <script type="text/javascript" src="../lib/backbone.js"></script> <script type="text/javascript" src="mock-storage.js"></script> - <script type="text/javascript" src="../fiveui/set.js"></script> - <script type="text/javascript" src="../fiveui/utils.js"></script> - <script type="text/javascript" src="../fiveui/chan.js"></script> - <script type="text/javascript" src="../fiveui/rules.js"></script> - <script type="text/javascript" src="../fiveui/messenger.js"></script> - <script type="text/javascript" src="../fiveui/url-pat.js"></script> - <script type="text/javascript" src="../fiveui/settings.js"></script> - <script type="text/javascript" src="../fiveui/state.js"></script> + <script type="text/javascript" src="../fiveui/js/set.js"></script> + <script type="text/javascript" src="../fiveui/js/utils.js"></script> + <script type="text/javascript" src="../fiveui/js/chan.js"></script> + <script type="text/javascript" src="../fiveui/js/rules.js"></script> + <script type="text/javascript" src="../fiveui/js/messenger.js"></script> + <script type="text/javascript" src="../fiveui/js/url-pat.js"></script> + <script type="text/javascript" src="../fiveui/js/settings.js"></script> + <script type="text/javascript" src="../fiveui/js/state.js"></script> <script type="text/javascript" src="../fiveui/injected/prelude.js"></script> <script type="text/javascript" src="specs/set.js"></script> diff --git a/src/js/tests/build.mk b/src/js/tests/build.mk new file mode 100644 index 0000000..b49109d --- /dev/null +++ b/src/js/tests/build.mk @@ -0,0 +1,18 @@ + +js-test-dir := $(path) + +clean:: + $(RM) -r $(js-test-dir)/reports + + +# Jasmine Specs ############################################################### + +ifneq "$(PHANTOM_EXE)" "" + +test: test-js +test-js: + cd $(topdir)/src/js && $(PHANTOM_EXE) \ + lib/phantomjs_jasmine/phantomjs_jasminexml_runner.js \ + tests/PhantomJSJasmineRunner.html tests/reports/ + +endif diff --git a/contexts/data/lib/jasmine/MIT.LICENSE b/src/js/tests/jasmine/MIT.LICENSE index 7c435ba..7c435ba 100644 --- a/contexts/data/lib/jasmine/MIT.LICENSE +++ b/src/js/tests/jasmine/MIT.LICENSE diff --git a/contexts/data/lib/jasmine/boot.js b/src/js/tests/jasmine/boot.js index aea8e00..aea8e00 100644 --- a/contexts/data/lib/jasmine/boot.js +++ b/src/js/tests/jasmine/boot.js diff --git a/contexts/data/lib/jasmine/jasmine-html.js b/src/js/tests/jasmine/jasmine-html.js index dcc8913..dcc8913 100644 --- a/contexts/data/lib/jasmine/jasmine-html.js +++ b/src/js/tests/jasmine/jasmine-html.js diff --git a/contexts/data/lib/jasmine/jasmine.css b/src/js/tests/jasmine/jasmine.css index 0a0ce80..0a0ce80 100644 --- a/contexts/data/lib/jasmine/jasmine.css +++ b/src/js/tests/jasmine/jasmine.css diff --git a/contexts/data/lib/jasmine/jasmine.js b/src/js/tests/jasmine/jasmine.js index 32c580e..32c580e 100644 --- a/contexts/data/lib/jasmine/jasmine.js +++ b/src/js/tests/jasmine/jasmine.js diff --git a/contexts/data/lib/phantomjs_jasmine/jasmine_favicon.png b/src/js/tests/jasmine/jasmine_favicon.png Binary files differindex 218f3b4..218f3b4 100644 --- a/contexts/data/lib/phantomjs_jasmine/jasmine_favicon.png +++ b/src/js/tests/jasmine/jasmine_favicon.png diff --git a/contexts/data/tests/mock-storage.js b/src/js/tests/mock-storage.js index 71c667f..71c667f 100644 --- a/contexts/data/tests/mock-storage.js +++ b/src/js/tests/mock-storage.js diff --git a/contexts/data/tests/specs/messenger.js b/src/js/tests/specs/messenger.js index 12bd9e1..12bd9e1 100644 --- a/contexts/data/tests/specs/messenger.js +++ b/src/js/tests/specs/messenger.js diff --git a/contexts/data/tests/specs/prelude.js b/src/js/tests/specs/prelude.js index 31510e7..31510e7 100644 --- a/contexts/data/tests/specs/prelude.js +++ b/src/js/tests/specs/prelude.js diff --git a/contexts/data/tests/specs/rules.js b/src/js/tests/specs/rules.js index b9db6b3..b9db6b3 100644 --- a/contexts/data/tests/specs/rules.js +++ b/src/js/tests/specs/rules.js diff --git a/contexts/data/tests/specs/set.js b/src/js/tests/specs/set.js index a0dfb71..a0dfb71 100644 --- a/contexts/data/tests/specs/set.js +++ b/src/js/tests/specs/set.js diff --git a/contexts/data/tests/specs/settings.js b/src/js/tests/specs/settings.js index a89b532..a89b532 100644 --- a/contexts/data/tests/specs/settings.js +++ b/src/js/tests/specs/settings.js diff --git a/contexts/data/tests/specs/state.js b/src/js/tests/specs/state.js index 65ff0b1..65ff0b1 100644 --- a/contexts/data/tests/specs/state.js +++ b/src/js/tests/specs/state.js diff --git a/contexts/data/tests/specs/utils.js b/src/js/tests/specs/utils.js index f4ed399..f4ed399 100644 --- a/contexts/data/tests/specs/utils.js +++ b/src/js/tests/specs/utils.js |