EXPORT_SERVICE(WebPageUI, "org.tizen.browser.webpageui")
+#define MAX_SIGNAL_NAME 32
+#define MAX_PROGRESS_LEVEL 20
+#define PROGRESS_STEP 0.05
+
WebPageUI::WebPageUI()
: m_parent(nullptr)
, m_mainLayout(nullptr)
, m_errorLayout(nullptr)
, m_privateLayout(nullptr)
- , m_progressBar(nullptr)
, m_bookmarkManagerButton(nullptr)
, m_URIEntry(new URIEntry())
, m_statesMgr(std::make_shared<WebPageUIStatesManager>(WPUState::MAIN_WEB_PAGE))
if (progress == 1.0) {
hideProgressBar();
} else {
- elm_progressbar_value_set(m_progressBar, progress);
+ int level = (int)(progress * MAX_PROGRESS_LEVEL);
+ char signal_name[MAX_SIGNAL_NAME] = { 0 };
+ snprintf(signal_name, MAX_SIGNAL_NAME, "update,progress,%.02f,signal", ((double)level * PROGRESS_STEP));
+ elm_object_signal_emit(m_mainLayout, signal_name, "");
}
}
m_rightButtonBar->addAction(m_tab, "tab_button");
m_rightButtonBar->addAction(m_showMoreMenu, "setting_button");
- // progress bar
- m_progressBar = elm_progressbar_add(m_mainLayout);
- elm_object_style_set(m_progressBar, "default");
- elm_progressbar_unit_format_set(m_progressBar, "");
-
//URL bar (Evas Object is shipped by URIEntry object)
m_URIEntry->init(m_mainLayout);
elm_object_part_content_set(m_mainLayout, "uri_entry", m_URIEntry->getContent());
void WebPageUI::showProgressBar()
{
BROWSER_LOGD("[%s:%d] ", __PRETTY_FUNCTION__, __LINE__);
- elm_object_signal_emit(m_mainLayout, "show_progressbar_bg", "ui");
- elm_object_part_content_set(m_mainLayout, "progress_bar", m_progressBar);
+ elm_object_signal_emit(m_mainLayout, "show,progress,signal", "");
+ elm_object_signal_emit(m_mainLayout, "update,progress,0.00,signal", "");
}
void WebPageUI::hideProgressBar()
{
BROWSER_LOGD("[%s:%d] ", __PRETTY_FUNCTION__, __LINE__);
- elm_object_signal_emit(m_mainLayout, "hide_progressbar_bg", "ui");
- elm_progressbar_value_set(m_progressBar, 0.0);
- elm_object_part_content_unset(m_mainLayout, "progress_bar");
- evas_object_hide(m_progressBar);
+ elm_object_signal_emit(m_mainLayout, "hide,progress,signal", "");
}
void WebPageUI::hideFindOnPage()
m_stopLoading->setEnabled(false);
m_reload->setEnabled(true);
m_forward->setEnabled(false);
- evas_object_hide(m_progressBar);
}
void WebPageUI::setPrivateButtons()
m_stopLoading->setEnabled(false);
m_reload->setEnabled(false);
m_forward->setEnabled(false);
- evas_object_hide(m_progressBar);
}
void WebPageUI::updateURIBar(const std::string& uri)
#define FINDONPAGE_WIDTH 720
#include "../../../core/Tools/edc/Spacer.edc"
+#define PROGRESS_DESCRIPTIONS\
+ PROGRESS_DESCRIPTION(0.00)\
+ PROGRESS_DESCRIPTION(0.05)\
+ PROGRESS_DESCRIPTION(0.10)\
+ PROGRESS_DESCRIPTION(0.15)\
+ PROGRESS_DESCRIPTION(0.20)\
+ PROGRESS_DESCRIPTION(0.25)\
+ PROGRESS_DESCRIPTION(0.30)\
+ PROGRESS_DESCRIPTION(0.35)\
+ PROGRESS_DESCRIPTION(0.40)\
+ PROGRESS_DESCRIPTION(0.45)\
+ PROGRESS_DESCRIPTION(0.50)\
+ PROGRESS_DESCRIPTION(0.55)\
+ PROGRESS_DESCRIPTION(0.60)\
+ PROGRESS_DESCRIPTION(0.65)\
+ PROGRESS_DESCRIPTION(0.70)\
+ PROGRESS_DESCRIPTION(0.75)\
+ PROGRESS_DESCRIPTION(0.80)\
+ PROGRESS_DESCRIPTION(0.85)\
+ PROGRESS_DESCRIPTION(0.90)\
+ PROGRESS_DESCRIPTION(0.95)\
+ PROGRESS_DESCRIPTION(1.00)
+
+#define PROGRESS_DESCRIPTION(RATE)\
+ description { state: "progress" RATE;\
+ inherit: "default" 0.0;\
+ visible: 1;\
+ rel1 { relative: 0.0 0.0; to: "progressbar_bg"; }\
+ rel2 { relative: RATE 1.0; to: "progressbar_bg"; }\
+ }
+
+#define PROGRESS_PROGRAMS\
+ PROGRESS_PROGRAM(0.10)\
+ PROGRESS_PROGRAM(0.15)\
+ PROGRESS_PROGRAM(0.20)\
+ PROGRESS_PROGRAM(0.25)\
+ PROGRESS_PROGRAM(0.30)\
+ PROGRESS_PROGRAM(0.35)\
+ PROGRESS_PROGRAM(0.40)\
+ PROGRESS_PROGRAM(0.45)\
+ PROGRESS_PROGRAM(0.50)\
+ PROGRESS_PROGRAM(0.55)\
+ PROGRESS_PROGRAM(0.60)\
+ PROGRESS_PROGRAM(0.65)\
+ PROGRESS_PROGRAM(0.70)\
+ PROGRESS_PROGRAM(0.75)\
+ PROGRESS_PROGRAM(0.80)\
+ PROGRESS_PROGRAM(0.85)\
+ PROGRESS_PROGRAM(0.90)\
+ PROGRESS_PROGRAM(0.95)
+
+#define PROGRESS_PROGRAM(RATE)\
+ program { name: "update,progress,"RATE;\
+ signal: "update,progress,"RATE",signal";\
+ transition: DECELERATE 0.1;\
+ action: STATE_SET "progress" RATE;\
+ target: "progress_bar";\
+ }
+
+#define PROGRESS_BG_IMAGE "I01_toolbar_progress_bg.#.png"
+#define PROGRESS_BAR_IMAGE "I01_toolbar_progress.#.png"
+
collections { base_scale: 2.6;
group {
name: "main_layout";
+ images {
+ image: PROGRESS_BG_IMAGE COMP;
+ image: PROGRESS_BAR_IMAGE COMP;
+ }
parts {
part {
name: "bg";
rel2 { relative: 1.0 1.0; to: "bg"; }
}
}
- part {
- name: "progress_bar";
- type: SWALLOW;
+ part { name: "progressbar_bg";
+ type: IMAGE;
scale: 1;
description {
state: "default" 0.0;
+ visible: 0;
+ fixed: 0 1;
+ min: 0 5;
+ max: -1 5;
+ align: 0.5 1;
+ image.normal: PROGRESS_BG_IMAGE;
+ rel1 { relative: 0.0 0.0; to: "uri_bar_bg";}
+ rel2 { relative: 1.0 1.0; to: "uri_bar_bg";}
+ }
+ description {
+ state: "progress" 0.0;
+ inherit: "default" 0.0;
visible: 1;
- align: 0.0 0.0;
- fixed: 0 0;
- min: 0 2;
- max: -1 2;
- rel1 {
- relative: 0.0 0.5;
- to: "uri_bar_bg";
- }
}
}
- part {
- name: "progress_bar_light_bg";
- type: RECT;
+ part { name: "progress_bar";
+ type: IMAGE;
scale: 1;
- repeat_events: 1;
description {
state: "default" 0.0;
- fixed: 0 1;
- min: 0 2;
- max: -1 2;
- align: 0 0;
visible: 0;
- rel1.to: "uri_bar_bg";
- rel1.relative: 0.0 0.5;
- color: 255 255 255 0;
- }
- description {
- state: "visible" 0.0;
- inherit: "default" 0.0;
- visible: 1;
+ align: 0.0 0.0;
+ image.normal: PROGRESS_BAR_IMAGE;
+ rel1 { relative: 0.0 0.0; to: "progressbar_bg"; }
+ rel2 { relative: 1.0 1.0; to: "progressbar_bg"; }
}
- description {
- state: "moveright" 0.0;
- inherit: "default" 0.0;
- visible: 1;
+ PROGRESS_DESCRIPTIONS
+ }
+ programs {
+ program { name: "hide,progress";
+ signal: "hide,progress,signal";
+ transition: DECELERATE 0.1;
+ action: STATE_SET "default" 0.0;
+ target: "progress_bar";
+ target: "bg";
+ }
+ program { name: "show,progress";
+ signal: "show,progress,signal";
+ action: STATE_SET "progress" 0.0;
+ target: "bg";
+ }
+ program { name: "update,progress,0.00";
+ signal: "update,progress,0.00,signal";
+ action: STATE_SET "progress" 0.05;
+ target: "progress_bar";
+ }
+ PROGRESS_PROGRAMS
+ program { name: "update,progress,1.0";
+ signal: "update,progress,1.00,signal";
+ transition: DECELERATE 0.05;
+ action: STATE_SET "progress" 1.00;
+ target: "progress_bar";
}
}
+
#include "WebPageUIUrlHistoryList.edc"
part {
name: "moremenu_dimmed_bg";
target: "uri_bar_buttons_left";
target: "uri_bar_buttons_right";
}
- program {
- name: "hide_progress";
- signal: "hide_progressbar_bg";
- source: "ui";
- action: STATE_SET "default" 0.0;
- target: "progress_bar_light_bg";
- }
- program {
- name: "show_progress";
- signal: "show_progressbar_bg";
- source: "ui";
- action: STATE_SET "visible" 0.0;
- target: "progress_bar_light_bg";
- }
program {
name: "hide_uri_bar_landscape";
signal: "hide_uri_bar_landscape";