Steps: 1. Go to marketplace.mozilla.org 2. Install a free web application 3. Uninstall the free web application 4. Go to app page for the app in step #2 Expected: The app install button should be showed as "install" Actual: The app install button is still showed as "installed." Under the hood, they are using getInstalled() to determine this.
Looks like this generally applies to getAll() and getInstalled()
Pushed patch to try, https://tbpl.mozilla.org/?tree=Try&rev=b7eafe9208af Builds to appear at: http://email@example.com
Working with Felipe, we've figured out the root cause. Looks like the calls to isLaunchable in getSelf/getInstalled/getAll/getNotInstalled is using the install origin, not the app origin. That explains why there's a lot of problems being seen.
Created attachment 638545 [details] [diff] [review] Patch Huh I was using the wrong origin to check if an app was installed, which had the amusing effect of considering if an app was installed or not based on if you had the Marketplace app itself installed
Did a good amount of testing with the try build on Windows - it works! Did tests such as: - Installing and uninstalling apps on marketplace - Viewing apps on the myapps dashboard - Installing apps with and without appcache support - Testing apps natively vs. acquired
Just tested with Linux and it's working.
Verified on Nightly for Windows 7, Windows XP, OS X 10.7, and Ubuntu 12.