diff options
-rwxr-xr-x | home/res/edje/circle/CMakeLists.txt | 4 | ||||
-rwxr-xr-x | home/res/edje/rectangle/CMakeLists.txt | 2 | ||||
-rwxr-xr-x | home/src/layout.c | 6 | ||||
-rwxr-xr-x | home/src/main.c | 4 | ||||
-rwxr-xr-x | packaging/org.tizen.w-home.spec | 48 |
5 files changed, 47 insertions, 17 deletions
diff --git a/home/res/edje/circle/CMakeLists.txt b/home/res/edje/circle/CMakeLists.txt index 2f8149a..bf53f61 100755 --- a/home/res/edje/circle/CMakeLists.txt +++ b/home/res/edje/circle/CMakeLists.txt @@ -13,4 +13,6 @@ FOREACH(edc_file ${edc_files}) ENDFOREACH(edc_file) # install edc files -INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/ DESTINATION ${EDJEDIR} FILES_MATCHING PATTERN "*.edj") +MESSAGE(${CMAKE_CURRENT_SOURCE_DIR}) +MESSAGE(${CMAKE_CURRENT_BINARY_DIR}) +INSTALL(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/ DESTINATION ${EDJEDIR} FILES_MATCHING PATTERN "*.edj") diff --git a/home/res/edje/rectangle/CMakeLists.txt b/home/res/edje/rectangle/CMakeLists.txt index 2f8149a..1ea0f34 100755 --- a/home/res/edje/rectangle/CMakeLists.txt +++ b/home/res/edje/rectangle/CMakeLists.txt @@ -13,4 +13,4 @@ FOREACH(edc_file ${edc_files}) ENDFOREACH(edc_file) # install edc files -INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/ DESTINATION ${EDJEDIR} FILES_MATCHING PATTERN "*.edj") +INSTALL(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/ DESTINATION ${EDJEDIR} FILES_MATCHING PATTERN "*.edj") diff --git a/home/src/layout.c b/home/src/layout.c index 9f02141..0f6e797 100755 --- a/home/src/layout.c +++ b/home/src/layout.c @@ -744,6 +744,9 @@ static key_cb_ret_e _back_key_cb(void *data) Evas_Object *layout = data; Evas_Object *scroller = NULL; + if (apps_is_visible()) { + return KEY_CB_RET_STOP; + } retv_if(!layout, KEY_CB_RET_CONTINUE); scroller = evas_object_data_get(layout, DATA_KEY_SCROLLER); @@ -762,6 +765,9 @@ static key_cb_ret_e _home_key_cb(void *data) Evas_Object *layout = data; Evas_Object *scroller = NULL; + if (apps_is_visible()) { + return KEY_CB_RET_STOP; + } retv_if(!layout, KEY_CB_RET_CONTINUE); scroller = evas_object_data_get(layout, DATA_KEY_SCROLLER); diff --git a/home/src/main.c b/home/src/main.c index e6907c3..d2fb8ba 100755 --- a/home/src/main.c +++ b/home/src/main.c @@ -83,6 +83,7 @@ #define HOME_SERVICE_VALUE_SHOW_NOTI "show_noti" #define HOME_SERVICE_VALUE_APPS_EDIT "apps_edit" #define HOME_SERVICE_VALUE_FIRST_BOOT "first_boot" +#define HOME_SERVICE_VALUE_LAUNCH_APPS "launch_apps" #define PRIVATE_DATA_KEY_FOCUS_IN_EVENT_HANDLER "k_fi_ev_hd" #define PRIVATE_DATA_KEY_FOCUS_OUT_EVENT_HANDLER "k_fo_ev_hd" @@ -1186,9 +1187,10 @@ static void _app_control(app_control_h service, void *data) } else if (!strncmp(service_val, HOME_SERVICE_VALUE_FIRST_BOOT, strlen(HOME_SERVICE_VALUE_FIRST_BOOT))) { _D("First boot operation"); main_info.first_boot = 1; - } else if (!strncmp(service_val, "launch_apps", strlen("launch_apps"))) { + } else if (!strncmp(service_val, HOME_SERVICE_VALUE_LAUNCH_APPS, strlen(HOME_SERVICE_VALUE_LAUNCH_APPS))) { _D("Launch Circular UI"); /* launch_apps_UI(NULL); */ + apps_show(); } free(service_val); } else { diff --git a/packaging/org.tizen.w-home.spec b/packaging/org.tizen.w-home.spec index 803eaca..5bdfd02 100755 --- a/packaging/org.tizen.w-home.spec +++ b/packaging/org.tizen.w-home.spec @@ -6,10 +6,6 @@ Group: Applications/System License: Flora-1.1 Source0: %{name}-%{version}.tar.gz -%if "%{?tizen_profile_name}"=="mobile" -ExcludeArch: %{arm} %ix86 x86_64 -%endif - BuildRequires: cmake, gettext-tools, smack, coreutils BuildRequires: pkgconfig(appcore-efl) BuildRequires: pkgconfig(badge) @@ -62,10 +58,20 @@ BuildRequires: edje-bin BuildRequires: embryo-bin BuildRequires: gettext-devel BuildRequires: hash-signer -BuildRequires: model-build-features %description Home for wearable devices +Without installing %{name}-extension-circle, this supports rectangle displays only. +To support circle displays, install %{name}-extension-circle after this. + +%package extension-circle +Summary: Circle-UI Extension for w-home +Requires: %{name} = %{version}-%{release} +%description extension-circle +Extension of home for wearable devices supporting circle displays. +This overwrites the execution file and resources of %{name}; thus, you need to +reinstall %{name} after unintalling this package if you want to +keep the original behaviors of %{name} after the uninstall. %prep %setup -q @@ -74,21 +80,26 @@ Home for wearable devices %build -%if "%{model_build_feature_formfactor}" == "circle" - %define CIRCLE "circle" -%else - %define CIRCLE "rectangle" -%endif - RPM_OPT=`echo $CFLAGS|sed 's/-Wp,-D_FORTIFY_SOURCE=2//'` export CFLAGS=$RPM_OPT -cmake -DCMAKE_INSTALL_PREFIX="%{PREFIX}" -DARCH=%{ARCH} -DCIRCLE="%{CIRCLE}" + +mkdir -p build_circle +pushd build_circle +cmake .. -DCMAKE_INSTALL_PREFIX="%{PREFIX}" -DARCH=%{ARCH} -DCIRCLE=circle +make %{?jobs:-j%jobs} +popd + +cmake -DCMAKE_INSTALL_PREFIX="%{PREFIX}" -DARCH=%{ARCH} -DCIRCLE=rectangle make %{?jobs:-j%jobs} %install rm -rf %{buildroot} +pushd build_circle +%make_install +mv %{buildroot}%{PREFIX}/bin/w-home %{buildroot}%{PREFIX}/bin/w-home.circle +popd %make_install mkdir -p %{buildroot}/usr/share/license mkdir -p %{buildroot}/opt/usr/share/w-launcher @@ -120,10 +131,19 @@ vconftool set -t int "memory/private/org.tizen.w-home/sensitive_move" 1 -i -g $I /usr/share/packages/%{name}.xml /usr/share/icons/default/small/%{name}*.png %{PREFIX}/*.xml -%{PREFIX}/bin/* +%{PREFIX}/bin/w-home %{PREFIX}/shared/* %{PREFIX}/res/*.xml %{PREFIX}/res/*.list -%{PREFIX}/res/edje/* +%{PREFIX}/res/edje/rectangle/* %{PREFIX}/res/images/* %{PREFIX}/res/locale/*/*/*.mo + +%post extension-circle +ln -sf w-home.circle %{PREFIX}/bin/w-home +rm -rf %{PREFIX}/res/edje/rectangle +%preun extension-circle +echo "To restore the original behavior of %{name} after the uninstall, you need to reinstall %{name}" +%files extension-circle +%{PREFIX}/bin/w-home.circle +%{PREFIX}/res/edje/circle/* |