Improve native guide topics 77/145077/2
authorEditor Lionbridge <TizenEditor.SEL@lionbridge.com>
Mon, 21 Aug 2017 06:43:54 +0000 (09:43 +0300)
committerEditor Lionbridge <TizenEditor.SEL@lionbridge.com>
Wed, 23 Aug 2017 08:17:00 +0000 (11:17 +0300)
This is a manual cherry pick of change #144175 in the tizen_3.0
branch.

PS2: Added two missing cherry picks.

Change-Id: Ic2db75e0bd01e1da7e08c0200e7589b0762b742b

44 files changed:
org.tizen.guides/html/images/genlist_tree.png [deleted file]
org.tizen.guides/html/native/alarm/alarms_n.htm
org.tizen.guides/html/native/app_management/app_controls_n.htm
org.tizen.guides/html/native/app_management/app_icons_n.htm
org.tizen.guides/html/native/app_management/app_management_cover_n.htm
org.tizen.guides/html/native/app_management/app_preferences_n.htm
org.tizen.guides/html/native/app_management/applications_n.htm
org.tizen.guides/html/native/app_management/common_appcontrol_n.htm
org.tizen.guides/html/native/app_management/dali_app_n.htm
org.tizen.guides/html/native/app_management/dali_basic_app_n.htm
org.tizen.guides/html/native/app_management/dali_watch_app_n.htm
org.tizen.guides/html/native/app_management/data_control_n.htm
org.tizen.guides/html/native/app_management/efl_app_n.htm
org.tizen.guides/html/native/app_management/efl_ui_app_n.htm
org.tizen.guides/html/native/app_management/message_port_n.htm
org.tizen.guides/html/native/app_management/service_app_n.htm
org.tizen.guides/html/native/app_management/watch_app_n.htm
org.tizen.guides/html/native/app_management/widget_app_n.htm
org.tizen.guides/html/native/connectivity/bluetooth_n.htm
org.tizen.guides/html/native/error/error_handling_n.htm
org.tizen.guides/html/native/error/system_logs_n.htm
org.tizen.guides/html/native/graphics/cairo_n.htm
org.tizen.guides/html/native/graphics/vulkan_n.htm
org.tizen.guides/html/native/guides_n.htm
org.tizen.guides/html/native/internationalization/i18n_n.htm
org.tizen.guides/html/native/internationalization/resource_localization_n.htm
org.tizen.guides/html/native/location_sensors/device_sensors_n.htm
org.tizen.guides/html/native/location_sensors/location_n.htm
org.tizen.guides/html/native/location_sensors/maps_n.htm
org.tizen.guides/html/native/media/media_content_n.htm
org.tizen.guides/html/native/media/media_controller_n.htm
org.tizen.guides/html/native/media/media_conversions_n.htm
org.tizen.guides/html/native/media/metadata_n.htm
org.tizen.guides/html/native/media/openal_n.htm
org.tizen.guides/html/native/media/sound_n.htm
org.tizen.guides/html/native/messaging/push_server_n.htm
org.tizen.guides/html/native/personal/account_n.htm
org.tizen.guides/html/native/personal/calendar_n.htm
org.tizen.guides/html/native/personal/contacts_n.htm
org.tizen.guides/html/native/personal/data_sync_n.htm
org.tizen.guides/html/native/security/privilege_n.htm
org.tizen.guides/html/native/security/security_cover_n.htm
org.tizen.guides/html/native/ui/dali/rendering_effects_n.htm
org.tizen.guides/html/native/ui/ui_cover_n.htm

diff --git a/org.tizen.guides/html/images/genlist_tree.png b/org.tizen.guides/html/images/genlist_tree.png
deleted file mode 100644 (file)
index b6214e9..0000000
Binary files a/org.tizen.guides/html/images/genlist_tree.png and /dev/null differ
index 2c20df4..6e363bb 100644 (file)
@@ -83,7 +83,7 @@
 
   <div class="note">
         <strong>Note</strong>
-        Since 2.4, the <code>alarm_schedule_after_delay()</code> function does not support an exact period and delay to minimize the wake-ups of the device. The system can adjust when the alarm expires.
+        Since 2.4, the <code>alarm_schedule_after_delay()</code> function does not support an exact period and delay to minimize device wake-ups. The system can adjust when the alarm expires.
     </div>
 
 
index 89eb6b7..3aa71b2 100644 (file)
@@ -50,7 +50,7 @@
 <div id="container"><div id="contents"><div class="content">
 <h1>Application Controls</h1>
 
-<p>An application control (app control) is a way of sharing an application's functionality with other applications. To use another application's features through application controls reduces your efforts and time to develop your application.</p>
+<p>An application control (app control) is a way of sharing an application's functionality with other applications. Using another application's features through application controls reduces the time and effort needed to develop your own application.</p>
 
 <p>An application can be launched by the user from the launcher or by another application through the application control. The application control launch request describes either an action to be performed by other applications, or the results of that action. The application can also receive results from the launched application through an application control reply.</p>
 
@@ -165,9 +165,9 @@ app_control_create(&amp;app_control);
 app_control_set_operation(app_control, APP_CONTROL_OPERATION_CREATE_CONTENT);
 app_control_set_mime(app_control, "image/jpg");
 if (app_control_send_launch_request(app_control, NULL, NULL) == APP_CONTROL_ERROR_NONE)
-    dlog_print(DLOG_INFO, TAG, "Succeeded to launch a viewer app.");
+    dlog_print(DLOG_INFO, TAG, "Succeeded to launch a camera app.");
 else
-    dlog_print(DLOG_ERROR, TAG, "Failed to launch a viewer app.");
+    dlog_print(DLOG_ERROR, TAG, "Failed to launch a camera app.");
 
 app_control_destroy(app_control);
 </pre>
@@ -243,7 +243,7 @@ app_control_destroy(app_control);
 <p>The following examples show different scenarios for the results of resolving the application control:</p>
 <ul>
 <li>
-<p>Operation only provided:</p>
+<p>Operation provided:</p>
 <ul>
 <li>Request:
 <ul>
index 71c8f2a..c870954 100644 (file)
@@ -131,7 +131,7 @@ if (ret != BADGE_ERROR_NONE)
     /* Error handling */
 </pre>
 <p>The application that creates the badge can also update and remove it. When applications are signed with the same certificate, they can control each other's badges.</p>
-<p>If an application not signed with the same certificate must be allowed <a href="#manage">manage a badge</a>, use the <code>badge_add()</code> function with a writable application ID. The writable application ID enables another application to control your application to manage the badge. You can also configure your application to handle the badge itself.</p>
+<p>If an application not signed with the same certificate must be allowed to <a href="#manage">manage a badge</a>, use the <code>badge_add()</code> function with a writable application ID. The writable application ID enables another application to control your application to manage the badge. You can also configure your application to handle the badge itself.</p>
 </li>
 
 <li>
index 1977fc3..d8c1f54 100644 (file)
 
 <li><a href="app_resources_n.htm">Application Resources</a>
 
-<p>You can define different resources for the application to be used depending on the device on which the application is run. Efficient resource management allows you to create an application that can be run on various devices with different configurations, such as different screen sizes.</p></li>
+<p>You can define different resources to be used by the application depending on the device on which the application is run. Efficient resource management allows you to create an application that can be run on various devices with different configurations, such as different screen sizes.</p></li>
 
 <li><a href="app_preferences_n.htm">Application Preferences</a>
 
-<p>You can set and get application preferences. You can also share any stored preference data among the applications in the same package.</p></li>
+<p>You can set and get application preferences. You can also share stored preference data among applications in the same package.</p></li>
 
 <li><a href="app_icons_n.htm">Application Icons</a>
 
@@ -61,7 +61,7 @@
 
 <li><a href="app_controls_n.htm">Application Controls</a>
 
-<p>The application controls allow you to share an application's functionality. To use another application's features through application controls reduces your efforts and time to develop your own application. You can also allow other applications to share your functionality by exporting your application control functionalities.</p></li>
+<p>The application controls allow you to share an application's functionality. Using another application's features through application controls reduces the time and effort needed to develop your own application. You can also allow other applications to share your functionality by exporting your application control functionalities.</p></li>
 
 <li><a href="app_communication_n.htm">Application Data Exchange</a>
 
index 9baeb1c..12ff0a9 100644 (file)
@@ -45,7 +45,7 @@
        <h1>Application Preferences</h1>
 
 
-<p>You can manage application preferences by setting and getting them. You can also share any stored preference data among the applications in the same package.</p>
+<p>You can manage application preferences by setting and getting them. You can also share stored preference data among applications in the same package.</p>
 
 <h2 id="prerequisites">Prerequisites</h2>
 
@@ -56,7 +56,6 @@
 
  <h2 id="manage_pref" name="manage_pref">Managing Application Preferences</h2>
 
-<p>You can set and get application preference data. Any stored preference data can also be shared among the applications in the same package.</p>
 <p>To manage preferences:</p>
 
 <ul>
index 9a9d1e8..3a5dd07 100644 (file)
@@ -49,7 +49,8 @@
 <p>Tizen provides various application models to allow you to create applications targeted for specific tasks:</p>
 <ul>
        <li><a href="ui_app_n.htm">UI Applications</a>
-       <p>The UI application is the most general Tizen application that has a graphical user interface. You can create diverse applications with a variety of features, and design versatile applications and intriguing user interfaces with text and graphics while taking advantage of many device functionalities, such as sensors and call operations. In addition, you can, for example, manage content and media files, use network and social services, and provide messaging and embedded Web browsing functionality.</p></li>
+       <p>The UI application has a graphical user interface. You can create diverse applications with a variety of features, and design versatile applications and intriguing user interfaces with text and graphics while taking advantage of many device functionalities, such as sensors and call operations. In addition, you can, for example, manage content and media files, use network and social services, and provide messaging and embedded Web browsing functionality.</p>
+    <p>The UI application is the most common Tizen application model.</p></li>
 
        <li><a href="service_app_n.htm">Service Applications</a>
        <p>The service application is a Tizen native application without a graphical user interface that runs in the background. They can be very useful in performing activities (such as getting sensor data in the background) that need to run periodically or continuously, but do not require any user intervention.</p></li>
@@ -69,7 +70,7 @@
 <p>When the application loses the focus status, the <code>app_pause_cb()</code> callback is invoked. The application can go into the pause state, which means that your application is not terminated but continues to run in the background, when:</p>
 
 <ul>
-  <li>A new application is launched from the request of your application.</li>
+  <li>A new application is launched by the request of your application.</li>
   <li>The user requests to go to the home screen.</li>
   <li>A system event (such as an incoming phone call) occurs and causes a resident application with a higher priority to become active and temporarily hide your application.</li>
   <li>An alarm is triggered for another application, which becomes the top-most window and hides your application.</li>
@@ -95,7 +96,7 @@
   <p align="center"><strong>Figure: UI and service application states</strong></p>
   <p align="center"><img src="../../images/multiple_apps.png" alt="UI and service application life-cycle" style="display: block; text-align: center; margin-left: auto; margin-right: auto" /></p>
 
-<p>Because a service application has no UI, neither does it have a pause state. Since Tizen 2.4, a service application can go into the suspended state. Basically, the service application is running in the background by its nature; so the platform does not allow the running of the service application unless it is designated as a background category application. However, when the UI application that is packaged with the service application is running on the foreground, the service application is also regarded as a foreground application and it can be run without a designated background category.</p>
+<p>Because a service application has no UI, neither does it have a pause state. Since Tizen 2.4, a service application can go into the suspended state. Basically, the service application is running in the background by its nature; so the platform does not allow running the service application unless the application has a background category defined in its manifest file. However, when the UI application that is packaged with the service application is running on the foreground, the service application is also regarded as a foreground application and it can be run without a designated background category.</p>
 
 <p>Application state changes are managed by the underlying framework. For more information on application state transitions, see <a href="efl_ui_app_n.htm#state_trans">Application States and Transitions</a>.</p>
 
index 02e7d7c..a764f87 100644 (file)
@@ -68,7 +68,7 @@
 
          <div class="note">
         <strong>Note</strong>
-        It is possible that no application suitable to receive the application control exists. In that case, before you send the launch request, verify that a suitable application exists.
+        It is possible that no application suitable to receive the application control exists. Verify that a suitable application exists before you send the launch request.
     </div>
 
 <h2 id="browser" name="browser">Browser in Mobile Applications</h2>
@@ -2476,7 +2476,7 @@ vpn_appcontrol_result_cb(app_control_h request, app_control_h reply, app_control
 
 <h3>Receiving User Input</h3>
 
-<p>To receive specific type of input from the user, use the <code>APP_CONTROL_OPERATION_GET_INPUT</code> operation. To give an option for the input delegator, refer to the extras defined below.</p>
+<p>To receive specific type of input from the user, use the <code>APP_CONTROL_OPERATION_GET_INPUT</code> operation. To give an option for the input delegator, refer to the extras defined below.</p>
 
 <p align="center"><strong>Figure: Receiving user input</strong></p>
 <p align="center"><img src="../../images/common_appcontrol_inputdelegator.png" alt="Receiving user input" /> <img src="../../images/common_appcontrol_inputdelegator_voice.png" alt="Receiving user input" /></p>
index 56c9fc8..c0a5b44 100644 (file)
@@ -42,7 +42,7 @@
 <div id="container"><div id="contents"><div class="content">
 <h1>DALi Applications</h1>
 
-<p>You can use the Dynamic Animation Library (DALi) 3D UI toolkit to create a high-performance rich UI application. For 2D-based Tizen native applications, use the <a href="../ui/efl/efl_n.htm">Enlightenment Foundation Libraries (EFL) UI toolkit</a>.</p>
+<p>You can use the Dynamic Animation Library (DALi) 3D UI toolkit to create a high-performance, rich UI application. For 2D-based Tizen native applications, use the <a href="../ui/efl/efl_n.htm">Enlightenment Foundation Libraries (EFL) UI toolkit</a>.</p>
 
 <p>Dynamic Animation Library (DALi) internally defines a virtual 3D world (space) and maintains hierarchical objects in the 3D world. The hierarchical object tree is known as the <a href="http://en.wikipedia.org/wiki/Scene_graph" target="_blank">scene graph</a>.</p>
 
index 8777ab4..e1b7d24 100644 (file)
@@ -90,7 +90,7 @@
 
 <p>Like all ordinary Tizen applications, the DALi application must start the main event loop. Afterwards, it can receive events from the platform.</p>
 
-<p>The <code>mainloop()</code> function is used to start event loop. If you do not call the function and start the event loop, DALi cannot call any callback functions for application events.</p>
+<p>The <code>mainloop()</code> function is used to start the event loop. If you do not call the function and start the event loop, DALi cannot call any callback functions for application events.</p>
 
 <h2 id="callback">Event Callbacks</h2>
 
index 1e19ddf..9c98b0c 100644 (file)
 
 <p>Like all ordinary Tizen applications, the DALi watch application must start the main event loop. Afterwards, it can receive usual platform events and dedicated watch events from the platform.</p>
 
-<p>The <code>mainloop()</code> function is used to start event loop. If you do not call the function and start the event loop, DALi cannot call any callback functions for application events.</p>
+<p>The <code>mainloop()</code> function is used to start the event loop. If you do not call the function and start the event loop, DALi cannot call any callback functions for application events.</p>
 
 <h2 id="callback">Event Callbacks</h2>
 
index b8de3b4..0a5f390 100644 (file)
@@ -68,7 +68,7 @@
 
 <h2 id="prerequisites">Prerequisites</h2>
 
-<p>The data control use cases run 2 applications. Each application plays a different role: one for the consumer, another for the provider.</p>
+<p>The data control use cases run 2 applications. Each application plays a different role: one as the consumer, the other as the provider.</p>
 
 <p>To enable your application to use the data control functionality:</p>
 <ol>
index 6639d60..4ccb2f3 100644 (file)
@@ -56,7 +56,7 @@
 <p>Elementary provides all the functions you need to create a window, create simple and complex layouts, manage the life-cycle of a view, and add UI components.</p>
 </li>
 <li><strong>Edje</strong>
-<p>Edje provide a powerful theme for your application. You can also use Edje to create your own objects and use them in your application, or even extend the default theme.</p>
+<p>Edje provides a powerful theme library for your application. You can also use Edje to create your own objects and use them in your application, or even extend the default theme.</p>
 </li>
 <li><strong>Ecore</strong>
 <p>Ecore manages the main loop of your application. The main loop is where events are handled, and where you interact with the user through the callback mechanism.</p>
@@ -68,7 +68,7 @@
 <p>Eina is a toolbox that implements an API for data types in an efficient way. It contains all the functions needed to create lists and hashes, manage shared strings, open shared libraries, and manage errors and memory pools.</p>
 </li></ul>
 
-<p>For more information on how to get started with EFL programming, see <a href="../ui/efl/getting_started_n.htm">Getting Started with EFL UI Programming</a>. It helps you to understand how to EFL works, and how you can create a simple EFL application with basic features.</p>
+<p>For more information on how to get started with EFL programming, see <a href="../ui/efl/getting_started_n.htm">Getting Started with EFL UI Programming</a>. It helps you to understand how EFL works, and how you can create a simple EFL application with basic features.</p>
 
 <h2 id="app_type" name="app_type">Application Types</h2>
 
@@ -84,7 +84,7 @@
 <p>The watch application is available for wearable devices only, and it is shown on the idle screen of the device. For low-powered wearable devices, the watch application supports a special ambient mode. The ambient mode reduces power consumption by showing a limited UI and updating the time on the screen only once per minute.</p>
 </li>
 <li><a href="widget_app_n.htm">Widget application</a>
-<p>A widget application (or widget) is a specialized application that provides the user a quick view of specific information from the parent application. In addition, the widget allows the user to access certain features without launching the parent applications. Combined with the parent application, your widget can have various features to increase the usability of your application.</p>
+<p>A widget application (or widget) is a specialized application that provides the user a quick view of specific information from the parent application. In addition, the widget allows the user to access certain features without launching the parent application. Combined with the parent application, your widget can have various features to increase the usability of your application.</p>
 <p>The widget application is available for both mobile and wearable devices.</p>
 </li>
 </ul>
index f862de3..658ed29 100644 (file)
 
 <p>The Tizen native application can be in one of several different <a href="applications_n.htm#state_change">application states</a>.</p>
 
-<p>The Application API defines 5 states with corresponding transition handlers. The state transition is notified through a state transition callback function, whether the application is created, running, paused, resumed, or terminated. The application must <a href="#fundamentals">react to each state change appropriately</a>.</p>
+<p>The Application API defines 5 states with corresponding transition handlers. A state transition callback is triggered after each state change, whenever the application is created, starts running, or is paused, resumed, or terminated. The application must <a href="#fundamentals">react to each state change appropriately</a>.</p>
 
 <p align="center" class="Table"><strong>Table: Application states</strong></p>
   <table>
index 7f0ffd7..11094df 100644 (file)
@@ -242,7 +242,7 @@ if (test_check_remote_port()) {
   <p align="center"><strong>Figure: Trusted uni-directional message port communication</strong></p>
   <p align="center"><img alt="Trusted uni-directional message port communication" src="../../images/message_port_trusted_uni-directional_comm.png" /></p>
 
-<p>The trusted communication work similarly as normal message port communication. The only difference is that you must use trusted functions instead of normal functions, as defined in the following table.</p>
+<p>Trusted communication works similarly as normal message port communication. The only difference is that you must use trusted functions instead of normal functions, as defined in the following table.</p>
 
 <p align="center" class="Table"><strong>Table: Corresponding normal and trusted communication functions</strong></p>
 <table>
@@ -253,7 +253,7 @@ if (test_check_remote_port()) {
                </tr>
                <tr>
                        <td><code>message_port_check_remote_port()</code></td>
-                       <td> <code>message_port_check_trusted_remote_port()</code></td>
+                       <td><code>message_port_check_trusted_remote_port()</code></td>
                </tr>
                <tr>
                        <td><code>message_port_send_message()</code></td>
index 1b01d46..72f010a 100644 (file)
@@ -95,7 +95,7 @@
    </tbody>
   </table>
 
-<p>Because a service application has no UI, neither does it have a pause state. Since Tizen 2.4, the service application can go into the suspended state. Basically, the service application is running in the background by its nature; so the platform does not allow the running of the service application unless it is designated as a background category application. However, when the UI application that is packaged with the service application is running on the foreground, the service application is also regarded as a foreground application and it can be run without a designated background category. For more information on using and defining a background category, see <a href="efl_ui_app_n.htm#allow_bg">Background Categories</a>.</p>
+<p>Because a service application has no UI, neither does it have a pause state. Since Tizen 2.4, the service application can go into the suspended state. Basically, the service application is running in the background by its nature; so the platform does not allow running the service application unless the application has a background category defined in its manifest file. However, when the UI application that is packaged with the service application is running on the foreground, the service application is also regarded as a foreground application and it can be run without a designated background category. For more information on using and defining a background category, see <a href="efl_ui_app_n.htm#allow_bg">Background Categories</a>.</p>
 
 <h2 id="register" name="register">Event Callbacks</h2>
 
index cbe1e11..9d57fb9 100644 (file)
@@ -437,7 +437,7 @@ __create_base_gui(appdata *ad, int width, int height)
 <ol>
 <li>Define the ambient mode callbacks.
 <ul><li><p>The <code>ambient_changed</code> event is triggered when the ambient mode is enabled or disabled on the device. You can use the callback to initialize your ambient mode UI.</p></li>
-<li><p>The <code>ambient_tick</code> event is triggered every minute while the device is in the ambient mode. You can use the callback to update the time on your watch application in the ambient mode. In this callback, do not perform time-consuming task and always update the UI as quickly as possible. The platform can put the device to sleep shortly after the ambient tick expires.</p></li></ul>
+<li><p>The <code>ambient_tick</code> event is triggered every minute while the device is in the ambient mode. You can use the callback to update the time on your watch application in the ambient mode. In this callback, do not perform time-consuming tasks and always update the UI as quickly as possible. The platform can put the device to sleep shortly after the ambient tick expires.</p></li></ul>
 <pre class="prettyprint">
 void
 app_ambient_tick(watch_time_h watch_time, void* user_data)
index 721b658..1cc6d9b 100644 (file)
@@ -65,7 +65,7 @@
 
        <div class="note">
         <strong>Note</strong>
-        The widget application UI has a limitation with the scroll action to provide better user experience. Design the widget UI to display all the information within the given area of the screen points.
+        The widget application UI has a limitation with the scroll action to provide better user experience. Design the widget UI to display all the information within the given area of the screen points.
        <p>To draw the UI, use a single window that is returned by the <code>widget_app_get_elm_win()</code> function. Do not create additional windows. A stack of widget application windows gets corrupted, because the platform handles the widget application window in a special way.</p>
        </div>
 
@@ -346,7 +346,7 @@ widget_instance_destroy(widget_context_h context, widget_app_destroy_type_e reas
 </li>
 
 <li>This callback is triggered when the widget instance is paused.
-<p>Take the necessary actions since the widget instance becomes invisible. The framework can destroy a paused widget instance.</p>
+<p>Take the necessary actions when the widget instance becomes invisible. The framework can destroy a paused widget instance.</p>
 <pre class="prettyprint">
 int
 widget_instance_pause(widget_context_h context, void *user_data)
@@ -356,7 +356,7 @@ widget_instance_pause(widget_context_h context, void *user_data)
 </pre>
 </li>
 <li>This callback is triggered when the widget instance is resumed.
-<p>Take the necessary actions since the widget instance becomes visible.</p>
+<p>Take the necessary actions when the widget instance becomes visible.</p>
 <pre class="prettyprint">
 int
 widget_instance_resume(widget_context_h context, void *user_data)
@@ -538,7 +538,7 @@ widget_instance_update(widget_context_h context, bundle *content, int force, voi
 <li>The Weather application is launched when user selects it from the application list.</li>
 <li>The widget is launched when the Home screen is on screen and is terminated when the Home screen is hidden.</li></ul>
 
-<p>Although the widget wants to share some data from the Weather application (such as the user's favorite city), it is ineffective for the widget to launch the Weather application every time to retrieve such data. This inefficiency makes it difficult to use typical IPC mechanisms, such as socket and <a href="message_port_n.htm">Message Port</a>, in which both the receiver and sender processes must be alive for communication. To overcome this issue, the widget application must use a communication type where the data is permanently stored somewhere in the system.</p>
+<p>Although the widget wants to share some data from the Weather application (such as the user's favorite city), it is ineffective for the widget to launch the Weather application every time to retrieve such data. This inefficiency makes it difficult to use typical IPC mechanisms, such as sockets and <a href="message_port_n.htm">message ports</a>, for which both the receiver and sender processes must be alive. To overcome this limitation, the widget application must use a communication method that stores data permanently somewhere in the system.</p>
 
 <p>In the Tizen platform, applications in the same package (including widget applications) can access files in the <code>data</code> directory of the package installation path. This means that the UI (or service) application can first write files to the <code>data</code> directory, and the widget can later read them, or vice versa.</p>
 
@@ -554,9 +554,7 @@ widget_instance_update(widget_context_h context, bundle *content, int force, voi
 <p>The Sqlite database has an advantage to a direct use of a file in error handling, such as journaling. Consequently, if the application must handle complex data rather than primitive values, <a href="../data/sql_n.htm">use Sqlite to store and retrieve the data</a>.</p></li></ul>
 
 <p>If an application requires complex control over a widget, such as Music Player, it must implement a service application in the middle and use the Data Control API (in <a href="../../../../org.tizen.native.mobile.apireference/group__CAPI__DATA__CONTROL__MODULE.html">mobile</a> and <a href="../../../../org.tizen.native.wearable.apireference/group__CAPI__DATA__CONTROL__MODULE.html">wearable</a> applications).</p>
-<p>For example, a music-player-service service application is needed to control the audio device, process audio files, and handle play and stop signals. The music-player-ui and music-player-widget applications display the UI controls, title, album arts, and other content retrieved from the music-player-service service application. The service application can export its data using the Data Control to <a href="data_control_n.htm">provide data to the other applications</a> (widget and UI) simultaneously.</p>
-
-<p>The following figure illustrates typical data control flows between the set of UI, service, and widget applications.</p>
+<p>For example, a music-player-service service application is needed to control the audio device, process audio files, and handle play and stop signals. The music-player-ui and music-player-widget applications display the UI controls, title, album art, and other content retrieved from the music-player-service service application. The service application can export its data using the Data Control to <a href="data_control_n.htm">provide data to the other applications</a> (widget and UI) simultaneously. The following figure illustrates the typical data control flows between the set of UI, service, and widget applications.</p>
 
 <p align="center"><strong>Figure: Sharing through data control</strong></p>
 <p align="center"><img alt="Sharing through data control" src="../../images/widget_data_control_share.png" /></p>
index 44d9476..8e823a5 100644 (file)
@@ -97,7 +97,7 @@
        <p>Connected devices exchange keys needed for encrypted communication, but each connection has to be approved by the latest application user. You can also set authorization of other devices. Authorized devices are connected automatically without the latest user being asked for authorization.</p>
        </li>
        <li>Connecting to and exchanging data with a Bluetooth device using a Bluetooth socket
-       <p>The Bluetooth Socket API (in <a href="../../../../org.tizen.native.mobile.apireference/group__CAPI__NETWORK__BLUETOOTH__SOCKET__MODULE.html">mobile</a> and <a href="../../../../org.tizen.native.wearable.apireference/group__CAPI__NETWORK__BLUETOOTH__SOCKET__MODULE.html">wearable</a> applications) provides functions for managing connections to other devices and exchanging data. The API is used for exchanging data between 2 Bluetooth devices, where your device can have the role both of a server (service provider) and client (service user). The connection creation process differs based on the role. After the connection is established, the processes for exchanging data and disconnecting are the same for both roles.</p>
+       <p>The Bluetooth Socket API (in <a href="../../../../org.tizen.native.mobile.apireference/group__CAPI__NETWORK__BLUETOOTH__SOCKET__MODULE.html">mobile</a> and <a href="../../../../org.tizen.native.wearable.apireference/group__CAPI__NETWORK__BLUETOOTH__SOCKET__MODULE.html">wearable</a> applications) provides functions for managing connections to other devices and exchanging data. The API is used for exchanging data between 2 Bluetooth devices, where your device can have the role both of a server (service provider) and client (service user). The connection creation process depends on the role. After the connection is established, the processes for exchanging data and disconnecting are the same for both roles.</p>
        <p>When you attempt to open a connection to another device, a Service Discovery Protocol (SDP) look-up is performed on the device, and the protocol and channel to be used for the connection are determined. If a connection is established and the socket is opened successfully, a <code>BluetoothSocket</code> instance with an open state is returned. The socket is subsequently used for exchanging data between the connected devices.</p>
        <p>You can use Serial Port Profile (SPP) operations to <a href="#connect">connect to other devices</a>, <a href="#exchange">exchange data</a>, and <a href="#disconnect">disconnect from connected devices</a>.</p>
        </li>
index 104afd7..7b321a3 100644 (file)
@@ -33,8 +33,7 @@
 
   <h1>Error Handling</h1>
 
-<p>How to query error codes for a certain API function is determined by how the function returns error codes.
-In this sense, there are 2 kinds of native APIs in Tizen:</p>
+<p>How to query error codes for a certain API function is determined by how the function returns error codes. In this sense, there are 2 kinds of native APIs in Tizen:</p>
 
 <ul>
 <li>APIs directly returning error codes
@@ -69,10 +68,9 @@ BUNDLE_ERROR_NONE /* Success */
 BUNDLE_ERROR_OUT_OF_MEMORY /* Out of memory */
 </pre>
 </li>
+</ul>
 
-<li>Obtaining a message for specific error code
-<p>Use the <code>get_error_message()</code> function to query the meaning of each error code.
-The pointer returned is a static variable; you must not free it.</p>
+<p>To obtain the error message for a specific error code, use the <code>get_error_message()</code> function to query the meaning of each error code. The pointer returned is a static variable; you must not free it.</p>
 
 <p>For example:</p>
 <pre class="prettyprint">
@@ -86,10 +84,8 @@ if (LOCATIONS_ERROR_NONE != result) {
 }
 </pre>
 <p>The <code>get_error_message()</code> function takes an error code as an input and returns its corresponding error messages, such as "Location service is not available".</p>
-</li>
-</ul>
-<p>Every error code in the Tizen native API is represented as an integer value.</p>
 
+<p>Every error code in the Tizen native API is represented as an integer value.</p>
 
 <script type="text/javascript" src="../../scripts/jquery.zclip.min.js"></script>
 <script type="text/javascript" src="../../scripts/showhide.js"></script>
index 7af881e..0e14d93 100644 (file)
@@ -59,7 +59,7 @@
 <li>Viewing the log output
 <p>You can view the log output from the circular buffer in 2 ways:</p>
 <ul>
-<li>In the dlog utility (when testing with a target device), <a href="#dlogutil">use the device sdb shell with logutil commands</a>.
+<li>In the device sdb shell (when testing with a target device), <a href="#dlogutil">use the logutil commands</a>.
 <p>You can use the message priority and tag to filter the output and only view specific messages.</p></li>
 <li>In the Tizen Studio (when testing with an emulator), use the <strong>Log</strong> view.
 <p>You can filter the messages by their priority level. You can also search the messages by keywords, such as pid, tid, tag, and message.</p>
index d52c5ff..97e8141 100644 (file)
@@ -453,7 +453,7 @@ cairo_surface_destroy(surface);
 \r
 <h2 id="image">Painting with Image Files</h2>\r
 \r
-<p>With images, Cairo supports the functionality only for the PNG format. These functions for PNG are experimental, so use them with care. For more information on PNG support, see <a href="http://www.cairographics.org/manual/cairo-PNG-Support.html" target="_blank">PNG Support in cairographics.org</a>.</p>\r
+<p>Cairo supports the painting with image files functionality only for images in the PNG format. These functions for PNG are experimental, so use them with care. For more information on PNG support, see <a href="http://www.cairographics.org/manual/cairo-PNG-Support.html" target="_blank">PNG Support in cairographics.org</a>.</p>\r
 \r
 <p>The following figure shows an example of painting with an image file.</p>\r
 <p align="center"><strong>Figure: Painting with image file</strong></p>\r
index 796a3da..597e9a8 100644 (file)
 
 <p>Typically, the application is launched by the user from the Launcher, or by another application. The application is normally launched as the top window, with focus. When the application loses the focus status, the <code>SDL_APP_WILLENTERBACKGROUND</code> and <code>SDL_APP_DIDENTERBACKGROUND</code> events are invoked. The application can go into the pause state, which means that it is not terminated but continues to run in the background. The pause state can happen when:</p>
 <ul>
-<li>A new application is launched based on a request from your application.</li>
+<li>A new application is launched by the request of your application.</li>
 <li>The user requests to go to the home screen.</li>
 <li>A system event (such as an incoming phone call) occurs and causes a resident application with a higher priority to become active and temporarily hide your application.</li>
 <li>An alarm is triggered for another application, which becomes the topmost window and hides your application.</li>
index ae0f1f7..900175f 100644 (file)
@@ -87,7 +87,7 @@
 
 <li><a href="location_sensors/location_sensors_cover_n.htm">Location and Sensors</a>
 
-<p>The location and sensor features provide information about the geographical location and surrounding environment of the device. You can create location-based applications that track the user location and use maps. You can also access data from various device sensors, which provide information on the physical environment the device is in, and the gestures and activities the user is engages in.</p></li>
+<p>The location and sensor features provide information about the geographical location and surrounding environment of the device. You can create location-based applications that track the user location and use maps. You can also access data from various device sensors, which provide information on the physical environment the device is in, and the gestures and activities the user engages in.</p></li>
 
 <li><a href="text_input/text_input_cover_n.htm">Text Input and Voice</a>
 
 
 <li><a href="security/security_cover_n.htm">Security</a>
 
-<p>The security features ensure that private information remains private, and that the user knows when they are trying to access privileged information. You can use a repository to manage keys, certificates, and sensitive user data. And when the user tries to access privileged information, you can display information about the data.</p></li>
+<p>The security features ensure that private information remains private, and that the user knows when they are trying to access privileged information. You can use a repository to manage keys, certificates, and sensitive user data. When the user tries to access privileged information, you can display information about the data.</p></li>
 
 <li><a href="error/error_cover_n.htm">Error Handling</a>
 
-<p>The error handling features are needed when everything does not go as planned. You can handle error situations in your application code, and ensure that necessary information is stored in the system logs to allow you to troubleshoot problems.</p></li>
+<p>The error handling features are needed when something unexpected happens. You can handle error situations in your application code, and ensure that necessary information is stored in the system logs to allow you to troubleshoot problems.</p></li>
 
 <li><a href="performance/performance_cover_n.htm">Performance</a>
 
-<p>The performance features define how you can use tracepoints. You can generate traces and visualize them to help you to optimize your application performance.</p></li>
+<p>The performance features define how you can use tracepoints. You can generate traces and visualize them to help you to optimize application performance.</p></li>
 </ul>
 
 <script type="text/javascript" src="../scripts/jquery.zclip.min.js"></script>
index e4c8def..6952d03 100644 (file)
 <p>The types of Ucalendar interpret a Udate according to the rules of a specific calendar system, such as the gregorian or traditional system.</p>
 <p>A Ucalendar object can produce all the time field values needed to implement the date-time formatting for a particular language and calendar style (for example, Japanese-Gregorian, Japanese-Traditional).</p>
 
-<p>When computing a Udate from the time fields, 2 special circumstances can arise. The information can be insufficient to compute the Udate (you have only the year and the month, but not the day of the month), or the information can be inconsistent (such as "Tuesday, July 15, 1996" even though July 15, 1996 is actually a Monday).</p>
-<ul>
-<li><strong>Insufficient information</strong> <p>The calendar uses the default information to specify the missing fields. This can vary by calendar: for the Gregorian calendar, the default for a field is the same as that of the start of the epoch, such as <code>I18N_UCALENDAR_YEAR = 1970</code>, <code>I18N_UCALENDAR_MONTH = JANUARY</code>, <code>I18N_UCALENDAR_DATE = 1</code>.</p></li>
-<li><strong>Inconsistent information</strong> <p>If the fields conflict, the calendar prefers the most recently set fields. For example, when determining the day, the calendar looks for one of the following field combinations listed in the following table. The most recent combination, as determined by the most recently set single field, is used.</p></li>
-</ul>
-  <p align="center" class="Table"><strong>Table: Combinations of the calendar fields to determine the day</strong></p>
-<table>
-   <tbody>
-    <tr>
-     <th>Combinations of the calendar fields</th>
-    </tr>
-    <tr>
-     <td><code>I18N_UCALENDAR_MONTH + I18N_UCALENDAR_DAY_OF_MONTH</code>
-<p><code>I18N_UCALENDAR_MONTH + I18N_UCALENDAR_WEEK_OF_MONTH + I18N_UCALENDAR_DAY_OF_WEEK</code></p>
-<p><code>I18N_UCALENDAR_MONTH + I18N_UCALENDAR_DAY_OF_WEEK_IN_MONTH + I18N_UCALENDAR_DAY_OF_WEEK</code></p>
-<p><code>I18N_UCALENDAR_DAY_OF_YEAR</code></p>
-<p><code>I18N_UCALENDAR_DAY_OF_WEEK + I18N_UCALENDAR_WEEK_OF_YEAR</code></p></td>
-</tr>
-   </tbody>
-  </table>
-
-<p>For the time of day:</p>
-<p align="center" class="Table"><strong>Table: Combinations of calendar fields to determine the time of the day</strong></p>
+  <p align="center" class="Table"><strong>Table: Available calendar field combinations</strong></p>
 <table>
-   <tbody>
+<tbody>
     <tr>
-     <th>Combinations of the calendar fields</th>
-    </tr>
+               <th>Date information to be determined</th>
+               <th>Field combination</th>
+       </tr>
     <tr>
-     <td><code>I18N_UCALENDAR_HOUR_OF_DAY</code>
-        <p><code>I18N_UCALENDAR_AM_PM + I18N_UCALENDAR_HOUR</code></p></td>
-    </tr>
-   </tbody>
-  </table>
+               <td rowspan="5">Day</td>
+               <td><code>I18N_UCALENDAR_MONTH + I18N_UCALENDAR_DAY_OF_MONTH</code></td>
+       </tr>
+       <tr>
+               <td><code>I18N_UCALENDAR_MONTH + I18N_UCALENDAR_WEEK_OF_MONTH + I18N_UCALENDAR_DAY_OF_WEEK</code></td>
+       </tr>
+       <tr>
+               <td><code>I18N_UCALENDAR_MONTH + I18N_UCALENDAR_DAY_OF_WEEK_IN_MONTH + I18N_UCALENDAR_DAY_OF_WEEK</code></td>
+       </tr>
+       <tr>
+               <td><code>I18N_UCALENDAR_DAY_OF_YEAR</code></td>
+       </tr>
+       <tr>
+               <td><code>I18N_UCALENDAR_DAY_OF_WEEK + I18N_UCALENDAR_WEEK_OF_YEAR</code></td>
+       </tr>
+       <tr>
+               <td rowspan="2">Time of day</td>
+               <td><code>I18N_UCALENDAR_HOUR_OF_DAY</code></td>
+       </tr>
+       <tr>
+               <td><code>I18N_UCALENDAR_AM_PM + I18N_UCALENDAR_HOUR</code></td>
+       </tr>
+</tbody>
+</table>
 
            <div class="note">
         <strong>Note</strong>
         For some non-Gregorian calendars, different fields are necessary for complete disambiguation. For example, a full specification of the historical Arabic astronomical calendar requires the year, month, day-of-month and day-of-week in some cases.
     </div>
 
+<p>When computing a Udate from the time fields, 2 special circumstances can arise. The information can be insufficient to compute the Udate (you have only the year and the month, but not the day of the month), or the information can be inconsistent (such as "Tuesday, July 15, 1996" even though July 15, 1996 is actually a Monday).</p>
+<ul>
+<li><strong>Insufficient information</strong> <p>The calendar uses the default information to specify the missing fields. This can vary by calendar: for the Gregorian calendar, the default for a field is the same as that of the start of the epoch, such as <code>I18N_UCALENDAR_YEAR = 1970</code>, <code>I18N_UCALENDAR_MONTH = JANUARY</code>, <code>I18N_UCALENDAR_DATE = 1</code>.</p></li>
+<li><strong>Inconsistent information</strong> <p>If the fields conflict, the calendar prefers the most recently set fields. For example, when determining the day, the calendar looks for one of the following field combinations listed in the following table. The most recent combination, as determined by the most recently set single field, is used.</p></li>
+</ul>
+
 <h2 id="uchar" name="uchar">Unicode Character Database Access with Uchar</h2>
 <p>The Uchar API (in <a href="../../../../org.tizen.native.mobile.apireference/group__CAPI__BASE__UTILS__I18N__UCHAR__MODULE.html">mobile</a> and <a href="../../../../org.tizen.native.wearable.apireference/group__CAPI__BASE__UTILS__I18N__UCHAR__MODULE.html">wearable</a> applications) provides low-level access to the Unicode Character Database.</p>
 <p>Unicode assigns each code point (not only the assigned character) values for several properties. Most of them are simple boolean flags, or constants from a small enumerated list. For some properties, values are strings or other relatively more complex types.</p>
 <h2 id="ulocale" name="ulocale">Locale-sensitive Operations with Ulocale</h2>
 <p>The Ulocale API (in <a href="../../../../org.tizen.native.mobile.apireference/group__CAPI__BASE__UTILS__I18N__ULOCALE__MODULE.html">mobile</a> and <a href="../../../../org.tizen.native.wearable.apireference/group__CAPI__BASE__UTILS__I18N__ULOCALE__MODULE.html">wearable</a> applications) represents a specific geographical, political, or cultural region. Locale-sensitive operations <a href="#locales">use the Ulocale functions to tailor information</a> for the user. For example, displaying a number is a locale-sensitive operation. The number must be formatted according to the customs and conventions of the user's native country, region, or culture.
 </p>
-<p>You create a locale with one of the options listed below. Each component is separated by an underscore in the locale string:</p>
+<p>You create a locale with one of the following options. Each component is separated by an underscore in the locale string.</p>
 
- <p align="center" class="Table"><strong>Table: Options for creating a locale</strong></p>
-<table>
-   <tbody>
-    <tr>
-     <th>Options for creating a locale</th>
-    </tr>
-    <tr>
-     <td><code>newLanguage</code>
-        <p><code>newLanguage + newCountry</code></p>
-        <p><code>newLanguage + newCountry + newVariant</code></p></td>
-    </tr>
-   </tbody>
-  </table>
-
-<p>The first option is a valid <a href="http://www.loc.gov/standards/iso639-2/php/code_list.php" target="_blank">ISO Language Code</a>. These codes are the lower-case 2-letter codes as defined by the ISO-639 standard.
-</p>
-<p>The second option includes an additional <a href="http://www.chemie.fu-berlin.de/diverse/doc/ISO_3166.html" target="_blank">ISO Country Code</a>.
-</p>
-<p>The third option requires additional information on the variant. The variant codes are vendor and browser-specific. For example, use <code>WIN</code> for Windows, <code>MAC</code> for Macintosh, and <code>POSIX</code> for POSIX. Where there are 2 variants, separate them with an underscore, and put the most important one first. For example, a Traditional Spanish collation might be referenced, with <code>ES</code>, <code>ES</code>, <code>Traditional_WIN</code>.
+<ul>
+       <li><code>newLanguage</code>
+       <p>A valid <a href="http://www.loc.gov/standards/iso639-2/php/code_list.php" target="_blank">ISO language code</a> (lower-case 2-letter code as defined by the ISO-639 standard).</p></li>
+       <li><code>newLanguage + newCountry</code>
+       <p>A valid ISO language code and an additional <a href="http://www.chemie.fu-berlin.de/diverse/doc/ISO_3166.html" target="_blank">ISO country code</a>.</p></li>
+       <li><code>newLanguage + newCountry + newVariant</code>
+       <p>A valid ISO language code, ISO country code, and additional information on the variant. The variant codes are vendor and browser-specific. For example, use <code>WIN</code> for Windows, <code>MAC</code> for Macintosh, and <code>POSIX</code> for POSIX. Where there are 2 variants, separate them with an underscore, and put the most important one first. For example, a Traditional Spanish collation might be referenced, with <code>ES</code>, <code>ES</code>, <code>Traditional_WIN</code>.
+</p></li>
+       
+</ul>
+
+<p>
 </p>
+
+
 <p>Because a locale is simply an identifier for a region, no validity check is performed when you specify a locale. If you want to see whether particular resources are available for the locale you asked for, you must query those resources.
 </p>
 <p> Once you have specified a locale you can query it for information about itself. Use <code>i18n_ulocale_get_language()</code> to get the ISO Language Code. You can use <code>i18n_ulocale_get_display_name()</code> to get the name of the language suitable for display to the user.
index 0de5616..b3675db 100644 (file)
@@ -237,9 +237,9 @@ msgstr "Cliquez ici"
 <p>Use the <code>strcoll()</code> function as the comparison function for sorting the data set you are using.</p>
 </li>
 <li id="translators">Help the translators in their work
-<p>The PO file-based translation system is a common one and is likely to be known to translators. To provide the necessary information to help the translators in their work, it can be enough to mention its name (<code>gettext</code>). For more information, there is extensive additional documentation as well as questions and answers available on the Internet.</p>
+<p>The PO file-based translation system is a common one and is likely to be known to translators. To provide the necessary information to help the translators in their work, it can be enough to mention its name (<code>gettext</code>). There is extensive additional documentation as well as questions and answers available on the Internet.</p>
 
-<p>Do not hesitate to put comments in your code above the strings to be translated, since they can be extracted along with the strings and saved in the <code>.po</code> files for the translator to see them.</p>
+<p>Do not hesitate to put comments in your code above the strings to be translated, since they can be extracted along with the strings and saved in the <code>.po</code> files for the translator to see.</p>
 </li></ul>
 
 <script type="text/javascript" src="../../scripts/jquery.zclip.min.js"></script>
index c81d5bb..846dc59 100644 (file)
@@ -310,7 +310,7 @@ sensor_recorder_stop(SENSOR_HUMAN_PEDOMETER);
 
 <h2 id="query" name="query">Querying Recorded Sensor Data</h2>
 
-<p>You can query the recorded sensor data with several query parameters. The query parameters differ between sensor types. For the pedometer, for example, you can get the daily step counts for the last 7 days by setting the necessary parameters:</p>
+<p>You can query the recorded sensor data with several query parameters. The query parameters vary between sensor types. For the pedometer, for example, you can get the daily step counts for the last 7 days by setting the necessary parameters:</p>
 
 <ol>
 <li>Create a query.
@@ -441,7 +441,7 @@ example_sensor_recorder_callback(sensor_type_e type, sensor_recorder_data_h data
     </tr>
     <tr>
      <td>values[0]: X</td>
-     <td align="center">0g </td>
+     <td align="center">0g</td>
      <td align="center">1g</td>
      <td align="center">0g</td>
      <td align="center">-1g</td>
@@ -468,7 +468,7 @@ example_sensor_recorder_callback(sensor_type_e type, sensor_recorder_data_h data
     </tr>
     <tr>
      <td>Axis up (down)</td>
-     <td align="center">Y </td>
+     <td align="center">Y</td>
      <td align="center">X</td>
      <td align="center">-Y</td>
      <td align="center">-X</td>
@@ -650,7 +650,7 @@ example_sensor_recorder_callback(sensor_type_e type, sensor_recorder_data_h data
    <p>The gyroscope rotation vector sensor is the output of a software/hardware-based sensor fusion solution which uses the accelerometer and gyroscope to compute the orientation of the device. In this sensor, the pitch and roll equivalent representations are free of drift while the azimuth equivalent component is allowed to drift due to the absence of the magnetic sensor. The gyroscope rotation vector sensor represents the orientation of the device as a combination of an angle and an axis on which the device has rotated through a specific angle around an axis (X, Y, or Z).</p>
 
   <p>The following table lists the measurement data that the gyroscope rotation vector sensor provides.</p>
-  <p align="center" class="Table"><strong>: Measurement data detected by the gyroscope rotation vector sensor</strong></p>
+  <p align="center" class="Table"><strong>Table: Measurement data detected by the gyroscope rotation vector sensor</strong></p>
   <table border="1" style="width: 100%">
    <tbody>
     <tr>
@@ -1265,7 +1265,7 @@ example_sensor_recorder_callback(sensor_type_e type, sensor_recorder_data_h data
   </table>
 
   <p>The sleep state is <code>SENSOR_SLEEP_STATE_UNKNOWN</code>, <code>SENSOR_SLEEP_STATE_WAKE</code>, or <code>SENSOR_SLEEP_STATE_SLEEP</code>.</p>
-  <p>Depending on the device you are using, the available raw sensors are different and the sleep detection algorithm can also differ. In addition to the sleep state field, some specific device models can provide further data, as defined by the model manufacturer.</p>
+  <p>Depending on the device you are using, the available raw sensors are different and the sleep detection algorithm can also vary. In addition to the sleep state field, some specific device models can provide further data, as defined by the model manufacturer.</p>
 
 
    <h2 id="temperature" name="temperature">Temperature Sensor</h2>
index 3d08a35..3338b55 100644 (file)
@@ -53,7 +53,7 @@
 
   <h1>Location Information</h1>
 
-  <p>Location information has a geographical point on the Earth, and optionally location-related information can also contain information about altitude, accuracy about the geographical point and altitude, and the user speed and course of direction. The location manager features include managing location information on the device.</p>
+  <p>Location information allows you to get a device's geographic position. Additionally, location-related information can contain information about altitude, accuracy of the location and altitude readings, and the user's movement speed and direction. The location manager manages location information on the device.</p>
   <p>The main features of the Location Manager API include:</p>
        <ul>
        <li>Enabling the location service
@@ -81,7 +81,7 @@
     <div class="note">
         <strong>Note</strong>
         To test the Tizen location-based services on the emulator, provide location data (longitude and latitude) using the Emulator Control Panel.
-        <p>However, satellite data is not supported on the emulator, so GPS status data is available only on a target device.</p>
+       <p>Since satellite data is not supported on the emulator, GPS status data is available on a target device only.</p>
     </div>
 
   <p>Asynchronous location-related updates and region monitoring notifications are implemented with callback interfaces (functions whose names end with "cb").</p>
 <p>To start the location service:</p>
 <ol>
 <li><p>Create a location manager handle using the <code>location_manager_create()</code> function before you use the location service.</p>
-<p>In this example, the GPS is used as the source of the position data, so the first parameter is <code>LOCATIONS_METHOD_GPS</code>. You can use other values of the <code>location_method_e</code> enumeration (in <a href="../../../../org.tizen.native.mobile.apireference/group__CAPI__LOCATION__MANAGER__MODULE.html#gaec8a29c8b701753a7c9d91f4f8acfac5">mobile</a> and <a href="../../../../org.tizen.native.wearable.apireference/group__CAPI__LOCATION__MANAGER__MODULE.html#gaec8a29c8b701753a7c9d91f4f8acfac5">wearable</a> applications), such as <code>LOCATIONS_METHOD_HYBRID</code> or <code>LOCATIONS_METHOD_WPS</code>. <code>LOCATIONS_METHOD_HYBRID</code> uses both <code>LOCATIONS_METHOD_GPS</code> and <code>LOCATIONS_METHOD_WPS</code>, but the latter is less accurate.</p>
+<p>In this example, GPS is used as the source of the position data, so the first parameter is <code>LOCATIONS_METHOD_GPS</code>. You can use other values of the <code>location_method_e</code> enumeration (in <a href="../../../../org.tizen.native.mobile.apireference/group__CAPI__LOCATION__MANAGER__MODULE.html#gaec8a29c8b701753a7c9d91f4f8acfac5">mobile</a> and <a href="../../../../org.tizen.native.wearable.apireference/group__CAPI__LOCATION__MANAGER__MODULE.html#gaec8a29c8b701753a7c9d91f4f8acfac5">wearable</a> applications), such as <code>LOCATIONS_METHOD_HYBRID</code> or <code>LOCATIONS_METHOD_WPS</code>. <code>LOCATIONS_METHOD_HYBRID</code> uses both <code>LOCATIONS_METHOD_GPS</code> and <code>LOCATIONS_METHOD_WPS</code>, but the latter is less accurate.</p>
 <pre class="prettyprint">
 location_manager_h manager;
 location_manager_create(LOCATIONS_METHOD_GPS, &amp;manager);
@@ -147,12 +147,12 @@ location_manager_create(LOCATIONS_METHOD_GPS, &amp;manager);
 location_manager_start(manager);
 </pre></li>
 
-<li><p>Using the location service is power consuming, so if the service is not used, stop updating the location using the <code>location_manager_stop()</code> function. Call the <code>location_manager_start()</code> function again if the update position information is needed.</p>
+<li><p>Using the location service consumes power, so if the service is not used, stop updating the location using the <code>location_manager_stop()</code> function. Call the <code>location_manager_start()</code> function again if updated position information is needed.</p>
 <pre class="prettyprint">
 location_manager_stop(manager);
 </pre></li>
 
-<li><p>At the end of the application, destroy all used resources, such as the location manager (<code>location_manager_destroy()</code>):</p>
+<li><p>At the end of the application life-cycle, destroy all used resources, such as the location manager (<code>location_manager_destroy()</code>):</p>
 <pre class="prettyprint">
 location_manager_destroy(manager);
 manager = NULL;
@@ -323,13 +323,13 @@ location_bounds_destroy(bounds_poly);
 
 <h2 id="satellite" name="satellite">Getting Satellite Information</h2>
 
-<p>You can retrieve and update information on the satellite connected to the device. The information includes azimuth, elevation, PRN, SNR, and NMEA data. You can also get a notification of the satellite update using the satellite update callback. The callback is invoked periodically, receiving the information on connected satellites with every call.</p>
+<p>You can retrieve and update information about a satellite visible to the device. The information includes azimuth, elevation, PRN, SNR, and NMEA data. You can also get a notification of the satellite update using the satellite update callback. The callback is invoked periodically, receiving information about the visible satellites with every call.</p>
 <ol><li><p>Register the callback using the <code>location_manager_set_satellite_updated_cb()</code> function:</p>
 <pre class="prettyprint">
 gps_status_set_satellite_updated_cb(manager, capi_gps_status_satellite_updated_cb, 10, NULL);
 </pre>
 <p>The third parameter determines the frequency of callback calls. In this example, the callback is called every 10 seconds.</p> </li>
-<li>When the update is received, the callback containing brief satellite information is called. To get the detailed satellite information in the sky, call the <code>gps_status_foreach_satellites_in_view()</code> function in the callback. Variables that store the current satellite information are updated.
+<li>When the update is received, the callback containing brief satellite information is called. To get detailed information on the satellite, call the <code>gps_status_foreach_satellites_in_view()</code> function in the callback. Variables that store the current satellite information are updated.
 
 <pre class="prettyprint">
 int cur_azimuth;
index cd1522e..99997d3 100644 (file)
        <ul>
                <li>Get a structured address from place coordinates.</li>
        </ul>
-       <p>You can <a href="#address">parse the reverse geocode response</a> to use its details. The response contains structured address information, consisting of, for example, a street name, building number, city name, postal code, district name, state name, and country.</p>
+       <p>You can <a href="#address">parse the reverse geocode response</a> to use its details. The response contains structured address information consisting of, for example, a street name, building number, city name, postal code, district name, state name, and country.</p>
 
 
 <h2 id="search_place">Place Search</h2>
                <li>Query place information within a specified geographical area.</li>
                <li>Query place information from a free text address within a specified geographical area.</li>
        </ul>
-       <p>After performing the <a href="#use_search_place">place service request</a>, you receive the place search response. You can <a href="#place">parse the place search response</a> to use its details. The response contains structured place information, consisting of, for example, a place ID, name and URL, address, geographical location and distance from the center of the search area, place category, rating, review, and image.</p>
+       <p>After performing the <a href="#use_search_place">place service request</a>, you receive the place search response. You can <a href="#place">parse the place search response</a> to use its details. The response contains structured place information consisting of, for example, a place ID, name and URL, address, geographical location and distance from the center of the search area, place category, rating, review, and image.</p>
 
 
     <div class="note">
                <li>Query a route from a starting point to a destination specified as a geographical location.</li>
                <li>Query a route passing through a number of geographical locations.</li>
        </ul>
-       <p>After performing the <a href="#use_search_route">route service request</a>, you receive the route search response. You can <a href="#route">parse the route calculation response</a> to use its details. The response contains structured route information, consisting of, for example, a route ID, geographical coordinates of the start and destination points, route bounding box, transportation mode, and total distance and duration.</p>
+       <p>After performing the <a href="#use_search_route">route service request</a>, you receive the route search response. You can <a href="#route">parse the route calculation response</a> to use its details. The response contains structured route information consisting of, for example, a route ID, geographical coordinates of the start and destination points, route bounding box, transportation mode, and total distance and duration.</p>
 
 
 
index f11517b..0fb0e33 100644 (file)
 <ul><li>SD card insertion and removal: Media files are updated only in the SD card.</li>
 <li>Rebooting the device: Media files are updated in the internal memory and SD card on the device.</li></ul>
 
-<p>Media content is available to only use the files located in the specific paths. You can get the paths by using the <code>storage_get_directory()</code> function. For more information, see the Storage API (in <a href="../../../../org.tizen.native.mobile.apireference/group__CAPI__SYSTEM__STORAGE__MODULE.html">mobile</a> and <a href="../../../../org.tizen.native.wearable.apireference/group__CAPI__SYSTEM__STORAGE__MODULE.html">wearable</a> applications).</p>
+<p>You can only use the Media Content API to manage files located in specific paths. You can get the paths by using the <code>storage_get_directory()</code> function. For more information, see the Storage API (in <a href="../../../../org.tizen.native.mobile.apireference/group__CAPI__SYSTEM__STORAGE__MODULE.html">mobile</a> and <a href="../../../../org.tizen.native.wearable.apireference/group__CAPI__SYSTEM__STORAGE__MODULE.html">wearable</a> applications).</p>
 
     <div class="note">
         <strong>Note</strong>
@@ -1909,7 +1909,7 @@ media_cb(media_info_h media, void *user_data)
     </tr>
     <tr>
      <td><code>Media type</code></td>
-     <td>The media type of the media content</td>
+     <td>Media type of the media content</td>
     </tr>
     <tr>
      <td><code>Mime type</code></td>
@@ -1921,15 +1921,15 @@ media_cb(media_info_h media, void *user_data)
     </tr>
     <tr>
      <td><code>Added time</code></td>
-     <td>The time the media content was added to the database</td>
+     <td>Time the media content was added to the database</td>
     </tr>
     <tr>
      <td><code>Modified time</code></td>
-     <td>The last modification time of the media content</td>
+     <td>Last modification time of the media content</td>
     </tr>
     <tr>
      <td><code>Timeline</code></td>
-     <td>The time the media content was created
+     <td>Time the media content was created
         <p>You can use this value to sort the content.</p></td>
     </tr>
     <tr>
@@ -2056,11 +2056,11 @@ media_cb(media_info_h media, void *user_data)
     </tr>
     <tr>
      <td><code>Year</code></td>
-     <td>The year the audio content was created</td>
+     <td>Year the audio content was created</td>
     </tr>
     <tr>
      <td><code>Recorded date</code></td>
-     <td>The date the audio content was recorded</td>
+     <td>Date the audio content was recorded</td>
     </tr>
     <tr>
      <td><code>Copyright</code></td>
@@ -2138,7 +2138,7 @@ media_cb(media_info_h media, void *user_data)
     </tr>
     <tr>
      <td><code>Date taken</code></td>
-     <td>The time the image was created
+     <td>Time the image was created
         <p>You can get this information from the EXIF tag. If there is no EXIF tag for the image, set the created time in the file system.</p></td>
     </tr>
     <tr>
@@ -2163,8 +2163,8 @@ media_cb(media_info_h media, void *user_data)
     </tr>
     <tr>
      <td><code>Media ID</code></td>
-     <td>The media ID of the video content
-        <p>This value is same with media ID of general information.</p></td>
+     <td>Media ID of the video content
+        <p>This value is same as the media ID in the general information.</p></td>
     </tr>
      <tr>
      <td><code>Album</code></td>
@@ -2188,11 +2188,11 @@ media_cb(media_info_h media, void *user_data)
     </tr>
     <tr>
      <td><code>Year</code></td>
-     <td>The year the video content was created</td>
+     <td>Year the video content was created</td>
     </tr>
     <tr>
      <td><code>Recorded date</code></td>
-     <td>The date the video content was recorded</td>
+     <td>Date the video content was recorded</td>
     </tr>
     <tr>
      <td><code>Copyright</code></td>
index 28b77ea..204237e 100644 (file)
@@ -30,6 +30,8 @@
             <li><a href="#prerequisites">Prerequisites</a></li>
             <li><a href="#get_media">Updating and Retrieving Information</a></li>
             <li><a href="#send_media">Sending and Processing Commands</a></li>
+                       <li><a href="#serverstate">Media Controller Server State Attributes</a>
+                       <li><a href="#servermetadata">Media Controller Server Metadata Attributes</a>
         </ul>
         <p class="toc-title">Related Info</p>
         <ul class="toc">
 <div id="container"><div id="contents"><div class="content">
 
 <h1>Media Controller</h1>
-<p>Tizen enables you to communicate between the media controller server and the media controller client. You can send commands from the client to the server, and the client can request updated metadata and playback information from the server.</p>
+<p>You can establish communication between a media controller server and a media controller client. You can send commands from the client to the server, and the client can request updated metadata and playback information from the server.</p>
 
 <p>The main features of the Media Controller API include:</p>
 <ul>
     <li>Updating and retrieving information
         <p>You can <a href="#get_media">update the metadata and playback information</a> on the server side, and then retrieve the metadata and playback information on the client side.</p>
-                       <p>The media controller server provides current information about the registered application that you can send to the client.</p>
-       <p>To transfer the information at the client request, the media controller server updates the state information while the application is active. If the application is terminated when the client request arrives, the media controller server transfers the latest information.</p></li>
+               <p>The media controller server provides current information about the registered application that you can send to the client.</p>
+               <p>When the client requests the information, the media controller server updates the state information of an active application before transferring the data. If the application is not running when the client request arrives, the media controller server transfers the latest information.</p>
+       </li>
     <li>Sending and processing commands
         <p>You can <a href="#send_media">send a command</a> to the server from the client side, and then process the command on the server side.</p>
-                       <p>The client can request information from the server, and receive it through a callback.</p>
-       <p>The following tables define the various information the client can receive.</p>
-       <p align="center" class="Table"><strong>Table: Media controller server state attributes</strong></p>
-       <table>
-   <tbody>
-    <tr>
-     <th>Attribute</th>
-     <th>Description</th>
-    </tr>
-    <tr>
-     <td colspan="2"><strong>Server states</strong></td>
-    </tr>
-    <tr>
-     <td><code>MC_SERVER_ACTIVATE</code></td>
-     <td>Requested media controller server is active</td>
-    </tr>
-     <tr>
-     <td><code>MC_SERVER_DEACTIVATE</code></td>
-     <td>Requested media controller server is not active</td>
-    </tr>
-    <tr>
-     <td colspan="2"><strong>Playback states</strong></td>
-    </tr>
-    <tr>
-     <td><code>MC_PLAYBACK_STATE_NONE</code></td>
-     <td>No history of media playback</td>
-    </tr>
-     <tr>
-     <td><code>MC_PLAYBACK_STATE_PLAYING</code></td>
-     <td>Playback state of playing</td>
-    </tr>
-    <tr>
-     <td><code>MC_PLAYBACK_STATE_PAUSED</code></td>
-     <td>Playback state of paused</td>
-    </tr>
-    <tr>
-     <td><code>MC_PLAYBACK_STATE_STOPPED</code></td>
-     <td>Playback state of stopped</td>
-    </tr>
-    <tr>
-     <td><code>MC_PLAYBACK_STATE_NEXT_FILE</code></td>
-     <td>Playback state of next file</td>
-    </tr>
-    <tr>
-     <td><code>MC_PLAYBACK_STATE_PREV_FILE</code></td>
-     <td>Playback state of previous file</td>
-    </tr>
-     <tr>
-     <td><code>MC_PLAYBACK_STATE_FAST_FORWARD</code></td>
-     <td>Playback state of fast forward</td>
-    </tr>
-     <tr>
-     <td><code>MC_PLAYBACK_STATE_REWIND</code></td>
-     <td>Playback state of rewind</td>
-    </tr>
-    <tr>
-     <td colspan="2"><strong>Shuffle mode states</strong></td>
-    </tr>
-    <tr>
-     <td><code>MC_SHUFFLE_MODE_ON</code></td>
-     <td>Shuffle mode is on</td>
-    </tr>
-     <tr>
-     <td><code>MC_SHUFFLE_MODE_OFF</code></td>
-     <td>Shuffle mode is off</td>
-    </tr>
-    <tr>
-     <td colspan="2"><strong>Repeat mode states</strong></td>
-    </tr>
-    <tr>
-     <td><code>MC_REPEAT_MODE_ON</code></td>
-     <td>Repeat mode is on</td>
-    </tr>
-     <tr>
-     <td><code>MC_REPEAT_MODE_OFF</code></td>
-     <td>Repeat mode is off</td>
-    </tr>
-   </tbody>
-  </table>
-    <p align="center" class="Table"><strong>Table: Media controller server metadata attributes</strong></p>
-<table>
-   <tbody>
-    <tr>
-     <th>Attribute</th>
-     <th>Description</th>
-    </tr>
-     <tr>
-     <td><code>MC_META_MEDIA_TITLE</code></td>
-     <td>Title of the latest content in the media controller server</td>
-    </tr>
-    <tr>
-     <td><code>MC_META_MEDIA_ARTIST</code></td>
-     <td>Artist of the latest content in the media controller server</td>
-    </tr>
-     <tr>
-     <td><code>MC_META_MEDIA_ALBUM</code></td>
-     <td>Album name of the latest content in the media controller server</td>
-    </tr>
-    <tr>
-     <td><code>MC_META_MEDIA_AUTHOR</code></td>
-     <td>Author of the latest content in the media controller server</td>
-    </tr>
-    <tr>
-     <td><code>MC_META_MEDIA_GENRE</code></td>
-     <td>Genre of the latest content in the media controller server</td>
-    </tr>
-    <tr>
-     <td><code>MC_META_MEDIA_DURATION</code></td>
-     <td>Duration of the latest content in the media controller server</td>
-    </tr>
-    <tr>
-     <td><code>MC_META_MEDIA_DATE</code></td>
-     <td>Date of the latest content in the media controller server</td>
-    </tr>
-    <tr>
-     <td><code>MC_META_MEDIA_COPYRIGHT</code></td>
-     <td>Copyright of the latest content in the media controller server</td>
-    </tr>
-    <tr>
-     <td><code>MC_META_MEDIA_DESCRIPTION</code></td>
-     <td>Description of the latest content in the media controller server</td>
-    </tr>
-     <tr>
-     <td><code>MC_META_MEDIA_TRACK_NUM</code></td>
-     <td>Track number of the latest content in the media controller server</td>
-    </tr>
-     <tr>
-     <td><code>MC_META_MEDIA_PICTURE</code></td>
-     <td>Album art of the latest content in the media controller server</td>
-    </tr>
-   </tbody>
-  </table>
- </li></ul>
+               <p>The client can request <a href="#serverstate">server state</a> or <a href="#servermetadata">server metadata</a> information from the server, and receive it through a callback.</p>
+       </li>
+</ul>
 
 <h2 id="prerequisites">Prerequisites</h2>
 
@@ -463,6 +336,145 @@ mc_server_destroy(g_server_h);
 </li>
 
 </ol>
+<h2 id="serverstate">Media Controller Server State Attributes</h2>
+
+<p>The following table lists all the server state attributes the client can receive.</p>
+
+<p align="center" class="Table"><strong>Table: Media controller server state attributes</strong></p>
+       <table>
+   <tbody>
+    <tr>
+     <th>Attribute</th>
+     <th>Description</th>
+    </tr>
+    <tr>
+     <td colspan="2"><strong>Server states</strong></td>
+    </tr>
+    <tr>
+     <td><code>MC_SERVER_ACTIVATE</code></td>
+     <td>Requested media controller server is active</td>
+    </tr>
+     <tr>
+     <td><code>MC_SERVER_DEACTIVATE</code></td>
+     <td>Requested media controller server is not active</td>
+    </tr>
+    <tr>
+     <td colspan="2"><strong>Playback states</strong></td>
+    </tr>
+    <tr>
+     <td><code>MC_PLAYBACK_STATE_NONE</code></td>
+     <td>No history of media playback</td>
+    </tr>
+     <tr>
+     <td><code>MC_PLAYBACK_STATE_PLAYING</code></td>
+     <td>Playback state of playing</td>
+    </tr>
+    <tr>
+     <td><code>MC_PLAYBACK_STATE_PAUSED</code></td>
+     <td>Playback state of paused</td>
+    </tr>
+    <tr>
+     <td><code>MC_PLAYBACK_STATE_STOPPED</code></td>
+     <td>Playback state of stopped</td>
+    </tr>
+    <tr>
+     <td><code>MC_PLAYBACK_STATE_NEXT_FILE</code></td>
+     <td>Playback state of next file</td>
+    </tr>
+    <tr>
+     <td><code>MC_PLAYBACK_STATE_PREV_FILE</code></td>
+     <td>Playback state of previous file</td>
+    </tr>
+     <tr>
+     <td><code>MC_PLAYBACK_STATE_FAST_FORWARD</code></td>
+     <td>Playback state of fast forward</td>
+    </tr>
+     <tr>
+     <td><code>MC_PLAYBACK_STATE_REWIND</code></td>
+     <td>Playback state of rewind</td>
+    </tr>
+    <tr>
+     <td colspan="2"><strong>Shuffle mode states</strong></td>
+    </tr>
+    <tr>
+     <td><code>MC_SHUFFLE_MODE_ON</code></td>
+     <td>Shuffle mode is on</td>
+    </tr>
+     <tr>
+     <td><code>MC_SHUFFLE_MODE_OFF</code></td>
+     <td>Shuffle mode is off</td>
+    </tr>
+    <tr>
+     <td colspan="2"><strong>Repeat mode states</strong></td>
+    </tr>
+    <tr>
+     <td><code>MC_REPEAT_MODE_ON</code></td>
+     <td>Repeat mode is on</td>
+    </tr>
+     <tr>
+     <td><code>MC_REPEAT_MODE_OFF</code></td>
+     <td>Repeat mode is off</td>
+    </tr>
+   </tbody>
+  </table>
+  
+ <h2 id="servermetadata">Media Controller Server Metadata Attributes</h2>
+ <p>The following table lists all the server metadata attributes the client can receive.</p>
+    <p align="center" class="Table"><strong>Table: Media controller server metadata attributes</strong></p>
+<table>
+   <tbody>
+    <tr>
+     <th>Attribute</th>
+     <th>Description</th>
+    </tr>
+     <tr>
+     <td><code>MC_META_MEDIA_TITLE</code></td>
+     <td>Title of the latest content in the media controller server</td>
+    </tr>
+    <tr>
+     <td><code>MC_META_MEDIA_ARTIST</code></td>
+     <td>Artist of the latest content in the media controller server</td>
+    </tr>
+     <tr>
+     <td><code>MC_META_MEDIA_ALBUM</code></td>
+     <td>Album name of the latest content in the media controller server</td>
+    </tr>
+    <tr>
+     <td><code>MC_META_MEDIA_AUTHOR</code></td>
+     <td>Author of the latest content in the media controller server</td>
+    </tr>
+    <tr>
+     <td><code>MC_META_MEDIA_GENRE</code></td>
+     <td>Genre of the latest content in the media controller server</td>
+    </tr>
+    <tr>
+     <td><code>MC_META_MEDIA_DURATION</code></td>
+     <td>Duration of the latest content in the media controller server</td>
+    </tr>
+    <tr>
+     <td><code>MC_META_MEDIA_DATE</code></td>
+     <td>Date of the latest content in the media controller server</td>
+    </tr>
+    <tr>
+     <td><code>MC_META_MEDIA_COPYRIGHT</code></td>
+     <td>Copyright of the latest content in the media controller server</td>
+    </tr>
+    <tr>
+     <td><code>MC_META_MEDIA_DESCRIPTION</code></td>
+     <td>Description of the latest content in the media controller server</td>
+    </tr>
+     <tr>
+     <td><code>MC_META_MEDIA_TRACK_NUM</code></td>
+     <td>Track number of the latest content in the media controller server</td>
+    </tr>
+     <tr>
+     <td><code>MC_META_MEDIA_PICTURE</code></td>
+     <td>Album art of the latest content in the media controller server</td>
+    </tr>
+   </tbody>
+  </table>
 
 <script type="text/javascript" src="../../scripts/jquery.zclip.min.js"></script>
 <script type="text/javascript" src="../../scripts/showhide.js"></script>
index 54f39c5..0860628 100644 (file)
@@ -67,7 +67,7 @@
 
 <h2 id="codecs">Media Codecs</h2>
 
-<p>Media codec provides interfaces for encoding and decoding audio and video data.</p>
+<p>You can encode and decode audio and video data with codecs.</p>
 
 <p>To use codecs:</p>
 
index dd4ce65..a7e6686 100644 (file)
@@ -283,7 +283,7 @@ ret = metadata_editor_set_metadata(g_metadata_h, METADATA_EDITOR_ATTR_TITLE, val
 
   <div class="note">
         <strong>Note</strong>
-        The updated metadata is applied to the file only after you call the <code>metadata_editor_update_metadata()</code> function, which is discussed below.
+        The updated metadata is applied to the file only after you <a href="#apply">call the <code>metadata_editor_update_metadata()</code> function</a>.
     </div>
 </li>
 <li>
@@ -305,10 +305,10 @@ ret = metadata_editor_remove_picture(g_metadata_h, index);
 
   <div class="note">
         <strong>Note</strong>
-        The artwork is added to the file or removed from the file only after you call the <code>metadata_editor_update_metadata()</code> function, which is discussed below.
+        The artwork is added to the file or removed from the file only after you <a href="#apply">call the <code>metadata_editor_update_metadata()</code> function</a>.
     </div>
 </li>
-<li>
+<li id="apply">
 <p>Apply the metadata and artwork edits to the file using the <code>metadata_editor_update_metadata()</code> function:</p>
 <pre class="prettyprint">
 ret = metadata_editor_update_metadata(g_metadata_h);
index 3ff9cb7..6061555 100644 (file)
@@ -145,7 +145,7 @@ LOGI("[%s] Device: %s ", __func__, alcGetString(device, ALC_DEVICE_SPECIFIER));
 
 <div class="note">
        <strong>Note</strong>
-       Tizen 3.0 works with a stream information concept. To integrate OpenAL with stream information, use the <code>alcOpenDeviceNew()</code> function (since Tizen 3.0) instead of the <code>alcOpenDevice()</code> function, and give the sound stream information handle as a parameter. For this you need to include the <code>sound_manager.h</code> header file and create a sound stream information handle with the <code>sound_manager_create_stream_information()</code> function.
+       Tizen 3.0 works with a stream information concept. To integrate OpenAL with stream information, use the <code>alcOpenDeviceNew()</code> function (since Tizen 3.0) instead of the <code>alcOpenDevice()</code> function, and give the sound stream information handle as a parameter. To create the handle, include the <code>sound_manager.h</code> header file and call the <code>sound_manager_create_stream_information()</code> function.
 </div>
 </li>
 <li>
index 5a4e1c3..261be36 100644 (file)
@@ -205,7 +205,7 @@ ret = sound_manager_set_volume(type, value);
 </ol>
 
 <h2 id="query_device" name="query_device">Querying Sound Devices</h2>
-<p>The audio behavior of your application must differ depending on the sound devices that are connected.</p>
+<p>The audio behavior of your application must change depending on the sound devices that are connected.</p>
 
 <p>Use the <code>sound_manager_get_current_device_list()</code> function to get the list handle of the currently connected sound devices. With the sequential search of this device list, you can get the device handle of each device on the list. You can use the <code>sound_manager_get_next_device()</code> and <code>sound_manager_get_prev_device()</code> functions for a sequential search of the device list.</p>
 
index d335018..5da77c2 100644 (file)
 }
 </pre>
 </li>
-<li>If you have data to send to the application but no need to notify the user, use the action field on the same level as the message field, instead of within the message field, and do not include the message field itself. In this case, the notification is delivered with the best effort.
+<li>If you have data to send to the application but no need to notify the user, use the action field on the same level as the messages field, instead of within the messages field, and do not include the message field itself. In this case, the notification is delivered with the best effort.
 <pre class="prettyprint">
 {
     "action": "backgroundLaunch",
 <li>Method: POST</li>
 <li>Data: JSON </li>
 <li>Description: Request a notification push from the push server to the push service</li>
-<li>Note: The total request message body must be less than the system default value, 200 kb. If not, "3034 – error of too long chuned message data" is returned. The system default value can be changed as needed.</li>
+<li>Note: The total request message body must be less than the system default value, 200 kb. If not, "3035 – error of too long chuned message data" is returned. The system default value can be changed as needed.</li>
 <li>Header
 
 <p>There are 2 required fields: <code>appID</code> and <code>appSecret</code>.</p>
@@ -559,7 +559,8 @@ appSecret: dYo/o/m11gmWmjs7+5f+2zLNVOc=
         "regID": "ab234567",
         "requestID": "0000002",
         "statusCode": 3008,
-        "statusMsg": "error of not registered regID"+   }]
+        "statusMsg": "error of not registered regID"
+    }]
 }
 </pre>
 </li>
@@ -577,7 +578,7 @@ appSecret: dYo/o/m11gmWmjs7+5f+2zLNVOc=
 <li>Data: JSON </li>
 <li>Description: Request a notification push from the push server to the push service</li>
 <li>Argument: See the <a href="#single_req">single request</a></li>
-<li>Note: The total request message body must be less than the system default value, 200 kb. If not, "3034 – error of too long chuned message data" is returned. The system default value can be changed as needed.</li>
+<li>Note: The total request message body must be less than the system default value, 200 kb. If not, "3035 – error of too long chuned message data" is returned. The system default value can be changed as needed.</li>
 <li>Example header:
 <pre class="prettyprint">
 appID: 1234567890987654
index 9a35723..db27522 100644 (file)
    <p>You can also get accounts based on a <a href="#retrieve">specific account provider package name</a>, or account providers based on a <a href="#capability">specific capability</a>.</p></li>
    <li>Receiving account change notifications</li>
    <li>Modifying account properties
-   <p>The <code>account.h</code> header file handles account-related information. You can <a href="#queries">query the account details</a> with database queries, <a href="#type">retrieve the account type</a>, and <a href="#update">update the account information</a>. For a list of modifiable account properties, see <a href="#acc_property">Account and Account Provider Properties</a>.</p>  
+   <p>The <code>account.h</code> header file handles account-related information. You can <a href="#queries">query the account details</a> with database queries, <a href="#type">retrieve the account type</a>, and <a href="#update">update the account information</a>. For a list of modifiable account properties, see <a href="#acc_property">Account and Account Provider Properties</a>.</p>
 </li></ul>
 
     <div class="note">
         <strong>Note</strong>
         Account providers, such as Google and Facebook, represent specific service provider-related information or protocol that provides the user accounts. To add, update, or remove an accounts, you must register a specific account provider for all your applications belonging to the same package.
-               <p>To register an account provider, define the <a href="#accprovider_property">account provider information</a> in the <strong>Account</strong> tab of the manifest editor, and implement the <a href="#appcontrol">account application control</a>.</p>
+               <p>To register an account provider, define the <a href="#accprovider_property">account provider information</a> in the <code>Account</code> tab of the manifest editor, and implement the <a href="#appcontrol">account application control</a>.</p>
                <p>If the application has defined the account provider information and implements the appcontrol for the account provider, the account provider is automatically registered when the application is installed.</p>
     </div>
 
@@ -375,7 +375,7 @@ ret = account_delete_from_db_by_id(account_id);
 <p>Application name displayed on the Add account screen, according to the selected language.</p>
 <p>An account provider must have at least one label tag.</p></li>
 <li><code>&lt;capability&gt;http://tizen.org/account/capability/contact&lt;/capability&gt;</code>
-<p>For more information, see <a href="#provider">Account Providers</a>.</p></li></ul>
+<p>For more information, see the <a href="#provider">Account provider properties table</a>.</p></li></ul>
 </li>
 
 <li>Create the sign-in screen UI.
@@ -1020,7 +1020,7 @@ account_type_destroy(account_type);
    </tbody>
   </table>
 
-<p>The following table lists the properties that can be defined for each account provider.</p>
+<p id="provider">The following table lists the properties that can be defined for each account provider.</p>
 <p align="center" class="Table"><strong>Table: Account provider properties</strong></p>
   <table id="accprovider_property" border="1">
    <tbody>
@@ -1103,7 +1103,7 @@ account_type_destroy(account_type);
     </tr>
    </tbody>
   </table>
+
 <script type="text/javascript" src="../../scripts/jquery.zclip.min.js"></script>
 <script type="text/javascript" src="../../scripts/showhide.js"></script>
 </div></div></div>
index 181ed9f..fec7d36 100644 (file)
@@ -480,9 +480,7 @@ calendar_db_get_all_records(_calendar_calendar_book._uri, 0, 0, &amp;calendar_bo
    </tbody>
   </table>
 <p>The recurrence model in the Calendar API is compliant with the <a href="http://www.ietf.org/rfc/rfc2445.txt" target="blank">iCalendar specification</a>. The following event properties have the same functionality as their corresponding values in iCalendar:</p>
- <p align="center" class="Table"><strong>
-     Table: Recurrence rules
-   </strong></p>
+ <p align="center" class="Table"><strong>Table: Recurrence rules</strong></p>
 <table>
    <tbody>
     <tr>
index b6ebffc..decb35c 100644 (file)
 
   <h1>Contacts</h1>
 
-<p>You can help the user to manage their contact information, such as address books, groups, persons, and phone logs. Since the contact information is stored in a contacts database, you must <a href="#prerequisites">connect to the contact service</a> to manage the information.</p>
+<p>You can help the user manage their contact information, such as address books, groups, persons, and phone logs. Since the contact information is stored in a contacts database, you must <a href="#prerequisites">connect to the contact service</a> to manage the information.</p>
 
 <p>The following figure illustrates the structure of the contact information in the database:</p>
 <ul>
index d885406..269c07d 100644 (file)
   <div class="note">
         <strong>Note</strong>
         The Sync Adapter API (in <a href="../../../../org.tizen.native.mobile.apireference/group__CAPI__SYNC__ADAPTER__MODULE.html">mobile</a> and <a href="../../../../org.tizen.native.wearable.apireference/group__CAPI__SYNC__ADAPTER__MODULE.html">wearable</a> applications) operations must be carried out by a service application (which operates data synchronization) before using the Sync Manager API.
-<p>The number of service applications that can set callbacks is restricted to only one per a package.</p>
-    </div>
+        <p>The number of service applications that can set callbacks is restricted to only 1 per package.</p>
+  </div>
 
  <p>The Sync Adapter API allows you to:</p>
 <ul>
@@ -242,7 +242,7 @@ sync_adapter_unset_callbacks();
 
 <h2 id="periodic_sync" name="periodic_sync">Defining a Periodic Sync Job</h2>
 
-<p>To inform periodically a service application of the time to operate a sync job with its sync interval:</p>
+<p>To inform a service application of the time interval at which to operate a sync job:</p>
 
 <ol>
 <li>If you want to use an account, create the account and obtain the parameters that are used to call the <code>sync_manager_add_periodic_sync_job()</code> function.
index 2390a9a..b7ce28e 100644 (file)
@@ -47,7 +47,7 @@
 <ul>\r
 <li>Privilege name: Privilege description in a simple present participle form.</li>\r
 <li>Privilege description: Detailed information on permissions, including accessible resources and functionality, that the application can get with this privilege. It also contains information related to billing or device performance, such as cost or increased battery usage.</li>\r
-<li>Privacy name: Privacy name represents a group of privileges that are related to a certain common feature.</li>\r
+<li>Privacy name: Privacy name represents a group of privileges that are related to a certain privacy feature.</li>\r
 </ul>\r
 <p>Since Tizen 3.0, some privileges are categorized as privacy-related. The user can switch those privileges on and off as needed by changing certain privileges' status to allow or deny them at runtime. This means that the application calling a privileged API can be prevented from using it even if the required privilege is declared in its manifest file. Specific APIs can be used to check the privacy-related privilege's current status and get the display name of the privacy that includes the privilege. For example, you can use the APIs to check the privilege's current status before entering a function that requires the privilege, and if the status is off, display a guide message to the user to ask them to go to the device settings and switch the required privacy on.</p>\r
 \r
index b6839df..0fb30f9 100644 (file)
@@ -32,7 +32,7 @@
 <div id="container"><div id="contents"><div class="content">
 <h1>Security</h1>
 
-<p>The security features introduce how private information remains private, and how the user knows when they are trying to access privileged information. You can use a repository and cryptographic operations to manage keys, certificates, and sensitive user data. And when the user tries to access privileged information, you can display information about the data.</p>
+<p>The security features introduce how private information remains private, and how the user knows when they are trying to access privileged information. You can use a repository and cryptographic operations to manage keys, certificates, and sensitive user data. When the user tries to access privileged information, you can display information about the data.</p>
 
 <p>You can use the following security features in your native applications:</p>
 <ul>
index d806fed..1e17820 100644 (file)
@@ -91,7 +91,7 @@ Dali::CameraActor defaultCamera = defaultRenderTask.GetCameraActor();
 
 <div class="note">
        <strong>Note</strong>
-       DALi stereoscopic viewing mode is still under development, and may not be mature enough for commercialized applications at the moment. For example, distortion correction is not supported yet. Tizen continues to improve the stereoscopic mode to give you a chance to provide more exciting and immersive user experience to your customers.
+       DALi stereoscopic viewing mode is still under development, and may not be mature enough for commercialized applications at the moment. For example, distortion correction is not supported yet. Tizen continues to improve the stereoscopic mode to give you a chance to provide more exciting and immersive user experience to your customers.
 </div>
 
 <script type="text/javascript" src="../../../scripts/jquery.zclip.min.js"></script>
index f41b874..951c548 100644 (file)
 
 <p>The user interface features introduce how you can create a visual outlook for the UI application to ensure the best possible user experience.</p>
 
-<p>The UI framework is a universal, reusable software environment that provides the essential building blocks as part of the Tizen platform to facilitate the development of Tizen native applications. The framework provides the window, UI components, and scene-based graphic rendering architecture needed to manage your application user interface. In addition, the framework provides animations and effects needed to make your application more fresh and vivid, event handling and the main loop to interact with the user and system, and more features, such as scalability, and font setting. The Tizen platform provides the EFL and DALi UI toolkit frameworks.</p>
+<p>The UI framework is a universal, reusable software environment that provides the essential building blocks as part of the Tizen platform to facilitate the development of Tizen native applications. The framework provides the window, UI components, and scene-based graphic rendering architecture needed to manage your application user interface. In addition, the framework provides animations and effects needed to make your application more fresh and vivid, event handling and the main loop to interact with the user and system, and other features, such as scalability and font setting. The Tizen platform provides the EFL and DALi UI toolkit frameworks.</p>
 
 <p>You can use the following user interface features in your native applications:</p>
 
 <ul>
 <li><a href="efl/efl_n.htm">Enlightenment Foundation Libraries (EFL)</a>
 
-<p>You can use the EFL UI toolkit if you are creating a 2D-based Tizen native application. However, EFL supports 2.5D and 3D effects and 3D objects as well. EFL provides streamlined graphic core libraries you need to create powerful applications. EFL needs lower memory but provides high performance, and supports a retained mode graphics system and user-centric features, such as themes, 2D/3D effects, and accessibility. In addition, EFL supports various resolutions with the same layout, fast and small file systems, a variety of programming language bindings, and a separate UI and logic.</p></li>
+<p>You can use the EFL UI toolkit if you are creating a 2D-based Tizen native application. However, EFL supports 2.5D and 3D effects and 3D objects as well. EFL provides streamlined graphic core libraries you need to create powerful applications. EFL needs relatively low memory but provides high performance, and supports a retained mode graphics system and user-centric features, such as themes, 2D/3D effects, and accessibility. In addition, EFL supports various resolutions with the same layout, fast and small file systems, a variety of programming language bindings, and a separate UI and logic.</p></li>
 
 <li><a href="dali/dali_n.htm">Dynamic Animation Library (DALi)</a>
 
-<p>You can use the DALi 3D UI toolkit if you are creating a high-performance rich UI application. DALi is based on OpenGL&reg; ES 2.0 and 3.0; however it hides the complexity of the OpenGL&reg; ES API from you. DALi requires a GPU (Graphical Processing Unit) on the device.</p></li>
+<p>You can use the DALi 3D UI toolkit if you are creating a high-performance rich UI application. DALi is based on OpenGL&reg; ES 2.0 and 3.0; however, it hides the complexity of the OpenGL&reg; ES API from you. DALi requires a GPU (Graphical Processing Unit) on the device.</p></li>
 </ul>
 
 <script type="text/javascript" src="../../scripts/jquery.zclip.min.js"></script>