Commit Graph

514 Commits

Author SHA1 Message Date
Edward Lee
31270d064c Move _preprocess to before applyIncoming to share code for create/update/remove. 2009-08-15 01:00:32 -07:00
Edward Lee
cbba430108 Rename weaveId to just GUID and share a id<->guid function across store and tracker. 2009-08-15 00:59:49 -07:00
Edward Lee
fae7aaa071 Temporarily append everything and don't use sortindex for ordering within a folder. 2009-08-15 00:57:09 -07:00
Edward Lee
2335b057db Get rid of depth and sort on index instead. 2009-08-15 00:56:27 -07:00
Edward Lee
3ca750f464 Remove meta/mini records. Bye! 2009-08-13 18:50:54 -07:00
Edward Lee
39895d48b2 Put Annotations in Svc and expose a get/set Utils.anno call to use from bookmarks. 2009-08-13 17:59:26 -07:00
Edward Lee
983afb76a9 Remove unused bookmark annotations/constants. 2009-08-13 17:43:20 -07:00
Edward Lee
bc5f3d3be8 Bug 507296 - Sync bookmarks and history in batched mode. r=thunder
Wrap the original SyncEngine._sync function with a call to runInBatchMode, so SQL disk writes happen at the end of batch mode instead of on every change.
2009-07-30 11:52:26 -07:00
Edward Lee
1a4c241fc9 Change client engine to override findLikeId instead of recordLike to save on some work (iterating over changed ids). 2009-07-28 10:07:07 -07:00
Edward Lee
6ddbaa9a8e Bug 506795 - Handle adding duplicate logins. r=thunder
Refactor reconcile to call findLikeId that by default will look for recordLike in the outgoing queue as it does now. Override findLikeId for password engine to search local logins.
2009-07-28 10:06:02 -07:00
Edward Lee
551f097468 Convert various debug messages to trace. 2009-07-22 21:40:18 -07:00
Edward Lee
4f7ab3c5c2 Remove pref tracker init debug message. 2009-07-14 18:47:29 -07:00
Edward Lee
68d361380a Bug 504230 - Use Engine's logging level for Store and Tracker
Use the log.logger.engine.* prefs to determine what the Store and Tracker should log with. This requires putting the same engine name on each Store/Tracker object, so there's some duplicate string values right now.
2009-07-14 18:34:03 -07:00
Edward Lee
9fde263097 Bug 504216 - Force various engines to be disabled
Have the disabled engines return null for enabled instead of the pref's true/false.
2009-07-14 17:03:57 -07:00
Anant Narayanan
7cd35a2c36 Limit form history records (bug 494952, r=thunder)
--HG--
extra : rebase_source : c3e983d30a14efd972eea2651a59be76924da256
2009-07-14 12:28:18 -07:00
Edward Lee
5ad22f9709 Bug 479189 - weave does not sync tag smart folders properly
Create a new record type, BookmarkQuery, to handle place: uri smart bookmarks. Store what tag name the query wants and lookup the id for that tag on other machines on create/update.
2009-07-13 17:43:15 -07:00
Edward Lee
22570f2932 Bug 503938 - Tags with a single bookmark keep generating new tag ids
Share a tagging code for create/update that will tag a dummy uri temporarily while it untags the bookmark to make sure every tag has at least one child during this untag/tag process.
2009-07-13 13:40:49 -07:00
Edward Lee
6ddece8b22 Bug 502482 - error while syncing bookmarks from server
Set the item type for generic PlacesItems, but don't do anything when trying to create it.
2009-07-09 17:15:00 -07:00
Edward Lee
5c482eea0d merge weave. resolve comments added to resource.js. 2009-07-09 11:21:20 -07:00
Edward Lee
1c1025b37d Convert a log.info to log.debug for passwords so it doesn't clutter the brief log. 2009-06-25 22:52:28 -07:00
Edward Lee
39f333a78e Bug 500598 - Undefined item in tabContainer.childNodes after closing tabs
The childNodes NodeList keeps its indices even after removal, so it's safer to convert the array-like thing into an actual array. Condense the QueryInterface code to the instanceof magic.
2009-06-25 22:46:14 -07:00
Edward Lee
84c52a6411 merge weave. resolve addition of kSpecialIds to bookmarks.js near removal of Async.sugar. 2009-06-23 22:34:57 -07:00
Anant Narayanan
22bd439624 Change priority of some log messages to trace 2009-06-22 18:19:42 -07:00
Edward Lee
eeef9a8201 Bug 487282 - "browser is null" error in tabs.js
Share browser detection code for register and unregister tab listeners and better check for tabbrowser windows.
2009-06-22 15:53:42 -07:00
Edward Lee
ad7d001bb3 Bug 498924 - Refactor bookmark special ids out of BookmarksStore
Lazily load places ids for a given weave id/place name pair into kSpecialIds and update all consumers. Expose a Svc.Bookmark in utils.
2009-06-17 09:28:15 -07:00
Edward Lee
3ef568c718 Cleanup/refactor followup to bug 481327.
Change _ignore to take itemId to find folderId and pull out addChanged/getItemGUID/upScore to addId.
2009-06-17 08:51:54 -07:00
Edward Lee
34400917b0 Bug 481327 - Script gets stuck during startup. r=Mardak 2009-06-17 08:51:54 -07:00
Mikhail Stepura (mishail)
fde4deb743 Bug 486042 - "Load this bookmark in the sidebar" status not synced. r=Mardak 2009-06-16 16:16:39 -07:00
Edward Lee
57adfb688b merge weave 2009-06-06 13:12:03 -07:00
Edward Lee
df1fc601da Fix form engine to correctly pass in the engine. 2009-06-05 18:36:31 -07:00
Edward Lee
6bc0e717ec Clean up various engines to remove Async.sugar and random self/yields. 2009-06-05 15:34:40 -07:00
Edward Lee
68ce1e4224 Change SyncEngine._reconcile to not be async/yield. 2009-06-04 14:18:04 -07:00
Edward Lee
428d54a14a Change Resource.get() to be sync (no callback) and fix up call sites used for login + sync now. 2009-06-04 10:16:07 -07:00
Wladimir Palant
753b7da199 Bug 495996 - Bookmark observer doesn't implement onBeforeItemRemoved method. r=Mardak 2009-06-02 21:25:55 +02:00
Wladimir Palant
8f33b68063 Bug 495924 - TabTracker wrongly assumes that "this" pointer will be set correctly for event handlers 2009-06-02 11:25:37 +02:00
Anant Narayanan
252a823626 Preference sync (bug #428370) 2009-05-24 02:11:05 +02:00
Anant Narayanan
dbad6932cb Use first login found if there are multiple GUIDs 2009-05-24 00:25:30 +02:00
Anant Narayanan
b6a3ce9d6e Use searchLogins instead of caching passwords (bug #489268) 2009-05-24 00:03:53 +02:00
Edward Lee
0a32933db7 Bug 493004 - Create stubs of unimplemented engines to list them as disabled (extension, microformat, plugin, theme)
Add the 4 engines with just the base code to set their name and register them for Firefox.
2009-05-14 11:50:59 -05:00
Edward Lee
93847aa32d Bug 493002 - List partially implemented engines (cookies, input history) as disabled
Import the outdated engines, but delete their pref so they show up as disabled. Clean up the old engines a little bit so they don't allocate unnecessarily and to not use syncCore.
2009-05-14 11:43:56 -05:00
Edward Lee
690c26f9d5 Fix form engine displayname to displayName 2009-05-14 11:09:08 -05:00
Edward Lee
48f3b8796d Remove old Firefox 3 places DB code.
Min version is 3.1/5, so we grab DBConnection from places directly now.
2009-05-13 16:31:42 -05:00
Myk Melez
bab5749a17 bug 492435: work around crasher bug 492442 by not calling isVisited for a history entry without a URL; r=thunder 2009-05-11 16:11:04 -07:00
Edward Lee
e55cf3a52a Bug 488190 - Use record properties instead of cleartext properties
Switch pretty much all references to cleartext in modules/engines/ to just use the record. Also clean up some references to null cleartext to use deleted. The only reference to cleartext is to iterate over that hash in bookmarks.
2009-04-13 16:39:29 -05:00
Edward Lee
2c5fc6c54f Bug 488170 - Consistently set record cleartext URIs as text spec uris
Switch cleartext properties to Uri that always takes a text spec, so eventually URI refers to nsIURI. GeneratorURIs seems to have been broken either way.. makeURI of an already URI and storing of a URI into cleartext. This landed with changes to keys, so the server wipe also handles the local name changes.
2009-04-13 16:39:29 -05:00
Edward Lee
b7a138755c Bug 488142 - Make it easier to add simple deferred cleartext/payload values
Add a couple Utils helper to create a pair of simple [gs]etters that use a hash property instead. Apply this to various records: WBORecord, {Priv,Pub}Key, Crypto{Meta,Wrapper}, and every engine's type records. Migrate by making sure key data exists (name change).
2009-04-13 16:39:29 -05:00
Edward Lee
253a6ca0d8 Bug 488182 - Use an Iterator to grab both key and values from cleartext for processing bookmarks
Get rid of extra record.cleartext references within the for/each/switch -- even for unused keys like incomingSharedAnno.
2009-04-13 16:18:11 -05:00
Edward Lee
9a582a606e Bug 488165 - Correct set the record object type when processing records
Set _recordObj for Bookmarks/History engines and override PlacesItem.decrypt to switch itself to the right type after CryptoWrapper decrypts the payload.
2009-04-13 14:54:31 -05:00
Dan Mills
c92f210ac9 oops fix missing .prototype 2009-04-10 17:30:05 -07:00
Dan Mills
a789863032 Remove __proto__.__proto__ it's fail-prone 2009-04-10 16:08:31 -07:00
Dan Mills
67fd1f1e82 can't get guid on expiration 2009-04-10 16:04:13 -07:00
Edward Lee
f1f0742fae Bug 487541 - form submission caused exception 0x80004002 (NS_NOINTERFACE) [nsISupports.QueryInterface]
Get rid of the QueryInterface and just use instanceof while copying the logic of nsFormHistory::Notify to avoid divergent logic until satchel provides a notification.
2009-04-08 22:48:26 -05:00
Dan Mills
ebca2e9c0f don't track history deletes at all; don't built id->guid mapping hash for history tracker 2009-04-08 18:11:14 -07:00
Myk Melez
c699fdf732 switch from --utc to -u flag to enable UTC output for date command so it works on both Linux/Windows (which support --utc in addition to -u) and Mac OS X (which only supports -u) 2009-04-08 15:00:02 -07:00
Edward Lee
d6a16ace0a Bug 487378 - Use the app name as the default client name
Use nsIXULAppInfo to get the name and remove Fennec specific bits.
2009-04-08 02:12:57 -05:00
Mikhail Stepura
e97e9389db Bug 486481 - Weird behavior when syncing the bookmark with tags
Add the remaining special top level folders and ignore them for certain behavior like getAllIDs and wipe. Have the tracker ignore changes to things in the tags folder.
2009-04-07 23:17:40 -05:00
Edward Lee
25b484a48a Bug 487363 - Share bookmark tracker ignore logic
Share the ignore logic that takes a parent folder and ignore if the engine says so or it's a livemark.
2009-04-07 22:56:04 -05:00
Edward Lee
09653caf66 Bug 487338 - Track special folder weave GUIDs <-> bookmark id mapping
Create a specialIds hash and use it to for getting weaveId/id, determine top level, if a folder is a root, getting all ids, wiping, and tracker ignoring.
2009-04-07 19:22:36 -05:00
Anant Narayanan
da004b2423 Update form sync engine to work with Weave0.3/FF3.5 2009-04-06 19:05:16 +02:00
Edward Lee
3993035a59 Bug 482670 - WBORecord should implement a .deleted property
Expose a .deleted property that engines can set to true to store an even thinner deleted payload (empty string "" instead of "[null]") on the server. Handle deserializing of deleted records by setting the property. Note: Engines must set their payloads to something JSON-able if it's not a delete record.
2009-04-03 12:38:47 -05:00
Edward Lee
eebdf48521 Bug 486667 - Clients get amnesia -- forget who they are after a wipe
Set the local client info after resetting the clients store hash
2009-04-03 09:26:12 -05:00
Edward Lee
2e72dcf2a7 Bug 480929 - RSS names not synced
Set the title in the record just like any other bookmark (folder)
2009-04-01 17:12:08 -05:00
Edward Lee
0d1e91ca16 Bug 482896 - Unify local client data and remote client data storage
Initialize unified client store from disk json and local prefs and update on pref changes + sync. Clean up client engine code (local vs inherited, alphabetical), and create a helper modify() to save snapshots.
2009-04-01 01:56:32 -05:00
Edward Lee
b0633f2208 Bug 486234 - Give changes json file name for history, passwords 2009-03-31 20:07:43 -05:00
Edward Lee
ba7af5037c Bug 486230 - Share json disk caching with Utils.json{Load,Save} 2009-03-31 19:52:16 -05:00
Edward Lee
4f6ebe6be5 Bug 481741 - Switch to JSON from nsIJSON 2009-03-31 14:09:38 -05:00
Dan Mills
fd14693e9f Bug 478328: delete old history data from the server 2009-03-30 15:19:00 -07:00
Dan Mills
9df4203349 remove dump() debugging from tabs engine 2009-03-30 15:18:20 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
53fa9e5846 Bug 485539 - added guard to the tab engine to handle the case where there are undefined items in tabContainer.childNodes. 2009-03-27 11:06:43 -07:00
Dan Mills
51c55c8f41 Bug 484848: try #3 2009-03-26 10:58:54 -07:00
Dan Mills
f6f3adc09e Bug 481319: try again 2009-03-25 19:47:37 -07:00
Dan Mills
4abd146e4f merge upstream changes 2009-03-25 19:33:51 -07:00
Dan Mills
a3725fab15 Bug 484848: modifyLogin sends an array of nsILoginMetaInfos to observers 2009-03-25 19:27:24 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
b690a2858d Fixed name of TabStore.changeItemID so that it correctly overrides the abstract base class method. Whoops. 2009-03-25 17:36:11 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
6555e1e1ef Experimenting with getting tab last-used-time data on Fennec 2009-03-18 12:40:27 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
0f809c8372 Removed unused code from tab tracker. 2009-03-17 18:02:13 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
a6e05ab37a TabTracker now keeps track of when each tab was most recently used; tabStore wraps this data for sync, and fennec UI uses it to sort incoming tabs by most-recently-used date. This fixes 481326. 2009-03-17 17:57:53 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
95ae06e497 If you click the button to show synced tabs before Weave has been configured, it will now take you straight to the sign-in screen. Fixes bug 482818. 2009-03-16 16:49:56 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
859e51e20b The remote-tabs menu (on both firefox and fennec) no longer shows tabs you already have open locally. Fixes bug 480405. 2009-03-12 15:54:26 -07:00
Edward Lee
dfc2d1f68a Bug 481266 - Provide a way to perform actions on remote clients. r=thunder 2009-03-03 17:29:35 -06:00
Dan Mills
489e86bdc5 oops, client was not updating depth/index of records 2009-03-11 02:02:58 -07:00
Dan Mills
7b9eedde66 Bug 478327: Send minimal '[null]' payload for deleted records 2009-03-11 01:40:04 -07:00
Edward Lee
a45ed6623b Bug 482178 - Clean up services -> lazy services. r=thunder 2009-03-10 06:30:30 -05:00
Dan Mills
2e61ae02f3 remove dump() debug statements 2009-03-10 01:20:50 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
02d92a86ca Fennec now launches first run page, and updates extensions.weave.lastversion, so that it's no longer resetting syncId and therefore resetting the server every single time it tries to sync. Also set the download in resource.js to use LOAD_BYPASS_CACHE. Together these changes seem to fix bug 480270. 2009-03-07 00:55:47 -08:00
Edward Lee
edda1db597 Bug 480457 - Expose a resetClient API for weave service and engines. r=thunder 2009-02-26 22:36:14 -08:00
Dan Mills
bf29e922ae disable recordLike for clients 2009-03-03 11:53:56 -08:00
Dan Mills
47ac6a5d0c create new records with correct guid set 2009-03-03 01:48:13 -08:00
Dan Mills
26e63650e6 override _recordLike for passwords; add logging calls; make getAllIDs return full nsLoginInfos 2009-03-03 01:32:10 -08:00
Dan Mills
3e1235a9e5 Switch away from __defineGetter__ due to bug 481104; explicitly cache logins in password engine; whitespace fixes 2009-03-02 18:55:26 -08:00
Anant Narayanan
0f6fdde06c Remove getter that fixes the 'two-store' problem 2009-03-03 01:15:48 +01:00
Anant Narayanan
088a5457a5 Rename methods to be less confusing 2009-03-03 00:57:37 +01:00
Anant Narayanan
05dfbc7c8a Password sync for 0.3 (bug #468697) 2009-03-03 00:42:57 +01:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
ff833098f5 Resource.js now always validates the cache (VALIDATE_ALWAYS) when downloading stuff. This seems to fix bug 480270 on Firefox but not on Fennec. 2009-02-27 18:28:26 -08:00
Dan Mills
f17dafb475 fix args list for observe() 2009-02-26 17:37:49 -08:00
Dan Mills
7cdfbeed20 track local client data changes so we can upload it as necessary 2009-02-26 15:06:57 -08:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
85f96743c6 Changed how firefox populates tabs-from-other-computers menu and how it opens a tab picked from that menu, so that it can restore the history of the tab and not just the latest URL. 2009-02-25 00:56:46 -08:00
Dan Mills
c46ffd1071 random fixes, actually syncs client data now :) 2009-02-20 01:52:07 -08:00
Dan Mills
bc248c608c don't load old crypto module 2009-02-20 01:49:00 -08:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
94e49ca097 Tab sync now skips empty tabs. This fixes bug 479216. 2009-02-19 11:20:23 -08:00
Dan Mills
128ac21239 go back to storing the local client name and type as prefs. also store a 'syncID' (gets reset upon a server wipe) 2009-02-19 04:07:23 -08:00
Dan Mills
d0e9169992 pass the cryptoMetaURL to the store's createRecord 2009-02-19 00:36:55 -08:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
2d099f33ea Fixed a bug with my fix -- I had inadvertently created an infinite loop. 2009-02-18 22:23:48 -08:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
cffc8dfb3a Fixed a bug in how Firefox gets URL history to save when syncing tabs up. Also some more work on the Fennec tabs UI. 2009-02-18 18:18:50 -08:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
59677a949c First pass at Fennec tab UI. There's now a button that opens a fullscren panel from the left, which contains the names of all remote tabs. They're not clickable yet. 2009-02-17 16:28:54 -08:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
b1ffa834cc Tab sync works, and has UI in firefox (though not yet in Fennec) 2009-02-11 19:14:25 -08:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
4f990b3937 Fixed bug in tab encoding in Firefox. 2009-02-10 22:15:25 -08:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
941849dd9d Fixed tab encoding bug on Fennec 2009-02-10 21:54:11 -08:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
1506738c72 Fennec tabs and Firefox tabs now handled in different functions, and the Fennec one at least works. 2009-02-10 19:23:06 -08:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
c5df6dd7dd SessionStore not available on Fennec, so now using alternate methods to get the list of tabs. 2009-02-09 21:16:18 -08:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
6137ee85a6 Fixed some minor problems with TabEngine; identified places where TabEngine will need to use alternate methods to work on Fennec. 2009-02-09 20:23:42 -08:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
98ba92c195 Switched TabTracker to register listeners on window open and remove them at window close -- need to find an alternate way to make this work on Fennec, where windows don't have tabContainers. 2009-02-06 17:50:12 -08:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
bab93ee645 Added debugging info to TabEngine. Instantiated and registered TabEngine in both Firefox weave glue and Fennec weave glue. 2009-02-06 11:19:50 -08:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
cde0013f0f Rewrote tabs engine to work with 0.3 API. (Not yet tested). 2009-02-04 19:51:20 -08:00
Dan Mills
5b9b4696f2 ignore all events when tracker.ignoreAll is true; ignore most bookmark annotations (except for the ones we sync) 2009-02-02 11:43:06 -08:00
Dan Mills
abdf4fec19 set record ID for bookmark deletes too 2009-01-27 17:23:23 -08:00
Dan Mills
465c145c78 set record ID in history store when creating a record 2009-01-27 17:08:47 -08:00
Dan Mills
03d78b3d84 set record IDs inside the store; fix bookmarks tracker, it was ignoring change events (e.g., changed title and such) 2009-01-27 16:54:54 -08:00
Dan Mills
a3d9640e3c Make records not extend Resource, instead they have a serialize() method that can be used to create a Resource for uploading if necessary.
Use global service instances under Svc.*
Consolidate various record managers (caches/convenience factories) to extend the same base object
Log exceptions caught by notify wrapper
2009-01-27 13:35:10 -08:00
Dan Mills
be7f853da4 make it so clients list can be modified from any client, and so it doesn't upload client info on every sync; clients list no longer stores data (except the local client's guid) in the firefox prefs 2009-01-23 15:09:21 -08:00
Dan Mills
a94f85b7c3 wrap microsummary creation code in try/catch; catch unknown items during onItemMoved (should not happen, but...) 2009-01-21 19:04:13 -08:00
Dan Mills
914ac78e2a simpler reconciliation for history 2009-01-20 13:13:31 -08:00
Dan Mills
704d1c079a fix url vs uri typo 2009-01-15 18:43:44 -08:00
Dan Mills
6891a3b69a merge upstream changes 2009-01-15 15:53:51 -08:00
Dan Mills
fedd698bbb fix typo 2009-01-15 15:53:34 -08:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
e823363952 Merged 2009-01-15 14:06:00 -08:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
cd797f05a7 Added a method to historyStore called tempTableExists which does a SELECT (rather than using tableExists) to correctly tell whether a temp table is there or not, so that historyEngine will work correctly on both Fennec and Firefox (See bug 472963) 2009-01-15 14:05:50 -08:00
Dan Mills
3dd2a14339 Bug 468671: Don't synchronize livemarks. Based on patch by Jorge Alves <jag.alves@gmail.com> 2009-01-15 13:58:59 -08:00
Dan Mills
67f99f74cd add some extra log info to engine; have tracker ignore all changes when applying a change to prevent the tracker from generating new guids for new items before the store has a chance to set the right one 2009-01-14 22:01:04 -08:00
Dan Mills
23aaa6fcb7 disable unused engines; fix trackers trying to call enable which is gone now; improve bookmarks tracker logging 2009-01-13 16:55:51 -08:00
Dan Mills
d34aba46fd make tracker return true/false when adding a changed ID to indicate if it was a valid add or not; change bookmarks & history trackers to match; fix some problems in bookmarks tracker 2009-01-13 15:55:35 -08:00
Dan Mills
445916b2e6 ignore/unignore specific weave IDs instead of a blanket enable/disable of the tracker during sync. 2009-01-13 14:43:21 -08:00
Dan Mills
51d51a26ed small getchildren/getsiblings cleanup 2009-01-13 13:40:40 -08:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
730c9b4ef5 History sync now works in Fennec, by simply skipping all the temp tables that don't exist in Fennec. This should also fix bug 472853 for weave in Firefox. 2009-01-09 15:44:27 -08:00
Dan Mills
3c586f5121 merge upstream changes 2009-01-08 21:34:43 -08:00
Dan Mills
ee4044e7e1 when an orphan bookmark is found, reparent it to the unfiled bookmarks folder 2009-01-08 21:33:59 -08:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
308841e718 Merged 2009-01-08 16:59:56 -08:00
Dan Mills
793c17b023 commit so hg will let me merge 2009-01-08 16:57:35 -08:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
8bff01bd48 The Weave check box on the Fennec preferences screen now logs you in/out when you click it in addition to enabling/disabling the scheduler. Improved the fennec-connect page by making the text fields auto-select when you click in them and turning the 'accept TOS' check box into a button. 2009-01-08 16:37:36 -08:00
Dan Mills
f65179b732 set guid when creating history entries 2009-01-07 17:46:31 -08:00
Dan Mills
7167b95ceb Bug 472480: catch errors when changing history item IDs 2009-01-07 15:01:12 -08:00
Dan Mills
ff240dd3ce add clients sync (list of clients with names and types); make it simpler to create Engine subclasses; remove the 2nd 'authenticator' parameter for Resources; resetServer is now wipeServer; consider 0 an invalid place ID (fixes bug when calculating item depths); add a Svc global exported from utils.js where commonly used services can live 2009-01-06 13:54:18 -08:00
Dan Mills
767ad5d9b3 update history engine to work again with latest engine changes, and re-enable history sync 2009-01-03 01:04:17 -08:00
Dan Mills
34a114606d fix depth/index record generation 2009-01-02 21:13:32 -08:00
Dan Mills
df54949485 extra debugging to catch getFolderIdForItem errors 2009-01-02 19:35:23 -08:00
Dan Mills
fd1579088c fix tracker's onItemRemoved 2009-01-02 16:16:38 -08:00
Dan Mills
5e7867a4de add a _getWeaveParentIdForItem method; fix getAllIDs; add a createMetadataRecord method 2009-01-02 13:49:19 -08:00
Dan Mills
5e3ac9586e add a generic cache class for storing records during reconciliation. cache has 100 item limit, and is cleared before and after reconciliation so the OS can reclaim memory after GC 2008-12-30 23:52:20 -08:00
Dan Mills
380b614133 make engine keep less records in memory by limiting the outgoing queue to a maximum of 100 records, and fetch the rest from the store each time 2008-12-29 23:28:17 -08:00
Dan Mills
6b260498e0 switch to generating individual bookmark records directly from the places store, without using a cache (to improve memory performance); create objects for bookmark types; temporarily disable history sync 2008-12-28 19:59:44 -08:00
Dan Mills
58318f5332 remove commented-out code 2008-12-26 21:50:07 -08:00
Dan Mills
62a45ad0ab Various engine/bookmark changes:
* Rely on the server to sort incoming records, remove all sorting code client-side.
* Streamline sync to be able to process incoming records one at a time, as soon as they are downloaded.  This changes reconciliation to be able to process a single incoming record.
* Engine base class will automatically convert parentid, depth, and sortindex into toplevel WBO objects.  This is good for now but kinda broken, engine subclasses should really be generating WBO records themselves.
* Since index is now a toplevel WBO property, there is no need for the bookmarks sync code to subclass recordLike.
* Refactor bookmarks store to be a little cleaner and work directly with records instead of "commands".
2008-12-23 11:30:31 -08:00
Dan Mills
92a77b80e1 remove accidentally committed logging calls 2008-12-23 11:23:10 -08:00
Dan Mills
efdd9ff7cf fix typo in history sql queries, clarify valid sort order values for collections 2008-12-19 17:00:12 -08:00
Dan Mills
08512b99a5 change engine to process (download, reconcile, apply changes) incoming records one by one 2008-12-19 11:48:09 -08:00
Dan Mills
d55df6a1f4 implement the awe (or tears) inducing places-style sql queries -- history sync works pretty well now 2008-12-18 22:39:32 -08:00
Dan Mills
e21bb9c514 typo fix 2008-12-18 01:09:17 -08:00
Dan Mills
9768e6c566 sync visit times and transition types for history 2008-12-17 16:04:03 -08:00
Dan Mills
06dc4da97f sync only the last 150 history items (pending some special sauce to sync high-scoring items); various sql fixes. history is syncing now, though there are bugs here and there 2008-12-17 02:32:00 -08:00
Dan Mills
32773c0f83 override _itemExists, itemExists (no _) checks for cached items, then calls that 2008-12-17 02:29:28 -08:00
Dan Mills
c02d11a89e api change for stores, deal with records not 'commands' 2008-12-16 17:06:45 -08:00
Anant Narayanan
ea93b73081 Make Form history sync work again with new engine 2008-12-13 16:33:04 +01:00
Dan Mills
f1a5b78d89 merge upstream changes 2008-12-12 13:57:05 -08:00
Dan Mills
6d599af9b4 closer to history somewhat working. need to rethink approach because of performance problems 2008-12-12 13:55:58 -08:00
Dan Mills
3c88a35efd remove slightly misleading comment 2008-12-12 13:54:19 -08:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
1e27ccd917 Merged 2008-12-11 15:19:43 -08:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
db031ee612 On Fennec there is no microsummaries service, so I made the BookmarksEngine catch the exception if the service is undefined, and skip commands that would require it to create a microsummary, logging warnings instead. 2008-12-11 14:26:20 -08:00
Dan Mills
022ceb5055 closer to history working 2008-12-10 00:57:27 -08:00
Dan Mills
3ef1c0d9b1 enable history sync (not working yet) 2008-12-09 12:26:14 -08:00
Dan Mills
f2e4594263 make changeItemID exclusively a store method 2008-12-08 13:21:25 -08:00
Dan Mills
9070a62677 remove sync cores, they are no longer used; remove sharing code from bookmarks (we can bring it back when we need it again, needs work); have the engine give hints to the store about when to wrap all items and cache them (to make subsequent calls to wrap one item fast); move serializeItem/getAllIDs into the store 2008-12-08 09:53:32 -08:00
Dan Mills
b8a8a42755 tracker now caches places id -> guid mappings, since otherwise it can't retrieve the correct guid on item removal (because the callback happens after the item is removed) 2008-12-06 00:12:40 -08:00
Dan Mills
f1332902ba parentGUID -> parentid 2008-12-05 03:36:27 -08:00
Dan Mills
95b8e357b2 disable tracker for entire sync run. make sure tracker is re-enabled at the end 2008-12-05 00:55:19 -08:00
Dan Mills
c1a443df70 use callbacks instead of snapshot diffs to figure out what changes to send to the server 2008-12-05 00:39:54 -08:00
Dan Mills
dd8e0e678b fix bookmarks tracker by removing yield calls (which of course don't work as callbacks for nsIBookmarksObserver) 2008-12-02 16:46:24 -08:00
Dan Mills
a67aabffa4 add logic to detect when the same item is in both incoming & outgoing queues, but with different IDs - change the local ID in that case 2008-11-27 00:25:28 +09:00
Dan Mills
c221d2ea8e decrypt incoming items all in one go so as to sort them by index (which is inside the payload); don't attempt to change the index of an item if we're also changing its folder; only change index/parent if it's different from current value 2008-11-26 14:07:18 +09:00
Dan Mills
36a866416f query the bookmarks service to find out if we have an item (instead of our snapshot cache) 2008-11-25 14:49:18 +09:00
Dan Mills
fb99c9f85e fix bookmark deletion sync 2008-11-25 01:49:02 +09:00
Dan Mills
35bbc1b8c0 work with NewEngine 2008-11-20 09:21:12 +09:00
Dan Mills
6f6665b8e1 remove some sharing code, derive from NewEngine 2008-11-06 19:18:46 -08:00
Dan Mills
d3af90034a hg merge 2008-11-03 15:02:00 -08:00
Dan Mills
6151afb26d fix log4moz calls (new api), fix module imports for renamed modules 2008-11-03 15:00:38 -08:00
Dan Mills
6a2010fc4c disable bookmark sharing hooks 2008-10-16 12:30:30 -07:00
Dan Mills
75326713c1 Bug 443489: use the correct cookie xpcom interface 2008-10-16 12:29:21 -07:00
Dan Mills
e53290c477 catch exceptions from microsummaries that don't have a static title set 2008-08-13 15:23:15 -07:00
Dan Mills
72f3cc9e31 Bug 450396: password engine does not define a tracker 2008-08-13 15:19:56 -07:00
Dan Mills
556e90536f merge upstream changes 2008-08-08 14:43:36 -07:00
Dan Mills
1f877adb30 move some code from the engine to remote.js; rename FileEngine to BlobEngine (since it doesn't actually sync complete files); clean up SyncEngine's sync method 2008-08-08 14:42:57 -07:00
Anant Narayanan
c200956d6a Syncing for Awesome bar (bug 437133, r=thunder) 2008-08-07 20:00:35 -07:00
Anant Narayanan
94b9dfcd2e Automated merge with ssh://anarayanan@mozilla.com@hg.mozilla.org/labs/weave 2008-08-04 17:23:36 -07:00
Anant Narayanan
8d3528d073 Asynchronous bookmark sharing (bug 449113, r=thunder) 2008-08-04 17:23:23 -07:00
Dan Mills
c5a94ec81c filter out invalid tags when applying edit commands 2008-07-31 00:21:22 -07:00
Dan Mills
0102f2cd60 more tab sync fixes, only disposing is left to fix; also allow the notify wrapper to pass along an optional data payload 2008-07-30 21:58:13 -07:00
Dan Mills
16810a84f4 get tab sync halfway working again, with fileengine 2008-07-30 00:05:09 -07:00
Dan Mills
0ecc2cdce5 sync the *latest* 10 back-button entries per tab (not the earliest ones) 2008-07-29 15:37:59 -07:00
Dan Mills
58affe8131 Implement FileEngine 2008-07-25 17:02:43 -07:00
Dan Mills
c678010dcf split Engine into SyncEngine and FileEngine 2008-07-25 01:06:23 -07:00
Dan Mills
8a7e0e07a2 only wrap the first 10 entries in a tab 2008-07-23 15:46:13 -07:00
Dan Mills
112006ce5f rollback last commit (1843a139184a), it causes cookie unit test to fail 2008-07-16 21:11:18 -07:00
Dan Mills
76d45e6917 Bug 443489: Use nsICookie2 interface instead of nsICookie. Patch by fabrice@bellet.info 2008-07-16 20:51:25 -07:00
Chris Beard
e9ac166a41 * major revision to the login dialog to be more robust, adding error handling, styling and a help link
* some minor hacking of the login progress to improve performance
* expanded the application exit sync dialog to be a general modal sync dialog that will display whenever appropriate (e.g. during initial setup, on manual "sync now" requests, and on application exit)
* added a progress meter and status messages to the modal sync dialog to provide users with a better understanding of what's going on, and to assist in debugging
* added ability to cancel a modal sync request, including on application exit. when cancel is clicked on by the user, it will attempt to cancel the sync at the next opportunity (i.e. before the next sync engine is processed)
2008-07-09 17:17:24 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
98215f2fc8 Made bookmarkSharingManager._updateOutgoingShare tolerant of outgoing shares that are lacking a server path annotation: it will warn that they're invalid and return, rather than dying. 2008-07-09 16:57:55 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
436fb329bb Made wrapping of outgoing shares not crash if an outgoing share is missing an exptected annotation. 2008-07-09 13:45:10 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
3cc4b5541f Restored a line in bookmarkSharingManager.js which I took out by accident when removing debugging dumps and stuff, changeset 969. It should not have been taken out; without it you get 'mounts undefined' error. 2008-07-09 13:24:49 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
a0611ee8e1 I think I have fixed updateIncomingShare now. So everything should work, if I share with a user not myself. 2008-07-08 22:39:05 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
7f36e552e6 Removed a bunch of dump statements that were in bookmarkSharingManager for old debugging stuff that is now done; they were just cluttering up the log. 2008-07-08 15:05:24 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
cfe420f221 updateOutgoingShare now explicitly encodes data to json before encrypting and uploading. 2008-07-08 14:52:31 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
5d937affe2 Fixed a typo in sendXmppNotification call 2008-07-08 14:51:14 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
2895b903a2 Fixed another trivial bug in BookmarkSharingManager._stopSharing that was making it fail at sending out the xmpp notification. 2008-07-08 14:19:26 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
55ec19cf3c Fixed some trivial bugs in BookmarkStore._wrapMountOutgoing that were preventing the outgoing share from working properly. 2008-07-08 14:15:55 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
2b8d2d7cb3 Factored the sending of xmpp notifications in bookmarkSharingManager out into a separate function, to save some duplicated code and make it easier to break xmpp stuff into a separate class later. Also made the bookmarkSharingManager cache the current weave username, which it uses a lot. Finally it now prepends /user/this._myUsername/ to server URLs to make them into absolute paths before sending them to the sharing partner over xmpp, which fixes a leftover TODO from a copule days ago. 2008-07-08 14:11:21 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
1cf9a1dea9 Fixed a bunch of bugs in bookmark share: stuf related to server-side paths being incorrect (because the defaultPrefix in DAV was getting reset to an empty string or was getting applied wrong). Discovered that updateOutgoingShare and updateIncomingShare were both calling the same _wrapMount() function, which was incorrect, so I broke that up and fixed what parts are meant to be outgoing and which incoming. 2008-07-08 01:18:30 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
9cfef4be35 Fixed a whole bunch of bugs in bookmark share, mostly related to adding in needed JsonFilters for remote Resources and fixing the server paths which are passed into DAV for the keyring file and encrypted share data files. (Also fixed a minor bug in DAV itself so that mkcol won't quit right away if you pass it something that starts with a slash.) 2008-07-03 17:57:21 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
f11ad3f3e3 Updated a couple of comments in bookmark sharing 2008-07-01 14:41:04 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
11dda58df6 Fixed yet another typo: this._sharing._share, not this._sharing.share. 2008-07-01 10:35:15 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
b7f7372c9f Fixed typo where undefined value was getting passed into share and stopSharing: should be node.itemId, not node.id 2008-07-01 10:31:16 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
fd7f338963 Fixed missing import 2008-07-01 10:27:19 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
a410545ba4 Fixed another typo 2008-07-01 10:26:01 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
fcb7743ce0 Fixed typo in BookmarkSharingManager._bms initialization 2008-07-01 10:24:52 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
10d9360015 Merged 2008-07-01 10:18:43 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
ba7249a10a Made _share() and _stopSharing() take bookmark item ID numbers instead of XUL nodes. 2008-07-01 10:18:35 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
aa859a7626 Made _stopSharing and _stopOutgoingShare more fault-tolerant (they will no longer die if the expected annotation is missing. 2008-07-01 09:58:00 -07:00
Dan Mills
802f7a254d fix cookie command logging; skip cookie commands for items we don't have 2008-06-30 23:26:35 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
5d960d2e8f Combined shareData and stopSharingData into one function to reuse code; made it so that if it gets called when Weave.DAV is already locked, instead of failing it sets up an observer that will trigger the share to happen as soon as the sync-succeeded or sync-failed message is received. 2008-06-30 22:30:04 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
dae06b83f1 Added test_bookmark_sharing to version control; note this doesn't pass right now (and in fact the main test is commented out.) 2008-06-30 18:50:06 -07:00
Myk Melez
3f7efe892f bug 442711: validate virtual tabs to make sure they have the minimal information necessary to recreate them before trying to save them or notify the user about them 2008-06-30 15:13:07 -07:00
Anant Narayanan
7f8e383db6 Fix syntax errors that were causing unit tests to fail 2008-06-30 12:26:41 -07:00
Anant Narayanan
645c447eb6 Fix small bug with PasswordTracker returning scores > 100 2008-06-30 11:33:25 -07:00
Anant Narayanan
f7911b9746 Primitive password tracking support (bug 435320, r=thunder) 2008-06-30 11:19:07 -07:00
Dan Mills
cbd9cd6819 import async module 2008-06-29 17:37:11 -07:00
Dan Mills
a4ae67b71a define _resetGUIDs in store 2008-06-29 17:36:59 -07:00
Dan Mills
091c571bd1 import async module 2008-06-29 17:36:35 -07:00
Dan Mills
293b220818 use this._lookup instead of command.data for remove commands 2008-06-29 17:36:13 -07:00
Dan Mills
3d16ec76a6 fix cooe engine's resetGUIDs method by importing async module; don't call runInBatchMode in bookmark engine's resetGUIDs, it doesn't work atm 2008-06-29 11:44:27 -07:00
Dan Mills
80417871c4 merge upstream changes 2008-06-29 07:07:11 -07:00
Dan Mills
e03543007a make resetguids async 2008-06-29 07:00:53 -07:00
Anant Narayanan
d2a1e9e87d Make PasswordStore process removeCommands correctly (bug 442090, r=thunder) 2008-06-28 01:13:14 -07:00
Anant Narayanan
089c1c0f42 General restructure for performance improvements (bug 441907, r=thunder) 2008-06-27 20:16:43 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
448ef4478e Merged 2008-06-26 17:01:12 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
d654677b9a Fixed several minor bugs with bookmark sharing 2008-06-26 17:00:55 -07:00
Anant Narayanan
62a0ebb31e Add license headers to all files which didn't have them. 2008-06-26 14:49:01 -07:00
Dan Mills
277753d21a tone down tab engine debugging output a bit 2008-06-26 14:34:32 -07:00
Justin Dolske
4abaf0f90c bustage fix: call this.foo(), not foo(). 2008-06-25 18:32:59 -07:00
Anant Narayanan
b53674f5dc Handle removeCommand in FormEngine correctly. (bug 441874, r=thunder) 2008-06-25 17:09:18 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
3f37543011 Set up bookmarkEngine._incomingShareOffer to use Myk's new Notification stuff to offer a notification to the user, asking them to accept or reject the incoming share. 2008-06-25 15:54:33 -07:00
Myk Melez
b379fdece8 the tabs engine needs a constant 2008-06-25 13:51:32 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
6f37a50f99 The share/stop sharing menu item is now added only to normal bookmark folders: Not to the main bookmark menu or to magic folders like 'recently tagged' or whatever. 2008-06-25 11:58:04 -07:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
b24d0c7180 Moved all of the bookmark-share stuff out of the bookmarkEngine class into a new BookmarksSharingManager class. 2008-06-24 21:15:14 -07:00