harmattan/cameraplus
7 years agoChangelog for 0.0.3
Mohammed Sameer [Sat, 2 Mar 2013 21:49:18 +0000 (23:49 +0200)]
Changelog for 0.0.3

7 years agoGenerate proper thumbnails for portrait images.
Mohammed Sameer [Sat, 2 Mar 2013 21:47:32 +0000 (23:47 +0200)]
Generate proper thumbnails for portrait images.

How we create thumbnails for portrait is really messy.
I am sure there is a better way to tell Quill to generate proper
portrait thumbnails without having 2 display levels but I don't know how.
The issue is we generate screen sized thumbnails for landscape
but we generate half screen sized thumbnails for portrait

7 years agoChangelog for 0.0.2
Mohammed Sameer [Tue, 26 Feb 2013 22:33:07 +0000 (00:33 +0200)]
Changelog for 0.0.2

7 years agoDon't set minimum preview size for quill.
Mohammed Sameer [Tue, 26 Feb 2013 22:29:16 +0000 (00:29 +0200)]
Don't set minimum preview size for quill.

Setting setMinimumPreviewSize() will cause Quill to crop the thumbnail
to ensure it fits within the size requested.

7 years agoIncrease the container height when we are in portrait to account for less width
Mohammed Sameer [Tue, 26 Feb 2013 19:28:02 +0000 (21:28 +0200)]
Increase the container height when we are in portrait to account for less width
This fixes overlapping title and creation date for post capture in portrait

7 years agoChangelog for 0.0.1
Mohammed Sameer [Mon, 25 Feb 2013 23:09:29 +0000 (01:09 +0200)]
Changelog for 0.0.1

7 years agoStore captures underneath MyDocs/DCIM
Mohammed Sameer [Mon, 25 Feb 2013 23:06:42 +0000 (01:06 +0200)]
Store captures underneath MyDocs/DCIM

7 years agoUpdated copyright year
Mohammed Sameer [Sun, 24 Feb 2013 19:01:55 +0000 (21:01 +0200)]
Updated copyright year

7 years agoDebian packaging for Harmattan
Mohammed Sameer [Sat, 23 Feb 2013 21:31:02 +0000 (23:31 +0200)]
Debian packaging for Harmattan

7 years agoIf the user has a lot of free space (8 GB for example)
Mohammed Sameer [Sun, 24 Feb 2013 16:58:17 +0000 (18:58 +0200)]
If the user has a lot of free space (8 GB for example)
then we will overflow the unsigned long int thus we use a 64 bits "int"

7 years agoDon't set temporaryFilePath so we can use the default
Mohammed Sameer [Sun, 24 Feb 2013 15:04:33 +0000 (17:04 +0200)]
Don't set temporaryFilePath so we can use the default

7 years agoIgnore the artist size limit. Will fix if someone complains!
Mohammed Sameer [Sun, 24 Feb 2013 13:02:34 +0000 (15:02 +0200)]
Ignore the artist size limit. Will fix if someone complains!

7 years agoqmldir file for declarative library
Mohammed Sameer [Sat, 23 Feb 2013 22:07:49 +0000 (00:07 +0200)]
qmldir file for declarative library

7 years agoSVG icon
Mohammed Sameer [Sat, 23 Feb 2013 22:07:31 +0000 (00:07 +0200)]
SVG icon

7 years agoAdded cameraplus.ini to store application specific settings
Mohammed Sameer [Sat, 23 Feb 2013 20:54:16 +0000 (22:54 +0200)]
Added cameraplus.ini to store application specific settings

7 years agoSet the model to undefined instead of 0
Mohammed Sameer [Thu, 14 Feb 2013 00:28:50 +0000 (02:28 +0200)]
Set the model to undefined instead of 0

7 years agoSet the model only after we have changed the aspect ratio
Mohammed Sameer [Thu, 14 Feb 2013 00:22:22 +0000 (02:22 +0200)]
Set the model only after we have changed the aspect ratio

7 years agoGet rid of ImageSettingsDialog.js
Mohammed Sameer [Thu, 14 Feb 2013 00:20:03 +0000 (02:20 +0200)]
Get rid of ImageSettingsDialog.js

7 years agoEmit aspectRatioChanged() after we populate the model with new resolutions.
Mohammed Sameer [Thu, 14 Feb 2013 00:19:38 +0000 (02:19 +0200)]
Emit aspectRatioChanged() after we populate the model with new resolutions.

This allows us to avoid creating all buttons then recreating them
after setting aspect ratio upon the construction of settings dialog

7 years agoUse font.capitalization instead of the custom javascript function used and return...
Mohammed Sameer [Wed, 13 Feb 2013 23:10:51 +0000 (01:10 +0200)]
Use font.capitalization instead of the custom javascript function used and return back image resolution name

7 years agoEnable resolution changing only if camera is idle
Mohammed Sameer [Wed, 13 Feb 2013 22:59:40 +0000 (00:59 +0200)]
Enable resolution changing only if camera is idle

7 years agoGet rid of VideoSettingsDialog.js
Mohammed Sameer [Wed, 13 Feb 2013 22:31:31 +0000 (00:31 +0200)]
Get rid of VideoSettingsDialog.js

It has only one function and can be inlined in the QML file

7 years agoMove video resolution settings to a separate component
Mohammed Sameer [Mon, 11 Feb 2013 23:50:23 +0000 (01:50 +0200)]
Move video resolution settings to a separate component

7 years agoUse a Component for initializing VideoSettingsDialog in order to decrease startup...
Mohammed Sameer [Mon, 11 Feb 2013 23:41:31 +0000 (01:41 +0200)]
Use a Component for initializing VideoSettingsDialog in order to decrease startup time

7 years agoDon't paint system background
Mohammed Sameer [Mon, 11 Feb 2013 23:18:04 +0000 (01:18 +0200)]
Don't paint system background

7 years agoNo need for the resolution name. Megapixels should be fine
Mohammed Sameer [Mon, 11 Feb 2013 23:17:26 +0000 (01:17 +0200)]
No need for the resolution name. Megapixels should be fine

7 years agoDisable ROI before opening settings dialog
Mohammed Sameer [Mon, 11 Feb 2013 00:24:07 +0000 (02:24 +0200)]
Disable ROI before opening settings dialog

ImageSettingsDialog is now a component in order to decrease startup time

7 years agoMove image aspect ratio and resolution settings to its own component
Mohammed Sameer [Sun, 10 Feb 2013 22:30:30 +0000 (00:30 +0200)]
Move image aspect ratio and resolution settings to its own component

7 years agoImplemented a component with a switch and a text label and use it in various dialogs
Mohammed Sameer [Sun, 10 Feb 2013 18:13:47 +0000 (20:13 +0200)]
Implemented a component with a switch and a text label and use it in various dialogs

7 years agoAdjust sound volume depending on whether a headset is connected or not
Mohammed Sameer [Mon, 4 Feb 2013 23:54:00 +0000 (01:54 +0200)]
Adjust sound volume depending on whether a headset is connected or not

7 years agoAdd rules to install qtcamera, declarative bindings and the application
Mohammed Sameer [Mon, 4 Feb 2013 23:36:26 +0000 (01:36 +0200)]
Add rules to install qtcamera, declarative bindings and the application

7 years agoBuild declarative plugin as a plugin
Mohammed Sameer [Mon, 4 Feb 2013 23:36:10 +0000 (01:36 +0200)]
Build declarative plugin as a plugin

7 years agoCleaned up PKGCONFIG packages
Mohammed Sameer [Mon, 4 Feb 2013 19:12:59 +0000 (21:12 +0200)]
Cleaned up PKGCONFIG packages

7 years agoRename Notifications to DeclarativeQtCameraNotifications
Mohammed Sameer [Mon, 4 Feb 2013 19:03:30 +0000 (21:03 +0200)]
Rename Notifications to DeclarativeQtCameraNotifications

Also move constructor and distructor implementation to the header file.

7 years agoRemove temporarily file after we open it
Mohammed Sameer [Mon, 4 Feb 2013 08:55:51 +0000 (10:55 +0200)]
Remove temporarily file after we open it

This avoids leaving stall files if anything happens

7 years agoCleaned up PKGCONFIG
Mohammed Sameer [Mon, 4 Feb 2013 01:25:55 +0000 (03:25 +0200)]
Cleaned up PKGCONFIG

7 years agoTurn stuff under declarative into a real QML extension
Mohammed Sameer [Mon, 4 Feb 2013 00:59:26 +0000 (02:59 +0200)]
Turn stuff under declarative into a real QML extension

7 years agoDisable debug by default
Mohammed Sameer [Sun, 3 Feb 2013 23:42:10 +0000 (01:42 +0200)]
Disable debug by default

7 years agoFocusReticle now points ROI regions obtained from QtCamera
Mohammed Sameer [Sat, 2 Feb 2013 20:36:50 +0000 (22:36 +0200)]
FocusReticle now points ROI regions obtained from QtCamera

7 years agoDeclarative ROI can now report unnormalized ROI coordinates using the normalize property
Mohammed Sameer [Sun, 3 Feb 2013 18:34:01 +0000 (20:34 +0200)]
Declarative ROI can now report unnormalized ROI coordinates using the normalize property

7 years agoSet area used to calculate primary index to 1x1
Mohammed Sameer [Sun, 3 Feb 2013 19:38:42 +0000 (21:38 +0200)]
Set area used to calculate primary index to 1x1

We are dealing with normalized coordinates where maximum width and height would be 1

7 years agoCorrectly emit videoResolutionChanged()
Mohammed Sameer [Sun, 3 Feb 2013 14:34:58 +0000 (16:34 +0200)]
Correctly emit videoResolutionChanged()

We were calling the wrong function in QtCamViewfinderRendererMeeGo::setVideoSize()
thus we were not really emitting the needed signal

7 years agoQtCamRoiPrivate::primaryRegion() should return the index of rectangle not -1
Mohammed Sameer [Sat, 2 Feb 2013 20:35:46 +0000 (22:35 +0200)]
QtCamRoiPrivate::primaryRegion() should return the index of rectangle not -1

7 years agoAdded ROI an face detection
Mohammed Sameer [Tue, 29 Jan 2013 19:14:01 +0000 (21:14 +0200)]
Added ROI an face detection

7 years agoset device property if we don't use a wrapper too
Mohammed Sameer [Tue, 8 Jan 2013 00:52:00 +0000 (02:52 +0200)]
set device property if we don't use a wrapper too

7 years agoSet device property when we create source.
Mohammed Sameer [Mon, 7 Jan 2013 23:19:01 +0000 (01:19 +0200)]
Set device property when we create source.

This seems to have been dropped when the function got refactored.

7 years agoInitialize viewfinderFilters to null
Mohammed Sameer [Mon, 7 Jan 2013 22:20:45 +0000 (00:20 +0200)]
Initialize viewfinderFilters to null

If the configuration file doesn't specify any filters to use then this pointer carries
garbage.

7 years agoInitialize sink before trying to fill it via g_object_get()
Mohammed Sameer [Mon, 7 Jan 2013 22:03:51 +0000 (00:03 +0200)]
Initialize sink before trying to fill it via g_object_get()

7 years agoFixed a crash if we fail to create viewfinderFilters.
Mohammed Sameer [Mon, 7 Jan 2013 22:02:48 +0000 (00:02 +0200)]
Fixed a crash if we fail to create viewfinderFilters.

Don't try to call QtCamAnalsisBin methods if it's null

7 years agoPass constData() to open()
Mohammed Sameer [Mon, 7 Jan 2013 21:46:09 +0000 (23:46 +0200)]
Pass constData() to open()

7 years agoModeButton should show the mode to be switched to instead of the active mode
Mohammed Sameer [Mon, 7 Jan 2013 10:59:53 +0000 (12:59 +0200)]
ModeButton should show the mode to be switched to instead of the active mode

7 years agoUse dialogs for image and video settings.
Mohammed Sameer [Mon, 7 Jan 2013 10:58:18 +0000 (12:58 +0200)]
Use dialogs for image and video settings.

7 years agoBind zoom value to slider value
Mohammed Sameer [Mon, 7 Jan 2013 02:53:05 +0000 (04:53 +0200)]
Bind zoom value to slider value

If we don't do so, zoom will be reset upon the creation of the RecordingPage
Zoom will still be reset when we switch modes anyway because we do that explicitly

7 years agoNo need for those TODOs anymore
Mohammed Sameer [Sun, 6 Jan 2013 22:04:34 +0000 (00:04 +0200)]
No need for those TODOs anymore

7 years agoRace condition when QtCamVideo::stop() gets called multiple times.
Mohammed Sameer [Sun, 6 Jan 2013 21:13:27 +0000 (23:13 +0200)]
Race condition when QtCamVideo::stop() gets called multiple times.

camerabin2 sends the video-done message before setting idle to true.

If we get a chance to call QtCamVideoMode::stop() for a second time before
camerabin2 gets a chance to reset its idle property to true then we deadlock.

Introducing a boolean value to indicate that we have received the video-done message
fixes the issue. said boolean is always accessed while mutex is locked to avoid
any race conditions.

7 years agoReworked synchronous video recording stop
Mohammed Sameer [Sun, 6 Jan 2013 20:31:54 +0000 (22:31 +0200)]
Reworked synchronous video recording stop

The issue with QtCamGStreamerMessageListener::waitForMessage() is that
gst_bus_timed_pop_filtered() will drop the messages not matching our type. This
means our handlers might not process such messages.

What we do now is pass a custom DoneHandler subclass in QtCamVideoMode which will
wait on a QWaitCondition for video-done to be received.

Since video-done is sent from the streaming thread and DoneHandler is installed
as a sync handler, we are sure to block the UI thread until video gets saved.

7 years agoTry to load the encoding profiles from DATA_DIR if needed
Mohammed Sameer [Sat, 5 Jan 2013 19:28:31 +0000 (21:28 +0200)]
Try to load the encoding profiles from DATA_DIR if needed

7 years agoChanged configuration directory.
Mohammed Sameer [Sat, 5 Jan 2013 19:27:37 +0000 (21:27 +0200)]
Changed configuration directory.
- New path is /usr/share/qtcamera/config/
- define DATA_DIR to be used by all classes

7 years agoStop recording in page.stopRecording() instead of page destruction handler and force...
Mohammed Sameer [Sat, 5 Jan 2013 18:10:34 +0000 (20:10 +0200)]
Stop recording in page.stopRecording() instead of page destruction handler and force sync
This seems to fix issues with corrupted video when closing camera, minimizing it
or losing resources in the middle of recording.

7 years agoAdded sync parameter to QtCamVideo::stopRecording()
Mohammed Sameer [Sat, 5 Jan 2013 18:09:05 +0000 (20:09 +0200)]
Added sync parameter to QtCamVideo::stopRecording()

When sync is set to true, stopRecording() will wait for video-done message
to be posted to the GstBus before returning thus ensuring that recording has
been completed.

7 years agoDeclarative Camera should deactivete active mode when destroyed before stopping the...
Mohammed Sameer [Sat, 5 Jan 2013 18:06:55 +0000 (20:06 +0200)]
Declarative Camera should deactivete active mode when destroyed before stopping the device.
This will prevent losing the video being recorded when closing camera while recording

7 years agoKill CameraPage::needsPipeline property
Mohammed Sameer [Sat, 5 Jan 2013 15:40:36 +0000 (17:40 +0200)]
Kill CameraPage::needsPipeline property

If a page doesn't need the pipeline then it should set the policyMode to CameraResources.None

7 years agoIf a page doesn't need the pipeline then switch to off only if the camera is idle
Mohammed Sameer [Sat, 5 Jan 2013 15:33:26 +0000 (17:33 +0200)]
If a page doesn't need the pipeline then switch to off only if the camera is idle

7 years agoPostCapture page doesn't need any policy resources so just release them
Mohammed Sameer [Sat, 5 Jan 2013 15:27:42 +0000 (17:27 +0200)]
PostCapture page doesn't need any policy resources so just release them

7 years agoCall page.play() instead of video.play()
Mohammed Sameer [Fri, 4 Jan 2013 16:52:34 +0000 (18:52 +0200)]
Call page.play() instead of video.play()

page.play() should do some error checking.

7 years agoAlways show the toolbar if there is an error loading the preview
Mohammed Sameer [Fri, 4 Jan 2013 15:18:06 +0000 (17:18 +0200)]
Always show the toolbar if there is an error loading the preview

7 years agoDon't show QuillImage if there is an error
Mohammed Sameer [Fri, 4 Jan 2013 15:15:55 +0000 (17:15 +0200)]
Don't show QuillImage if there is an error
This makes the error label visible

7 years agoCheck for mass storage mode before disk space before we capture an image
Mohammed Sameer [Fri, 4 Jan 2013 14:48:17 +0000 (16:48 +0200)]
Check for mass storage mode before disk space before we capture an image

7 years agoAutohide toolbar in PostCapturePage
Mohammed Sameer [Thu, 3 Jan 2013 23:12:42 +0000 (01:12 +0200)]
Autohide toolbar in PostCapturePage

7 years agoAdded TODOs
Mohammed Sameer [Thu, 3 Jan 2013 20:06:33 +0000 (22:06 +0200)]
Added TODOs

7 years agoQML/JS debugger needs QtScript
Mohammed Sameer [Wed, 2 Jan 2013 04:05:12 +0000 (06:05 +0200)]
QML/JS debugger needs QtScript

7 years agoRenamed imports to declarative and libimports to libdeclarativeqtcamera
Mohammed Sameer [Wed, 2 Jan 2013 04:04:25 +0000 (06:04 +0200)]
Renamed imports to declarative and libimports to libdeclarativeqtcamera

7 years agoAutohide video player toolbar after 3 seconds of inactivity
Mohammed Sameer [Wed, 2 Jan 2013 02:52:30 +0000 (04:52 +0200)]
Autohide video player toolbar after 3 seconds of inactivity

7 years agoCleaned up commented code
Mohammed Sameer [Wed, 2 Jan 2013 02:47:27 +0000 (04:47 +0200)]
Cleaned up commented code

7 years agoAdded a hack to set the ZoomSlider state to "visible" when zoom keys get pressed.
Mohammed Sameer [Wed, 2 Jan 2013 01:07:31 +0000 (03:07 +0200)]
Added a hack to set the ZoomSlider state to "visible" when zoom keys get pressed.

7 years agoDelete QSparqlConnection when we are not active
Mohammed Sameer [Wed, 2 Jan 2013 00:44:58 +0000 (02:44 +0200)]
Delete QSparqlConnection when we are not active

7 years agoDelete QmBattery when we are not active
Mohammed Sameer [Wed, 2 Jan 2013 00:44:08 +0000 (02:44 +0200)]
Delete QmBattery when we are not active

7 years agoVolume up and down keys should now work and change zoom
Mohammed Sameer [Wed, 2 Jan 2013 00:39:49 +0000 (02:39 +0200)]
Volume up and down keys should now work and change zoom

7 years agoRemoved unneeded mutex.
Mohammed Sameer [Wed, 2 Jan 2013 00:19:42 +0000 (02:19 +0200)]
Removed unneeded mutex.

7 years agoAdding qmljsdebug to config will enable QML/JS debugger
Mohammed Sameer [Tue, 1 Jan 2013 21:13:35 +0000 (23:13 +0200)]
Adding qmljsdebug to config will enable QML/JS debugger

7 years agoAdded a TODO file and moved the big features there
Mohammed Sameer [Tue, 1 Jan 2013 21:10:57 +0000 (23:10 +0200)]
Added a TODO file and moved the big features there

7 years agoAdded ISO selector to CameraToolBar
Mohammed Sameer [Tue, 1 Jan 2013 17:08:33 +0000 (19:08 +0200)]
Added ISO selector to CameraToolBar

7 years agoImplemented own DeviceInfo
Mohammed Sameer [Tue, 1 Jan 2013 16:04:28 +0000 (18:04 +0200)]
Implemented own DeviceInfo

7 years agoAdded grid lines
Mohammed Sameer [Tue, 1 Jan 2013 15:23:33 +0000 (17:23 +0200)]
Added grid lines

7 years agoMake ScaleButtonType optional.
Mohammed Sameer [Tue, 1 Jan 2013 13:22:39 +0000 (15:22 +0200)]
Make ScaleButtonType optional.

We can still zoom without it

7 years agoRemove ScaleButtonType acquisition from policy. Will introduce it if I ever get hw...
Mohammed Sameer [Tue, 1 Jan 2013 13:20:48 +0000 (15:20 +0200)]
Remove ScaleButtonType acquisition from policy. Will introduce it if I ever get hw with such key

7 years agoset the width of the delegate to the width of the parent. image width gets 10 pixels...
Mohammed Sameer [Tue, 1 Jan 2013 01:08:53 +0000 (03:08 +0200)]
set the width of the delegate to the width of the parent. image width gets 10 pixels less

7 years agoAdded pinch zoom TODO
Mohammed Sameer [Tue, 1 Jan 2013 00:36:26 +0000 (02:36 +0200)]
Added pinch zoom TODO

7 years agoFixed image preview
Mohammed Sameer [Mon, 31 Dec 2012 23:22:54 +0000 (01:22 +0200)]
Fixed image preview

We were showing the preview image only during the opacity animation.
The intention was to show it during pause animation too.

7 years agoTODO cleanup
Mohammed Sameer [Mon, 31 Dec 2012 23:22:41 +0000 (01:22 +0200)]
TODO cleanup

7 years agoThis file is not used anywhere
Mohammed Sameer [Mon, 31 Dec 2012 22:46:57 +0000 (00:46 +0200)]
This file is not used anywhere

7 years agoUse Qtm namespace for QtMobility.systeminfo to resolve the BatteryInfo conflict
Mohammed Sameer [Mon, 31 Dec 2012 20:44:56 +0000 (22:44 +0200)]
Use Qtm namespace for QtMobility.systeminfo to resolve the BatteryInfo conflict

7 years agoReplaced QtMobility BatteryInfo
Mohammed Sameer [Mon, 31 Dec 2012 20:12:20 +0000 (22:12 +0200)]
Replaced QtMobility BatteryInfo

7 years agoUse Qt resource system for QML and JS files
Mohammed Sameer [Mon, 31 Dec 2012 02:40:04 +0000 (04:40 +0200)]
Use Qt resource system for QML and JS files

7 years agoListItem not needed
Mohammed Sameer [Mon, 31 Dec 2012 02:39:31 +0000 (04:39 +0200)]
ListItem not needed

7 years agoReworked mode animation.
Mohammed Sameer [Mon, 31 Dec 2012 01:59:53 +0000 (03:59 +0200)]
Reworked mode animation.

Use a series of property change notifications and bindings to derive the animation/

The PauseAnimation {} is needed because the dimmer doesn't fully dim without it :(

7 years agoPost capture timeout removed.
Mohammed Sameer [Sat, 29 Dec 2012 23:45:05 +0000 (01:45 +0200)]
Post capture timeout removed.

Unlikely to be implemented.
Removed its commented code and properties from settings.

7 years agoReworked VideoPlayerPage to use CameraToolBar
Mohammed Sameer [Sat, 29 Dec 2012 22:55:32 +0000 (00:55 +0200)]
Reworked VideoPlayerPage to use CameraToolBar

7 years agoUse CameraToolBar instead of the ToolBar from components.
Mohammed Sameer [Sat, 29 Dec 2012 21:55:08 +0000 (23:55 +0200)]
Use CameraToolBar instead of the ToolBar from components.
Top bar also replaced with a rectangle

7 years agoPass the correct url to video player
Mohammed Sameer [Sat, 29 Dec 2012 21:54:53 +0000 (23:54 +0200)]
Pass the correct url to video player