5
5
#include " flutter/shell/platform/tizen/nui_autofill_popup.h"
6
6
7
7
#include < dali-toolkit/dali-toolkit.h>
8
- #include < dali-toolkit/devel-api/controls/table-view/table-view.h>
9
8
#include < dali-toolkit/public-api/controls/text-controls/text-label.h>
10
9
11
- #include " flutter/shell/platform/tizen/tizen_autofill.h"
12
-
13
10
namespace flutter {
14
11
15
12
bool NuiAutofillPopup::Touched (Dali::Actor actor,
@@ -35,7 +32,32 @@ void NuiAutofillPopup::OutsideTouched() {
35
32
popup_.SetDisplayState (Dali::Toolkit::Popup::HIDDEN);
36
33
}
37
34
38
- void NuiAutofillPopup::Prepare () {
35
+ Dali::Toolkit::TableView NuiAutofillPopup::MakeContent (
36
+ const std::vector<std::unique_ptr<AutofillItem>>& items) {
37
+ Dali::Toolkit::TableView content =
38
+ Dali::Toolkit::TableView::New (items.size (), 1 );
39
+ content.SetResizePolicy (Dali::ResizePolicy::FILL_TO_PARENT,
40
+ Dali::Dimension::ALL_DIMENSIONS);
41
+ content.SetProperty (Dali::Actor::Property::PADDING,
42
+ Dali::Vector4 (10 , 10 , 0 , 0 ));
43
+ for (uint32_t i = 0 ; i < items.size (); ++i) {
44
+ Dali::Toolkit::TextLabel label =
45
+ Dali::Toolkit::TextLabel::New (items[i]->label );
46
+ label.SetProperty (Dali::Actor::Property::NAME, items[i]->value );
47
+ label.SetResizePolicy (Dali::ResizePolicy::DIMENSION_DEPENDENCY,
48
+ Dali::Dimension::HEIGHT);
49
+ label.SetProperty (Dali::Toolkit::TextLabel::Property::TEXT_COLOR,
50
+ Dali::Color::WHITE_SMOKE);
51
+ label.SetProperty (Dali::Toolkit::TextLabel::Property::POINT_SIZE, 7 .0f );
52
+ label.TouchedSignal ().Connect (this , &NuiAutofillPopup::Touched);
53
+ content.AddChild (label, Dali::Toolkit::TableView::CellPosition (i, 0 ));
54
+ content.SetFitHeight (i);
55
+ }
56
+ return content;
57
+ }
58
+
59
+ void NuiAutofillPopup::Prepare (
60
+ const std::vector<std::unique_ptr<AutofillItem>>& items) {
39
61
popup_ = Dali::Toolkit::Popup::New ();
40
62
popup_.SetProperty (Dali::Actor::Property::NAME, " popup" );
41
63
popup_.SetProperty (Dali::Actor::Property::PARENT_ORIGIN,
@@ -49,6 +71,11 @@ void NuiAutofillPopup::Prepare() {
49
71
popup_.HiddenSignal ().Connect (this , &NuiAutofillPopup::Hidden);
50
72
popup_.SetProperty (Dali::Toolkit::Popup::Property::BACKING_ENABLED, false );
51
73
popup_.SetProperty (Dali::Toolkit::Popup::Property::AUTO_HIDE_DELAY, 2500 );
74
+ popup_.SetProperty (Dali::Actor::Property::SIZE,
75
+ Dali::Vector2 (140 .0f , 35 .0f * items.size ()));
76
+
77
+ Dali::Toolkit::TableView content = MakeContent (items);
78
+ popup_.SetContent (content);
52
79
}
53
80
54
81
void NuiAutofillPopup::Show (Dali::Actor* actor) {
@@ -58,29 +85,8 @@ void NuiAutofillPopup::Show(Dali::Actor* actor) {
58
85
return ;
59
86
}
60
87
61
- Prepare ();
62
- Dali::Toolkit::TableView content =
63
- Dali::Toolkit::TableView::New (items.size (), 1 );
64
- content.SetResizePolicy (Dali::ResizePolicy::FILL_TO_PARENT,
65
- Dali::Dimension::ALL_DIMENSIONS);
66
- content.SetProperty (Dali::Actor::Property::PADDING,
67
- Dali::Vector4 (10 , 10 , 0 , 0 ));
68
- for (uint32_t i = 0 ; i < items.size (); ++i) {
69
- Dali::Toolkit::TextLabel label =
70
- Dali::Toolkit::TextLabel::New (items[i]->label_ );
71
- label.SetProperty (Dali::Actor::Property::NAME, items[i]->value_ );
72
- label.SetResizePolicy (Dali::ResizePolicy::DIMENSION_DEPENDENCY,
73
- Dali::Dimension::HEIGHT);
74
- label.SetProperty (Dali::Toolkit::TextLabel::Property::TEXT_COLOR,
75
- Dali::Color::WHITE_SMOKE);
76
- label.SetProperty (Dali::Toolkit::TextLabel::Property::POINT_SIZE, 7 .0f );
77
- label.TouchedSignal ().Connect (this , &NuiAutofillPopup::Touched);
78
- content.AddChild (label, Dali::Toolkit::TableView::CellPosition (i, 0 ));
79
- content.SetFitHeight (i);
80
- }
81
- popup_.SetProperty (Dali::Actor::Property::SIZE,
82
- Dali::Vector2 (140 .0f , 35 .0f * items.size ()));
83
- popup_.SetContent (content);
88
+ Prepare (items);
89
+
84
90
popup_.SetDisplayState (Dali::Toolkit::Popup::SHOWN);
85
91
actor->Add (popup_);
86
92
}
0 commit comments