Updates:
        Cc: [email protected]

Comment #2 on issue 9841 by [email protected]: REGRESSION: download shelf  
disappears when "Save As" dialog pops up
http://code.google.com/p/chromium/issues/detail?id=9841

[+cc ben for UI discussion]

My change (r12799, http://codereview.chromium.org/45048) exposes an issue  
with the
way that the Save Page feature uses the download shelf.

Previous to my change, saving a page added an item to the download shelf.  
Saving a
second page replaced the first item on the download shelf. Since this  
happened
synchronously, the removal of the first item and addition of the second  
item made it
look like the shelf didn't disappear. The removal and addition actually  
hides then
shows the shelf, but the very next paint operation processed only shows the  
final
state with the second saved page displayed on the shelf.

My change makes this operation asynchronous:
- saving a page displays the shelf
- saving a second page removes the first saved page (possibly hiding the  
shelf if the
first save was the only item on the shelf) and displays the save dialog
- clicking "OK" in the dialog displays the shelf and adds the second saved  
page to it

I guess you could call this a regression, but I think it begs a more  
fundamental user
interface question: if a user saves multiple pages, should we only show the  
latest
save (our current behavior), or should we show them all the way we do with  
downloads?

The reason that we only show the latest save page is that the Save Page  
feature
creates a fake download in order to use the download shelf. The download  
manager
isn't aware of it, so the "fake" download representing the saved page is  
stored in
the WebContents. The next time a page is saved in that WebContents, it over  
writes
the first. This implementation is incredibly hacky, but fixing it is beyond  
the scope
of milestone-2.0.

My proposal is that we leave this bug as is for now, and that we re-think  
how saved
pages are treated (i.e. should they just be considered downloads, managed  
and
displayed by the Download Manager?).

--
You received this message because you are listed in the owner
or CC fields of this issue, or because you starred this issue.
You may adjust your issue notification preferences at:
http://code.google.com/hosting/settings

--~--~---------~--~----~------------~-------~--~----~
Automated mail from issue updates at http://crbug.com/
Subscription options: http://groups.google.com/group/chromium-bugs
-~----------~----~----~----~------~----~------~--~---

Reply via email to