summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xhome/res/edje/circle/CMakeLists.txt4
-rwxr-xr-xhome/res/edje/rectangle/CMakeLists.txt2
-rwxr-xr-xhome/src/layout.c6
-rwxr-xr-xhome/src/main.c4
-rwxr-xr-xpackaging/org.tizen.w-home.spec48
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/*