| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Only add placeholders for an item visible in the filmstrip. If a session
is done for an item not visible, it is less janky for the user to see the
standard gray placeholder while loading the image from disk.
Pruned older methods of determining filmstrip visibility, none of which
worked and relied on older code assuming the camera preview was an item
in the filmstrip, including 'sticky' filmstrip item bits. Added a method
to CameraAppUI that proxies the FilmstripLayout visibility, which is
actually what app uses to show/hide the filmstrip.
Bug: 19517380
Change-Id: I5e2a61b55aa2045bfd09f495dd02cdcb9c65dc68
|
|
|
|
|
|
|
|
|
|
| |
This fixes the swipe guesture problem by removing the mostly
unused canSwipeInFullScreen attribute on filmstrip items and
checking existing usages to ensure they still work.
Bug: 18948437
Change-Id: I7d8c9fba4b0cf3db6fc3d60afe37d527c0732318
|
|
|
|
|
|
|
|
| |
Bug: 19164291
Bug: 19220382
Bug: 19020507
Change-Id: Id1c2011b29b1cee206593fb395d9b4a4c89e71ab
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Remove unused fields and code.
- Rename classes and methods to be consistent with usage
- Make data more immutable
- Add Location and Metadata classes for typed data access.
- Use Date instead of long for DateTime representations.
- Filmstrip prefix for filmstrip specific code.
- Cleaner Glide implementations.
- Initialize Glide bitmap pool.
- Eagerly load large image sizes when scroll stops.
Change-Id: I3b51d42416ca076c80bf7db441d257659174b47d
|
|
|
|
|
|
|
|
| |
Bug: 18105354
Fixes the bug where we try to cast a context to an activity.
Change-Id: I3e82a2cda5fe004768276a4d48c07d75738b2a5e
|
|
|
|
|
| |
Bug: 15646701
Change-Id: I7c1de761fc10486b417a25ebc8469cebaf840a1c
|
|\
| |
| |
| |
| | |
* commit 'dd9739a98402b8d325ec34a1a2ce743b871aa325':
add filmstrip DPAD capabilities
|
| |
| |
| |
| |
| |
| |
| |
| | |
this CL adds left/right DPAD handling to filmstrip. If you reach the
first item, the filmstrip is hidden and user is back in capture.
Bug: 13589550
Change-Id: Id2b2d52da31ef65cb568ce4ef3f5cdc9384caf1f
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Adds Glide, an image loading library, to handle image caching and bitmap reuse.
This is working, but there are still some significant todos:
1. We're loading larger images than we need.
2. We're not aggressively cancelling loads so if you scroll far
it takes longer than necessary for the image to appear.
3. Video thumbnail loading is slow (will require changes to Glide to improve).
Change-Id: I01387429068451b923509f78c6d5f8ce115e74ad
|
|\|
| |
| |
| |
| |
| |
| | |
gb-ub-photos-denali
* commit '48d6492ccc56cb7d62a30ecc1f8576dc44e25718':
Best effort fix to prevent stretched videos.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
To avoid increasing load times, we now only parse video headers asynchronously
while the user scrolls. We make a best effort attempt to prefetch video headers
while we're scrolling to avoid the layout jumping around when we update
dimensions for an item that's visible to the user.
Bug: 13505062
Change-Id: Ib7d7835c39d50f22f45db5673ec4c49d84b81124
|
|/
|
|
| |
Change-Id: Ic2b8bbc251c9b19e658412ac3885a0cb83680809
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
bug:13176987
bug:13410244
This refactor is to make the relationship between Controller, Model and View
clearer. Now controller (CameraActivity in our case) takes the full
responsibility to add/remove data. The model (CameraDataAdapter, LocalData and
its subclasses) is only responsible to store the data with correct types and
data structures. The view (Filmstrip) is a totally passive component who takes
care of how the data is presented and define how the user can interactive with
it.
The session API should not be exposed to the filmstrip MVC architecture and
instead we should make them as independent as possible. The controller should
maintain the logics of how to interact between these components.
Major changes in this CL:
1. ImageData.getContentUri() -> getUri(). The Uri is no longer a content Uri.
2. LocalDataAdapter: addNewSession() and finishSession() removed. We don't
assume the session concept in data adapters anymore.
3. LocalDataAdapter: addPhotoData() removed.
4. LocalDataAdapter: addData() added (original private in CameraDataAdapter)
5. LocalDataAdapter.Listener: onNewDataAdded() removed (since it's actually
triggered by the caller who is adding the data.)
Session API change:
CaptureSession.onPreviewUpdated() is changed to onPreviewAvailable. The module
now should decide the timing to notify the availability of the preview through
it.
CaptureSession.updatePreview(String path) is added. Not all the module can have
a preview when the session is created. Panorama/PhotoSphere creates the preview
after a background processing. The preview is stored as a file and should be
update to the internal preview storage through CaptureSession.updatePreview().
Change-Id: Id73c8f289bd4b3c13149da1b72c99fc6bab5849e
|
|
|
|
|
| |
bug:13184003
Change-Id: I6ad2bf2c4d0da45764907d819a5d4651a9887209
|
|
|
|
|
| |
bug:12451161
Change-Id: Ie5a8a2911ed4b5ce831331ca7e7600d6d13659b7
|
|
|
|
| |
Change-Id: If2615de75ed555c34316686de536d3289c834e75
|
|
|
|
|
| |
Bug: 12589465
Change-Id: I13b20b3e56b1ae4285ecc00ca4c2fb5a42fa75ed
|
|
|
|
|
|
|
| |
And callbacks for new state events also.
bug:12468756
Change-Id: I0ebdd99f251394a871c1e050e565fc5cd1706324
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When the data is updated, the animation is interrupted because of the original
view is replaced by the new one from the new data. We should copy the original
animation and continue.
Handles the condition when the last photo is deleted.
Also some refinement of the codes.
bug:12196441
bug:12476802
Change-Id: I2139b09bf5f958af6fa21b91e3d0c14908e1ba79
|
|
|
|
|
| |
Bug:11137777
Change-Id: I6f947e2981d012c1693ef0475a2776a7e6275de5
|
|
|
|
|
|
|
|
|
|
|
| |
1. Metadata added to allow for different attributes to describe LocalData.
2. Move the metadata loading process to image data loading.
3. LocalData.view() removed. The invocation of external viewer is moved back to
the activity.
bug:12197251
Change-Id: I496b018186f7a4b4818b976201703b966103a636
|
|
|
|
|
|
|
|
|
| |
1. isPhoto() removed since it's for checking if we can edit it.
Use isDataActionSupported() instead since is designed for this purpose.
2. AuxInfoSupportCallback is moved to LocalData since filmstrip doesn't care
about this and it's only available on the local data.
Change-Id: I4eed477d6cdbe729904577b77a7ba97eed90074f
|
|
|
|
|
|
|
|
|
|
|
| |
1. The control logic should stay in the controller instead of the view.
2. Fix various issues.
3. Remove some unnecessary hacky checks.
bug:12089863
bug:12095905
Change-Id: I6fceb5bf1a3121c45bc509f2fa96d01db2cedb5d
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
1. Rename filmstrip.FilmstripDataAdapter to filmstrip.DataAdapter.
2. Rename filmstrip.FilmstripImageData to filmstrip.ImageData.
3. Move filmstrip.FilmstripListener to filmstrip.FilmstripController.Listener.
4. Add FilmstripContentPanel interface.
5. Move ui.FilmstripView to widget.FilmstripView
6. Move ui.FilmstrpLayout to widget.Filmstripview
7. Move ui.FilmstripBottomControls to widget.FilmstripBottomLayout
8. Extracted interface from widget.FilmstripBottomLayout as
filmstrip.BottomControls
Change-Id: I83bdd89e2a48a98002a4fed7dab011b28036d1a0
|
|
|
|
|
|
|
| |
Enumerated the possible states of filmstrip and have proper callbacks when
entering/leaving each of the states.
Change-Id: I5a6e931095bb0792e0832fda11d1f1b5ba850263
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug: 11120164
Bug: 10073814
This adds a new common CameraServices interface and a method to every
module to get it. Through this we can expose common services and due to
the interface, we can easily mock them for tests.
Also makes the MediaSaveService not a service anymore.
Change-Id: Ifa093efd4ba53c2955ccc2a990b4f18610c29944
|
|
|
|
|
|
| |
Accidentally submitted the patch set 1 before uploading this one.
Change-Id: Iee3c751473b67140ea07c84bdde7811b06060bb4
|
|
|
|
|
|
|
|
| |
1. Use Context as possible as we can instead of the concrete implementaion
Activity.
2. Update/add some comments.
Change-Id: If80b2a8ab9ddeb297b8ec821568a74db4f52104f
|
|
1. Create filmstrip package.
2. Move ImageTaskManager to under package app/.
3. Adde app UI abstract layer AppUi.
Change-Id: I9d640de65c59196c5d3e5c3a8901bb3220b29f62
|