UIProcess/API/efl/tizen/EasingUtilities.cpp
UIProcess/API/efl/tizen/Flick.cpp
UIProcess/API/efl/tizen/FocusRing.cpp
- UIProcess/API/efl/tizen/FormDataCandidate.cpp
- UIProcess/API/efl/tizen/FormDataCandidatePopup.cpp
+ UIProcess/API/efl/tizen/AutoFillManager.cpp
+ UIProcess/API/efl/tizen/AutoFillPopup.cpp
UIProcess/API/efl/tizen/GestureClient.cpp
UIProcess/API/efl/tizen/GestureRecognizer.cpp
UIProcess/API/efl/tizen/InputPicker.cpp
ENDIF ()
IF (ENABLE_TIZEN_WEBKIT2_FORM_DATABASE)
- SET(FORMDATA_THEME ${THEME_DIR}/FormDataCandidate.edj)
+ SET(FORMDATA_THEME ${THEME_DIR}/AutoFillPopup.edj)
ENDIF ()
FILE(MAKE_DIRECTORY ${THEME_DIR})
IF (ENABLE_TIZEN_WEBKIT2_FORM_DATABASE)
ADD_CUSTOM_COMMAND(
OUTPUT ${FORMDATA_THEME}
- COMMAND ${EDJE_CC_EXECUTABLE} -id ${WEBKIT2_DIR}/UIProcess/API/efl/tizen/images ${WEBKIT2_DIR}/UIProcess/API/efl/tizen/FormDataCandidate.edc ${FORMDATA_THEME}
+ COMMAND ${EDJE_CC_EXECUTABLE} -id ${WEBKIT2_DIR}/UIProcess/API/efl/tizen/images ${WEBKIT2_DIR}/UIProcess/API/efl/tizen/AutoFillPopup.edc ${FORMDATA_THEME}
DEPENDS
- ${WEBKIT2_DIR}/UIProcess/API/efl/tizen/FormDataCandidate.edc
+ ${WEBKIT2_DIR}/UIProcess/API/efl/tizen/AutoFillPopup.edc
)
LIST(APPEND WebKit2StaticForDebug_SOURCES ${FORMDATA_THEME})
ENDIF ()
m_drag = Drag::create(m_viewImpl);
#endif
#if ENABLE(TIZEN_WEBKIT2_FORM_DATABASE)
- m_formDataCandidate = FormDataCandidate::create(m_viewImpl);
+ m_autoFillManager = AutoFillManager::create(m_viewImpl);
#endif
Ecore_Evas* ee = ecore_evas_ecore_evas_get(evas_object_evas_get(m_viewImpl->view()));
m_viewportAngle = ecore_evas_rotation_get(ee);
#if ENABLE(TIZEN_WEBKIT2_FORM_DATABASE)
void PageClientImpl::textChangeInTextField(const String& name, const String& value)
{
- if (value == m_formDataCandidate->getCandidateValue()) {
- m_formDataCandidate->updateCandidateValue(emptyString());
+ if (value == m_autoFillManager->getCandidateValue()) {
+ m_autoFillManager->updateCandidateValue(emptyString());
return;
}
- m_formDataCandidate->updateCandidateValue(value);
+#if ENABLE(TIZEN_WEBKIT2_AUTOFILL_PROFILE_FORM)
+ ewk_view_text_change_in_textfield(m_viewImpl->view(), name, value, isInputInForm);
+#else
+ m_autoFillManager->updateCandidateValue(value);
ewk_view_text_change_in_textfield(m_viewImpl->view(), name, value);
+#endif // TIZEN_WEBKIT2_AUTOFILL_PROFILE_FORM
}
#endif
void PageClientImpl::setVisibleContentRect(const IntRect& newRect, float newScale, const FloatPoint& trajectory)
{
-#if OS(TIZEN)
+#if ENABLE(TIZEN_WEBKIT2_FORM_DATABASE)
+ if(isShowingAutoFillPopup())
+ hideAutoFillPopup();
+#endif
+
+#if ENABLE(TIZEN_SCREEN_READER)
IntPoint previousScrollPosition(scrollPosition());
float previousScale = m_scaleFactor;
#endif
#endif
#if ENABLE(TIZEN_WEBKIT2_FORM_DATABASE)
-bool PageClientImpl::isShowingFormDataCandidate()
+bool PageClientImpl::isShowingAutoFillPopup()
{
- return m_formDataCandidate->isShowing();
+ return m_autoFillManager->isShowing();
}
-void PageClientImpl::updateFormDataCandidate(const Vector<String>& data)
+void PageClientImpl::updateAutoFillPopup(const Vector<AutoFillPopupItem>& data)
{
- m_formDataCandidate->updateFormData(data);
+ m_autoFillManager->updateFormData(data);
}
-void PageClientImpl::hideFormDataCandidate()
+void PageClientImpl::hideAutoFillPopup()
{
- m_formDataCandidate->hide();
+ m_autoFillManager->hide();
}
-void PageClientImpl::showFormDataCandidate(const WebCore::IntRect& rect)
+void PageClientImpl::showAutoFillPopup(const WebCore::IntRect& rect)
{
- m_formDataCandidate->show(rect);
+ m_autoFillManager->show(rect);
}
#endif
#include "Drag.h"
#endif
#if ENABLE(TIZEN_WEBKIT2_FORM_DATABASE)
-#include "FormDataCandidate.h"
+#include "AutoFillManager.h"
#endif
using std::numeric_limits;
#endif // #if OS(TIZEN)
#endif
#if ENABLE(TIZEN_WEBKIT2_FORM_DATABASE)
-class FormDataCandidate;
+class AutoFillManager;
#endif
class PageClientImpl : public PageClient {
#endif
#if ENABLE(TIZEN_WEBKIT2_FORM_DATABASE)
- bool isShowingFormDataCandidate();
- void updateFormDataCandidate(const Vector<String>& data);
- void hideFormDataCandidate();
- void showFormDataCandidate(const WebCore::IntRect& rect);
+ bool isShowingAutoFillPopup();
+ void updateAutoFillPopup(const Vector<AutoFillPopupItem>& data);
+ void hideAutoFillPopup();
+ void showAutoFillPopup(const WebCore::IntRect& rect);
#endif
#if ENABLE(TIZEN_PRERENDERING_FOR_ROTATION)
OwnPtr<Drag> m_drag;
#endif
#if ENABLE(TIZEN_WEBKIT2_FORM_DATABASE)
- OwnPtr<FormDataCandidate> m_formDataCandidate;
+ OwnPtr<AutoFillManager> m_autoFillManager;
#endif
bool m_suspendPainting;
bool m_suspendResource;
#include "WKDictionary.h"
#include "ewk_web_application_icon_data_private.h"
#endif
+
+#if ENABLE(TIZEN_WEBKIT2_FORM_DATABASE)
+#include "AutoFillPopup.h"
+#endif
#endif // #if OS(TIZEN)
using namespace WebKit;
{
EWK_VIEW_IMPL_GET_OR_RETURN(smartData, impl, false);
- impl->pageClient->showFormDataCandidate(IntRect(x, y, w, h));
+ impl->pageClient->showAutoFillPopup(IntRect(x, y, w, h));
return true;
}
{
EWK_VIEW_IMPL_GET_OR_RETURN(smartData, impl, false);
- impl->pageClient->hideFormDataCandidate();
+ impl->pageClient->hideAutoFillPopup();
return true;
}
{
EWK_VIEW_IMPL_GET_OR_RETURN(smartData, impl, false);
- Vector<String> formData;
+ Vector<AutoFillPopupItem> formData;
Eina_List* list;
void* data;
EINA_LIST_FOREACH(dataList, list, data)
- formData.append(String::fromUTF8(static_cast<char*>(data)));
+ formData.append(AutoFillPopupItem(String::fromUTF8(static_cast<char*>(data)), candidateAutoFill));
- impl->pageClient->updateFormDataCandidate(formData);
+ impl->pageClient->updateAutoFillPopup(formData);
return true;
}
{
EWK_VIEW_IMPL_GET_OR_RETURN(smartData, impl, false);
- return impl->pageClient->isShowingFormDataCandidate();
+ return impl->pageClient->isShowingAutoFillPopup();
}
#endif
}
#if ENABLE(TIZEN_WEBKIT2_FORM_DATABASE)
+#if ENABLE(TIZEN_WEBKIT2_AUTOFILL_PROFILE_FORM)
+void ewk_view_text_change_in_textfield(Evas_Object* ewkView, const String& name, const String& value, bool isInputInForm)
+#else
void ewk_view_text_change_in_textfield(Evas_Object* ewkView, const String& name, const String& value)
+#endif // TIZEN_WEBKIT2_AUTOFILL_PROFILE_FORM
{
EWK_VIEW_SD_GET_OR_RETURN(ewkView, smartData);
EWK_VIEW_IMPL_GET_OR_RETURN(smartData, impl);
- if (!ewk_settings_form_candidate_data_enabled_get(ewk_view_settings_get(ewkView)))
- return;
-
if (value.isEmpty()) {
if(smartData->api->formdata_candidate_is_showing(smartData))
smartData->api->formdata_candidate_hide(smartData);
return;
}
- Vector<String> popupCandidates;
- ewk_view_form_candidate_data_get(ewkView, name, popupCandidates);
- std::sort(popupCandidates.begin(), popupCandidates.end(), WTF::codePointCompareLessThan);
+ Eina_List* optionList = 0;
+ Vector<String> popupOptionLists = impl->pageProxy->getFocusedInputElementDataList();
+ std::sort(popupOptionLists.begin(), popupOptionLists.end(), WTF::codePointCompareLessThan);
+ for (size_t i = 0; i < popupOptionLists.size(); ++i) {
+ if (popupOptionLists[i].startsWith(value, false))
+ optionList = eina_list_append(optionList, eina_stringshare_add(popupOptionLists[i].utf8().data()));
+ }
Eina_List* candidateList = 0;
- for (size_t i = 0; i < popupCandidates.size(); ++i) {
- if (popupCandidates[i].startsWith(value, false))
- candidateList = eina_list_append(candidateList, eina_stringshare_add(popupCandidates[i].utf8().data()));
+ if (ewk_settings_form_candidate_data_enabled_get(ewk_view_settings_get(ewkView))) {
+ Vector<String> popupCandidates;
+ ewk_view_form_candidate_data_get(ewkView, name, popupCandidates);
+ std::sort(popupCandidates.begin(), popupCandidates.end(), WTF::codePointCompareLessThan);
+
+ for (size_t i = 0; i < popupCandidates.size(); ++i) {
+ if (popupCandidates[i].startsWith(value, false))
+ candidateList = eina_list_append(candidateList, eina_stringshare_add(popupCandidates[i].utf8().data()));
+ }
+ }
+
+ Vector<AutoFillPopupItem> formData;
+
+#if ENABLE(TIZEN_WEBKIT2_AUTOFILL_PROFILE_FORM)
+ if (ewk_settings_form_profile_data_enabled_get(ewk_view_settings_get(ewkView)) && isInputInForm) {
+ Vector<std::pair<int, std::pair<String, String> > > profileFormCandidates;
+ ewk_view_profile_form_candidate_data_get(ewkView, name, value, profileFormCandidates);
+ for (size_t ittr = 0; ittr < profileFormCandidates.size(); ++ittr) {
+ std::pair<int, std::pair<String, String> > fullData(profileFormCandidates[ittr]);
+ std::pair<String, String> dispStrings(fullData.second);
+ formData.append(AutoFillPopupItem(dispStrings.first, dispStrings.second, fullData.first, profileAutoFill));
+ }
+ }
+#endif
+
+ Eina_List* list;
+ void* data;
+ if (eina_list_count(optionList)) {
+ EINA_LIST_FOREACH(optionList, list, data)
+ formData.append(AutoFillPopupItem(String::fromUTF8(static_cast<char*>(data)), dataListAutoFill));
+ }
+
+ if (eina_list_count(candidateList) && ewk_settings_form_candidate_data_enabled_get(ewk_view_settings_get(ewkView))) {
+ EINA_LIST_FOREACH(candidateList, list, data)
+ formData.append(AutoFillPopupItem(String::fromUTF8(static_cast<char*>(data)), candidateAutoFill));
}
- if (!eina_list_count(candidateList)) {
+ if (!formData.size()) {
if(smartData->api->formdata_candidate_is_showing(smartData))
smartData->api->formdata_candidate_hide(smartData);
return;
}
- smartData->api->formdata_candidate_update_data(smartData, candidateList);
+ if (formData[0].itemtype == profileAutoFill)
+ impl->pageClient->updateAutoFillPopup(formData);
+ else {
+ Eina_List* autoFillList = 0;
+
+ if (eina_list_count(optionList)) {
+ EINA_LIST_FOREACH(optionList, list, data)
+ autoFillList = eina_list_append(autoFillList, eina_stringshare_add(static_cast<char*>(data)));
+ }
+ if (eina_list_count(candidateList)) {
+ EINA_LIST_FOREACH(candidateList, list, data)
+ autoFillList = eina_list_append(autoFillList, eina_stringshare_add(static_cast<char*>(data)));
+ }
+ smartData->api->formdata_candidate_update_data(smartData, autoFillList);
+ }
IntRect inputFieldRect = impl->transformToScene().mapRect(impl->pageClient->focusedNodeRect());
smartData->api->formdata_candidate_show(smartData, inputFieldRect.x(), inputFieldRect.y(), inputFieldRect.width(), inputFieldRect.height());
#include "config.h"
#if ENABLE(TIZEN_WEBKIT2_FORM_DATABASE)
-#include "FormDataCandidate.h"
+#include "AutoFillManager.h"
#include "EwkViewImpl.h"
#include <wtf/text/CString.h>
namespace WebKit {
-FormDataCandidate::FormDataCandidate(EwkViewImpl* viewImpl)
+AutoFillManager::AutoFillManager(EwkViewImpl* viewImpl)
: m_viewImpl(viewImpl)
, m_isShowing(false)
{
- m_popup = new FormDataCandidatePopup(m_viewImpl->view(), EDJE_DIR"/FormDataCandidate.edj", "formdata_list", this);
+ m_popup = new AutoFillPopup(m_viewImpl->view(), EDJE_DIR"/AutoFillPopup.edj", "formdata_list", this);
}
-FormDataCandidate::~FormDataCandidate()
+AutoFillManager::~AutoFillManager()
{
delete m_popup;
}
-void FormDataCandidate::hide()
+void AutoFillManager::hide()
{
m_isShowing = false;
m_popup->hide();
}
-void FormDataCandidate::updateFormData(const Vector<String>& data) {
- m_popup->setFormData(data);
+void AutoFillManager::updateFormData(const Vector<AutoFillPopupItem>& data) {
+ m_popup->setAutoFillData(data);
}
-void FormDataCandidate::show(const WebCore::IntRect& rect)
+void AutoFillManager::show(const WebCore::IntRect& rect)
{
m_isShowing = true;
m_nodeRect = rect;
- m_popup->updateFormDataPopup(m_nodeRect, m_viewImpl->page()->scaleFactor());
+ m_popup->updateAutoFillPopup(m_nodeRect);
m_popup->move(m_nodeRect);
m_popup->show();
}
-void FormDataCandidate::setValueForInputElement(String& value)
+#if ENABLE(TIZEN_WEBKIT2_AUTOFILL_PROFILE_FORM)
+void AutoFillManager::setValueForProfile(int& id)
+{
+ ewk_view_profile_form_candidate_set_to_form(m_viewImpl->view(), id);
+ hide();
+}
+#endif
+void AutoFillManager::setValueForInputElement(String& value)
{
m_viewImpl->page()->setFocusedInputElementValue(value);
hide();
* THE POSSIBILITY OF SUCH DAMAGE.
*/
-#ifndef FormDataCandidate_h
-#define FormDataCandidate_h
+#ifndef AutoFillManager_h
+#define AutoFillManager_h
#if ENABLE(TIZEN_WEBKIT2_FORM_DATABASE)
-#include "FormDataCandidatePopup.h"
+#include "AutoFillPopup.h"
#include "WebPageProxy.h"
#include <Evas.h>
#include <WebCore/IntRect.h>
namespace WebKit {
-class FormDataCandidatePopup;
+class AutoFillPopup;
-class FormDataCandidate {
+class AutoFillManager {
public:
- static PassOwnPtr<FormDataCandidate> create(EwkViewImpl* viewImpl)
+ static PassOwnPtr<AutoFillManager> create(EwkViewImpl* viewImpl)
{
- return adoptPtr(new FormDataCandidate(viewImpl));
+ return adoptPtr(new AutoFillManager(viewImpl));
}
- ~FormDataCandidate();
+ ~AutoFillManager();
bool isShowing() { return m_isShowing; }
void hide();
- void updateFormData(const Vector<String>&);
+ void updateFormData(const Vector<AutoFillPopupItem>&);
void show(const WebCore::IntRect&);
+#if ENABLE(TIZEN_WEBKIT2_AUTOFILL_PROFILE_FORM)
+ void setValueForProfile(int&);
+#endif
void setValueForInputElement(String&);
void updateCandidateValue(const String& value) { m_candidateValue = value; }
String getCandidateValue() { return m_candidateValue; }
private:
- explicit FormDataCandidate(EwkViewImpl*);
+ explicit AutoFillManager(EwkViewImpl*);
EwkViewImpl* m_viewImpl;
- FormDataCandidatePopup* m_popup;
+ AutoFillPopup* m_popup;
bool m_isShowing;
WebCore::IntRect m_nodeRect;
String m_candidateValue;
#include "config.h"
#if ENABLE(TIZEN_WEBKIT2_FORM_DATABASE)
-#include "FormDataCandidatePopup.h"
+#include "AutoFillPopup.h"
#include <Edje.h>
#include <Elementary.h>
namespace WebKit {
static Elm_Genlist_Item_Class* m_listItem = 0;
-static Vector<String> m_formdata;
+static Vector<AutoFillPopupItem> m_autoFillData;
static char* getItemLabel(void* data, Evas_Object* obj, const char* part)
{
- char* label = new char[m_formdata[(int)data].length()];
- strcpy(label, m_formdata[(int)data].utf8().data());
+ char* label;
+ String lebelText;
+ if (m_autoFillData[(int)data].itemtype == profileAutoFill) {
+ lebelText = String::fromUTF8(m_autoFillData[(int)data].maintext.utf8().data()) + "("
+ + String::fromUTF8(m_autoFillData[(int)data].subtext.utf8().data()) + ")";
+ } else
+ lebelText = String::fromUTF8(m_autoFillData[(int)data].maintext.utf8().data());
+
+ label = new char[lebelText.utf8().length()+1];
+ strcpy(label, lebelText.utf8().data());
+
return label;
}
static void itemSelectCb(void* data, Evas_Object* obj, void* event_info)
{
- int index = (int)elm_object_item_data_get(static_cast<Elm_Object_Item*>(event_info));
+ int index = elm_genlist_item_index_get(elm_genlist_selected_item_get(obj));
- FormDataCandidatePopup* candidatePopup = static_cast<FormDataCandidatePopup*>(data);
- candidatePopup->m_formDataCandidate->setValueForInputElement(m_formdata[index]);
+ AutoFillPopup* autoFillPopup = static_cast<AutoFillPopup*>(data);
+#if ENABLE(TIZEN_WEBKIT2_AUTOFILL_PROFILE_FORM)
+ if (m_autoFillData[index].itemtype == profileAutoFill) {
+ autoFillPopup->m_autoFillManager->setValueForProfile(m_autoFillData[index].id);
+ return;
+ }
+#endif
+ autoFillPopup->m_autoFillManager->setValueForInputElement(m_autoFillData[index].maintext);
}
-void FormDataCandidatePopup::setFormData(const Vector<String>& data) {
- m_formdata = data;
+void AutoFillPopup::setAutoFillData(const Vector<AutoFillPopupItem>& data) {
+ m_autoFillData = data;
}
-FormDataCandidatePopup::FormDataCandidatePopup(Evas_Object* object, const String& theme, const String& path, FormDataCandidate* formDataCandidate)
- : m_formDataCandidate(formDataCandidate)
- , m_formDataCandidateJob(0)
+AutoFillPopup::AutoFillPopup(Evas_Object* object, const String& theme, const String& path, AutoFillManager* autoFillManager)
+ : m_autoFillManager(autoFillManager)
+ , m_autoFillJob(0)
{
m_icon = elm_layout_add(object);
m_list = elm_genlist_add(m_icon);
}
-FormDataCandidatePopup::~FormDataCandidatePopup()
+AutoFillPopup::~AutoFillPopup()
{
- if (m_formDataCandidateJob) {
- ecore_job_del(m_formDataCandidateJob);
- m_formDataCandidateJob = 0;
+ if (m_autoFillJob) {
+ ecore_job_del(m_autoFillJob);
+ m_autoFillJob = 0;
}
if (m_icon)
evas_object_del(m_icon);
}
-void FormDataCandidatePopup::show()
+void AutoFillPopup::show()
{
if (m_icon)
evas_object_show(m_icon);
}
-void FormDataCandidatePopup::move(const IntRect& inputFieldRect)
+void AutoFillPopup::move(const IntRect& inputFieldRect)
{
if (m_icon)
evas_object_move(m_icon, inputFieldRect.x(), inputFieldRect.y() + inputFieldRect.height());
}
-void FormDataCandidatePopup::hide()
+void AutoFillPopup::hide()
{
if (m_icon)
evas_object_hide(m_icon);
}
-void FormDataCandidatePopup::updateFormDataPopup(const IntRect& inputFieldRect, float scaleFactor)
+void AutoFillPopup::updateAutoFillPopup(const IntRect& inputFieldRect)
{
if (m_list)
elm_genlist_clear(m_list);
m_listItem->func.del = NULL;
}
- for (size_t i = 0; i < m_formdata.size(); ++i)
+ for (size_t i = 0; i < m_autoFillData.size(); ++i)
elm_genlist_item_append(m_list, m_listItem, (void*) i, NULL, ELM_GENLIST_ITEM_NONE, itemSelectCb, (void*)this);
- elm_object_scale_set(m_list, scaleFactor / 2);
+ elm_object_scale_set(m_list, 0.7);
evas_object_show(m_list);
- int m_listHeight = 112 * m_formdata.size() * (scaleFactor / 2);
+ int m_listHeight = 79 * m_autoFillData.size();
+ int m_listWidth = inputFieldRect.width();
+
+ if(m_listHeight > 237)
+ m_listHeight = 237;
+ if(m_listWidth < 360)
+ m_listWidth = 360;
- if(m_listHeight > 336)
- m_listHeight = 336;
elm_bg_color_set(m_borderUp, 200, 200, 200);
- evas_object_size_hint_min_set(m_borderUp, inputFieldRect.width(), 3);
+ evas_object_size_hint_min_set(m_borderUp, m_listWidth, 3);
evas_object_show(m_borderUp);
elm_bg_color_set(m_borderDown, 200, 200, 200);
- evas_object_size_hint_min_set(m_borderDown, inputFieldRect.width(), 3);
+ evas_object_size_hint_min_set(m_borderDown, m_listWidth, 3);
evas_object_show(m_borderDown);
elm_bg_color_set(m_borderLeft, 200, 200, 200);
elm_object_part_content_set(m_icon, "border_left", m_borderLeft);
elm_object_part_content_set(m_icon, "border_right", m_borderRight);
- evas_object_size_hint_min_set(m_icon, inputFieldRect.width(), m_listHeight);
- evas_object_resize(m_icon, inputFieldRect.width(), m_listHeight);
+ evas_object_size_hint_min_set(m_icon, m_listWidth, m_listHeight);
+ evas_object_resize(m_icon, m_listWidth, m_listHeight);
evas_object_propagate_events_set(m_icon, false);
}
} // namespace WebKit
#endif // TIZEN_WEBKIT2_FORM_DATABASE
+
* THE POSSIBILITY OF SUCH DAMAGE.
*/
-#ifndef FormDataCandidatePopup_h
-#define FormDataCandidatePopup_h
+#ifndef AutoFillPopup_h
+#define AutoFillPopup_h
#if ENABLE(TIZEN_WEBKIT2_FORM_DATABASE)
-#include "FormDataCandidate.h"
+#include "AutoFillManager.h"
#include <Ecore.h>
#include <Evas.h>
#include <WebCore/IntRect.h>
namespace WebKit {
-class FormDataCandidate;
+enum AutoFillItemType {
+ candidateAutoFill,
+ profileAutoFill,
+ dataListAutoFill
+};
+
+struct AutoFillPopupItem {
+ String maintext;
+ String subtext;
+ int id;
+ AutoFillItemType itemtype;
+
+ AutoFillPopupItem(String m, AutoFillItemType t) : maintext(m), itemtype(t) { }
+ AutoFillPopupItem(String m, String s, int i, AutoFillItemType t) : maintext(m), subtext(s), id(i), itemtype(t) { }
+};
-class FormDataCandidatePopup {
+class AutoFillManager;
+class AutoFillPopup {
public:
- FormDataCandidatePopup(Evas_Object* object, const String& theme, const String& path, FormDataCandidate* formDataCandidate);
- ~FormDataCandidatePopup();
+ AutoFillPopup(Evas_Object* object, const String& theme, const String& path, AutoFillManager* autoFillManager);
+ ~AutoFillPopup();
void move(const WebCore::IntRect& rect);
void show();
void hide();
- void updateFormDataPopup(const WebCore::IntRect& rect, float scaleFactor);
- static void setFormData(const Vector<String>&);
+ void updateAutoFillPopup(const WebCore::IntRect& rect);
+ static void setAutoFillData(const Vector<AutoFillPopupItem>&);
- FormDataCandidate* m_formDataCandidate;
+ AutoFillManager* m_autoFillManager;
private:
Evas_Object* m_icon;
- Ecore_Job* m_formDataCandidateJob;
+ Ecore_Job* m_autoFillJob;
Evas_Object* m_list;
};
return;
}
-#if ENABLE(TIZEN_DATALIST_ELEMENT)
+#if !ENABLE(TIZEN_DATALIST_ELEMENT)
Vector<String> optionList = m_viewImpl->page()->getFocusedInputElementDataList();
if (optionList.size() > 0) {
if (editor.selectionIsRange || !evas_object_focus_get(m_viewImpl->view()))