Repository navigation
Expand file tree
/
Copy pathversioning.js
More file actions
executable file
·61 lines (55 loc) · 2.11 KB
/
Copy pathversioning.js
File metadata and controls
executable file
·61 lines (55 loc) · 2.11 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
// Copyright 2010 and onwards Google Inc.
//
// 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.
/**
* @fileoverview Performs any update actions when a new version is installed.
* @author manas@google.com (Manas Tungare)
*/
/**
* The namespace for versioning related functionality.
* @namespace
*/
var versioning = {};
/**
* Checks the current version versus the last-recorded version, and performs
* any upgrade actions that might be needed.
*/
versioning.checkVersion = function() {
var storedVersion = window.localStorage['version'];
var currentVersion = chrome.app.getDetails().version;
if (!storedVersion || currentVersion != storedVersion) {
versioning.onVersionUpdated_(storedVersion, currentVersion);
// Save new version.
window.localStorage['version'] = chrome.app.getDetails().version;
}
};
/**
* Callback when a new version is detected. Based on the from- and to- versions,
* any specific upgrade actions can be performed.
* @param {string} fromVersion The last-installed version.
* @param {string} toVersion The currently-installed version.
* @private
*/
versioning.onVersionUpdated_ = function(fromVersion, toVersion) {
versioning.showAnnouncement_();
};
/**
* Shows an announcement message above the list of events. This is only shown
* once, immediately after upgrading to a new version. The next time the browser
* action popup is opened, the new version string has already been written to
* persistent local storage, and this message does not get shown again.
* @private
*/
versioning.showAnnouncement_ = function(message) {
$('#announcement_new_features').css('display', 'inline-block');
};