Commit Graph

409 Commits

Author SHA1 Message Date
Edward Lee
ab278f01cd Bug 556509 - folders description not synchronised [r=mconnor]
Allow descriptions to be set on folder records and set description on creation.

--HG--
extra : rebase_source : d380f5d28130bd53532e5b4d293468aa053c19b2
2010-04-01 15:11:42 -07:00
Edward Lee
05af24a32c Bug 535326 - Need to rethink tab sync limit of 25 [r=mconnor]
Fit as many tabs as possible in 20000 characters by linearly estimating how many will fit then remove extras one by one.

--HG--
extra : rebase_source : 1ef3700a9cddd7e3cb0f96b9affada15e98ea672
2010-02-17 18:24:22 -08:00
Mike Connor
23d76a73c9 bug 539056 - Better Tab sync UI and discoverability, r=Mardak
--HG--
extra : rebase_source : d0c98d78b889ed74f5b130077a6ee1806bd81282
2010-03-12 16:14:09 -08:00
Paul O’Shannessy
9aefb399d5 Bug 555015 - JavaScript strict warning: bookmarks.js: undeclared variable record [r=Mardak]
Just make sure the record variable is declared before using it.
2010-03-25 13:58:27 -07:00
Edward Lee
21f7747109 Bug 548066 - JavaScript strict warning: clientData.js, line 194: reference to undefined property this.clients[id] [r=mconnor]
Get rid of get/setInfo on ClientEngine and ClientStore and expose functions to read/modify client data: stats, clearCommands, sendCommand. Also expose the local client information as local[ID,Name,Type,Commands] and rework the storage to use these instead of trying to keep the JS object clients entry in sync with prefs, etc. Update users of the old interface (service/tabs/chrome) to use the new local*. Set the client type based on app id instead of from each app's overlay.
2010-03-16 16:39:08 -07:00
Edward Lee
15e1f02e87 Bug 554427 - Move syncID from clients.js to service.js [r=mconnor]
Switch from Clients.syncID to this.syncID for service.js. Don't special case resetSyncID and just use = "".
2010-03-25 16:52:45 +00:00
Edward Lee
af0bf0ab2a Bug 546772 - Encrypt the clients records [r=mconnor]
Store data in cleartext instead of directly in the payload to have it encrypted with the CryptoWrapper. This cleans up some hacks needed to get the plain WBO client record to behave nicely with other encrypted data.
2010-03-16 16:31:55 -07:00
Edward Lee
dced4ea743 Bug 554472 - Only sync prefs under extensions.weave.prefs.sync. (with a trailing dot) [r=mconnor]
Add a "." to the end of WEAVE_SYNC_PREFS value and fix up uses that did extra work to remove the dot (or something that might not have been a dot).
2010-03-23 18:51:47 -07:00
Paul O’Shannessy
59471f450c Bug 548939 - Use SessionStore in tab engine [r=Mardak]
Created a fake SessionStore service for Fennec that imitates the parts of Firefox's SessionStore API that we need. Then used the now "consistent" SessionStore service in the Tabs engine.
2010-03-16 15:14:32 -07:00
Edward Lee
1ce05d4603 Bug 549633 - Standardize record creation so all SyncEngines encrypt data [r=mconnor]
Always add the id and encryption value so client and delete records can be encrypted.
2010-03-05 14:46:48 -08:00
Edward Lee
a9c2e6c4c2 Bug 549632 - Remove storage cache, which is mostly un/incorrectly used [r=mconnor]
Remove incorrectly used cache from some engines and clean up references from SyncEngine.
2010-03-05 14:43:11 -08:00
Paul O’Shannessy
f39831ac01 Bug 546397 - Exception: Clients.getClients()[Clients.clientID] is undefined [r=Mardak]
Overrode _wipeClient in ClientEngine; treat resetting the same as wiping.
2010-02-19 13:36:42 -08:00
Edward Lee
3273de6ac1 Bug 545785 - Actively remove passwords that we don't want to sync
Check if we haven't deleted yet, and if not, grab the guids for weave credentials and delete them from the server.
2010-02-11 17:14:57 -08:00
Edward Lee
1ad29052b7 Bug 545767 - Clean up various names/strings needed for each set of engines/stores/trackers
Pass the engine name when constructing a subclass engine and construct the store/tracker with the same name.
2010-02-11 15:29:15 -08:00
Edward Lee
b8de893593 Bug 545764 - Convert constructor -> _init pattern to just use constructor
Inline various _init calls and do super's init with <Super>.call(this, args..). Add various get/set sugar to those missing e.g., meta.keyring. Also simplify crypto record creation by setting cleartext in the parent.

--HG--
extra : rebase_source : 6c9a9f210f8f46ac338adb84188538e7353c9673
2010-02-11 15:25:31 -08:00
Paul O’Shannessy
a3f801887c Bug 545487 - Cleanup TabTracker_observe [r=Mardak]
Remove the "load" event listener and don't QI since we don't need to.
2010-02-11 15:08:28 -08:00
Edward Lee
e238de1fc6 Bug 545701 - explicitly exclude Weave password/passphrase from pw sync
Don't include weave passwords when getting all ids and ignore their changes.
2010-02-11 15:05:22 -08:00
Edward Lee
ed5e098629 Bug 544068 - Assume moved bookmarks should be where they're moved
Don't keep the annotation around in-case the predecessor/parent finally syncs because the user positioned it otherwise.
2010-02-03 15:34:42 -08:00
Edward Lee
39e968e8de Bug 531489 - weave lost bookmarks with same url
Do dupe detection for bookmarks like how we do folders/separators but check against the url/title. Add parentName to bookmark records, so bump version.
2010-01-25 09:33:49 -08:00
Edward Lee
4cbaa75427 Lower tab logging to trace when wrapping tabs. 2010-01-21 09:59:27 -08:00
Edward Lee
8dfdbe920a Bug 526937 - Bookmarks are re-uploaded when they get visited
Don't mark item as changed on a favicon notification to avoid churn that can result in merge messing up bookmark ordering.
2010-01-19 11:24:00 -08:00
Edward Lee
48b1cf979f Bug 537954 - Some tabs don't get synced
Listen for load before adding the unload listener (and the Tab listeners).
2010-01-06 09:54:15 -08:00
Edward Lee
d3218dee1f Bug 535479 - Be smarter in getting rid of the "remote tabs" notification
Add a tri-state pref that is unset, 0, or a number (modified time in seconds) and don't show the notification if it's in the "0" state. Unset pref means no modified time has been saved, and a non-0 state is the modified time of the last synced tab. So when tabs arrive with a different modified time, switch to the 0 state. Additionally, still remember if the user ever dismissed the notification and never show it again.
2009-12-17 12:20:07 -08:00
Edward Lee
1213f59b7e Bug 534923 - Only show Mobile Bookmarks if there are mobile bookmarks
Fix up existing users as well as only creating the place query under AllBookmarks if there are mobile bookmarks.
2009-12-15 14:21:13 -08:00
Edward Lee
baf9c41432 Bug 534687 - Weave's pref syncing can sync lightweight themes in a broken fashion
Trigger lightweight theme manager's currentTheme setter when changing the usedThemes pref.
2009-12-14 16:05:07 -08:00
Edward Lee
c77f5b2807 Have wipeRemote wipe just the engines' data and make sure the clients process the command. 2009-12-10 18:39:51 -08:00
Edward Lee
a48b0da141 Bug 532936 - Add root level node for bookmarks synced from Fennec
Create a mobile root in Firefox and link it to the Library UI as a query that fixes its own title if changed. Mark the mobile root on Firefox/Fennec as special so Weave uses "mobile" for the guid in the record, and items will appear in the appropriate folder.

--HG--
extra : rebase_source : fbd3afa2647204a370f7dacdf9d824e462ebb9b9
2009-12-10 16:12:14 -08:00
Edward Lee
6f16e5f19c Bug 532770 - Allow tab sync's filtered urls to be set by pref
Expose engine.tabs.filteredUrls as a string to be used as regex and filter case insensitively.
2009-12-03 14:54:23 -08:00
Edward Lee
4676b9cb18 Bug 488922 - Treat bookmarks restore specially
Add observers for bookmarks-restore-* and ignore changes during import and trigger a fresh start on success.
2009-12-02 19:20:44 -08:00
Edward Lee
bef67b3db3 Bug 532173 - Don't sync tabs of some pages (weave firstrun, about:blank)
Ignore certain filtered urls when creating a list of tabs for remote machines.
2009-12-02 14:46:02 -08:00
Edward Lee
08eca0017c Bug 530717 - sync after wipe local should always replace local values with remote
Always take the incoming item after a wipe and otherwise do the normal reconcile.
2009-12-02 14:44:52 -08:00
Edward Lee
c5bc7653dd Bug 531239 - clear out duplicate/old machines from Clients record
Get rid of persistent storage for clients and tabs to always fetch fresh records.
2009-12-02 14:44:17 -08:00
Edward Lee
a46e202447 Share tab-gathering code for both createRecord and locallyOpenTabMatches. 2009-12-01 11:36:56 -08:00
Edward Lee
eb87765d7b Bug 530823 - Engines need to be able to specify a prefName for sharing prefs (different history types)
Use prefName for checking if an engine is enabled and have forms share a prefName with history.
2009-11-30 12:15:18 -08:00
Edward Lee
d4295ef8e9 Remove unused prefs and imports. (Bug 524916)
--HG--
extra : rebase_source : 074e542f63ee840b61db7fe63a6c3540c13a31a5
2009-11-25 17:49:15 -08:00
Mike Connor
7e923534c2 archive local bookmarks before wiping
--HG--
extra : rebase_source : dd54af2118cf60c9e4f4b3bf08b7a5c61e9e78b8
2009-11-25 17:09:32 -08:00
Edward Lee
df947df75e Bug 531177 - Tabs don't sync from firefox (when there's lots of tabs)
Simplify tab record to just use deferGetSet like the other records and sort tabs based on their last usage to pick out a subset.
2009-11-25 15:22:45 -08:00
Edward Lee
dd2f688ee2 Bug 531171 - Tabs don't always update
Only expose that the tab engine knows about the current client's tabs, so always create/apply incoming and only create records tabs for local.
2009-11-25 15:17:39 -08:00
Edward Lee
877e53a9da Bug 531170 - Tabs don't sync from fennec
Add listeners for Fennec tab events the same way we do it for Firefox and share listener logic for various event types.

--HG--
extra : rebase_source : 685e45c16052db3d285c25c68db47680b7d15f72
2009-11-25 15:14:56 -08:00
Edward Lee
b4233752d2 Bug 524916 - remove any/all code/images/strings that we aren't using anymore
Remove unused sync engines (cookies, extensions, input, microformats, plugins, themes).
2009-11-24 16:02:55 -08:00
Edward Lee
c05e0c5f94 Remove trailing whitespace from the codebase. 2009-11-20 14:34:20 -08:00
Edward Lee
d032f1effe Bug 527790 - Allow client names to be different from the default "Firefox"
Generate a client name based on the logged in username, appname, hostname, and profile name.
2009-11-19 23:31:04 -08:00
Edward Lee
c9efc4abfe Bug 514545 - weave mangles bookmarks
For both folders and separators, use the parent name (not guid) in addition to the item's title/position to determine if it's a dupe. This modifies the bookmark format for folders and separators, so a storage version bump is needed.
2009-11-19 21:34:17 -08:00
Edward Lee
19934febcc Bug 507666 - Handle deleting places history
Use onBeforeDeleteURI to get the page's GUID and upload the delete record and process it by removing the page.
2009-11-18 11:47:25 -08:00
Edward Lee
ac2b6c824d Bug 529103 - Removing folders must use removeItem not removeFolder
Switch to Svc.Bookmark.removeItem from this._bms.removeFolder.
2009-11-18 10:24:09 -08:00
Edward Lee
8b8ea72a82 Bug 528343 - Tabs don't sync
Set the current client on any tab change for tracker.changedIDs and reset that when sync finishes.

--HG--
extra : rebase_source : 3100141bc1fdfaaa959b5f990a9538527761aace
2009-11-12 14:48:54 -08:00
Edward Lee
79f980a983 Bug 527767 - Sync more history items on first sync
Syncing 1000 items should be good enough for anybody......
2009-11-12 13:51:28 -08:00
Edward Lee
2c1baed50d Remove unwanted info logging for bookmark indices. 2009-11-11 15:20:19 -08:00
Edward Lee
89460e2378 Bug 527766 - Sync history pages with a single visit
Backout bug 518972 (6954c93b8903) so now we push all data instead of pages with more than 1 visit.
2009-11-10 15:52:40 -08:00
Mike Connor
14acb12656 bug 518075 - tweak original patch and item values 2009-11-09 12:57:58 -05:00