2 * Copyright (c) 2014 Samsung Electronics Co., Ltd.
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
19 #include <dali/internal/adaptor/common/adaptor-impl.h>
22 #include <app_common.h>
23 #include <system_settings.h>
25 #ifdef APPCORE_WATCH_AVAILABLE
26 #include <screen_connector_provider.h>
30 #include <Ecore_Wl2.h>
32 #include <Ecore_Wayland.h>
48 static void OnSystemLanguageChanged( system_settings_key_e key, void* data )
51 if( system_settings_get_value_string( SYSTEM_SETTINGS_KEY_LOCALE_LANGUAGE, &locale ) != SYSTEM_SETTINGS_ERROR_NONE ||
54 DALI_LOG_ERROR( "DALI OnSystemLanguageChanged failed " );
58 Adaptor* adaptor = static_cast< Adaptor* >( data );
61 adaptor->SetRootLayoutDirection( locale );
69 void Adaptor::GetDataStoragePath( std::string& path)
72 char *pathInt = app_get_data_path();
86 void Adaptor::GetAppId( std::string& appId )
102 void Adaptor::SurfaceInitialized()
104 #ifdef APPCORE_WATCH_AVAILABLE
105 if ( !mUseRemoteSurface )
112 // Use strdup() in app_get_id(), so need to free memory
115 #ifdef ECORE_WAYLAND2
116 Ecore_Wl2_Window* ecoreWlWindow = AnyCast<Ecore_Wl2_Window*>( mNativeWindow );
117 screen_connector_provider_remote_enable( appId, ecore_wl2_window_surface_get( ecoreWlWindow ) );
119 Ecore_Wl_Window* ecoreWlWindow = AnyCast<Ecore_Wl_Window*>( mNativeWindow );
120 screen_connector_provider_remote_enable( appId, ecore_wl_window_surface_get( ecoreWlWindow ) );
127 void Adaptor::SetupSystemInformation()
129 if( system_settings_set_changed_cb( SYSTEM_SETTINGS_KEY_LOCALE_LANGUAGE, OnSystemLanguageChanged, this ) != SYSTEM_SETTINGS_ERROR_NONE )
131 DALI_LOG_ERROR( "DALI system_settings_set_changed_cb failed.\n" );
136 if( system_settings_get_value_string( SYSTEM_SETTINGS_KEY_LOCALE_LANGUAGE, &locale ) != SYSTEM_SETTINGS_ERROR_NONE ||
139 DALI_LOG_ERROR( "DALI OnSystemLanguageChanged failed " );
143 SetRootLayoutDirection( locale );
149 } // namespace Adaptor
151 } // namespace Internal