2 * Copyright (c) 2016 Samsung Electronics Co., Ltd.
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
21 #include <dali-toolkit/dali-toolkit.h>
23 #include <dali-toolkit-test-suite-utils.h>
24 #include <toolkit-accessibility-adaptor.h>
25 #include <dummy-control.h>
28 using namespace Toolkit;
31 void utc_dali_toolkit_accessibility_manager_startup(void)
33 test_return_value = TET_UNDEF;
36 void utc_dali_toolkit_accessibility_manager_cleanup(void)
38 test_return_value = TET_PASS;
45 // Functors to test whether focus changed signal is emitted when the focus is changed
46 class FocusChangedCallback : public Dali::ConnectionTracker
49 FocusChangedCallback(bool& signalReceived)
50 : mSignalVerified(signalReceived),
51 mOriginalFocusedActor(),
52 mCurrentFocusedActor()
56 void Callback(Actor originalFocusedActor, Actor currentFocusedActor)
58 tet_infoline("Verifying FocusChangedCallback()");
60 if(originalFocusedActor == mCurrentFocusedActor)
62 mSignalVerified = true;
65 mOriginalFocusedActor = originalFocusedActor;
66 mCurrentFocusedActor = currentFocusedActor;
71 mSignalVerified = false;
74 bool& mSignalVerified;
75 Actor mOriginalFocusedActor;
76 Actor mCurrentFocusedActor;
79 // Functors to test whether focus overshot signal is emitted when there is no way to move focus further.
80 class FocusOvershotCallback : public Dali::ConnectionTracker
83 FocusOvershotCallback(bool& signalReceived)
84 : mSignalVerified(signalReceived),
85 mCurrentFocusedActor(),
86 mFocusOvershotDirection(Toolkit::AccessibilityManager::OVERSHOT_NEXT)
90 void Callback(Actor currentFocusedActor, Toolkit::AccessibilityManager::FocusOvershotDirection direction)
92 tet_infoline("Verifying FocusOvershotCallback()");
94 if(currentFocusedActor == mCurrentFocusedActor && direction == mFocusOvershotDirection)
96 mSignalVerified = true;
102 mSignalVerified = false;
105 bool& mSignalVerified;
106 Actor mCurrentFocusedActor;
107 Toolkit::AccessibilityManager::FocusOvershotDirection mFocusOvershotDirection;
110 // Functor to test whether focused actor activated signal is emitted.
111 class FocusedActorActivatedCallback : public Dali::ConnectionTracker
114 FocusedActorActivatedCallback()
118 void Callback(Actor activatedActor)
120 tet_infoline("Verifying FocusedActorActivatedCallback()");
127 int UtcDaliAccessibilityManagerGet(void)
129 ToolkitTestApplication application;
131 tet_infoline(" UtcDaliAccessibilityManagerGet");
133 AccessibilityManager manager = AccessibilityManager::Get();
134 DALI_TEST_CHECK(manager);
136 AccessibilityManager newManager = AccessibilityManager::Get();
137 DALI_TEST_CHECK(newManager);
139 // Check that accessibility manager is a singleton
140 DALI_TEST_CHECK(manager == newManager);
144 int UtcDaliAccessibilityManagerSetAndGetAccessibilityAttribute(void)
146 ToolkitTestApplication application;
148 tet_infoline(" UtcDaliAccessibilityManagerSetAndGetAccessibilityAttribute");
150 AccessibilityManager manager = AccessibilityManager::Get();
151 DALI_TEST_CHECK(manager);
153 Actor actor = Actor::New();
154 DALI_TEST_CHECK(manager.GetAccessibilityAttribute(actor, AccessibilityManager::ACCESSIBILITY_LABEL) == "");
156 manager.SetAccessibilityAttribute(actor, AccessibilityManager::ACCESSIBILITY_LABEL, "Description");
157 DALI_TEST_CHECK(manager.GetAccessibilityAttribute(actor, AccessibilityManager::ACCESSIBILITY_LABEL) == "Description");
159 manager.SetAccessibilityAttribute(actor, AccessibilityManager::ACCESSIBILITY_LABEL, "New description");
160 DALI_TEST_CHECK(manager.GetAccessibilityAttribute(actor, AccessibilityManager::ACCESSIBILITY_LABEL) == "New description");
164 int UtcDaliAccessibilityManagerSetAndGetFocusOrder(void)
166 ToolkitTestApplication application;
168 tet_infoline(" UtcDaliAccessibilityManagerSetAndGetFocusOrder");
170 AccessibilityManager manager = AccessibilityManager::Get();
171 DALI_TEST_CHECK(manager);
173 Actor first = Actor::New();
174 Actor second = Actor::New();
175 DALI_TEST_CHECK(manager.GetFocusOrder(first) == 0);
176 DALI_TEST_CHECK(manager.GetFocusOrder(second) == 0);
178 // Set the focus order and description for the first actor
179 manager.SetFocusOrder(first, 1);
180 manager.SetAccessibilityAttribute(first, AccessibilityManager::ACCESSIBILITY_LABEL, "first");
181 DALI_TEST_CHECK(manager.GetFocusOrder(first) == 1);
182 DALI_TEST_CHECK(manager.GetAccessibilityAttribute(first, AccessibilityManager::ACCESSIBILITY_LABEL) == "first");
184 // Set the focus order and description for the second actor
185 manager.SetFocusOrder(second, 2);
186 manager.SetAccessibilityAttribute(second, AccessibilityManager::ACCESSIBILITY_LABEL, "second");
187 DALI_TEST_CHECK(manager.GetFocusOrder(second) == 2);
188 DALI_TEST_CHECK(manager.GetAccessibilityAttribute(second, AccessibilityManager::ACCESSIBILITY_LABEL) == "second");
190 // check that the focus order of the first actor is changed
191 manager.SetFocusOrder(first, 2);
192 DALI_TEST_CHECK(manager.GetFocusOrder(first) == 2);
193 // make sure the change of focus order doesn't affect the actor's description
194 DALI_TEST_CHECK(manager.GetAccessibilityAttribute(first, AccessibilityManager::ACCESSIBILITY_LABEL) == "first");
196 // check that the focus order of the second actor is increased to 3
197 DALI_TEST_CHECK(manager.GetFocusOrder(second) == 3);
198 // make sure the change of focus order doesn't affect the actor's description
199 DALI_TEST_CHECK(manager.GetAccessibilityAttribute(second, AccessibilityManager::ACCESSIBILITY_LABEL) == "second");
201 // check that the focus order of the second actor is changed to 1
202 manager.SetFocusOrder(second, 1);
203 DALI_TEST_CHECK(manager.GetFocusOrder(second) == 1);
204 // make sure the change of focus order doesn't affect the actor's description
205 DALI_TEST_CHECK(manager.GetAccessibilityAttribute(second, AccessibilityManager::ACCESSIBILITY_LABEL) == "second");
207 Dali::AccessibilityAdaptor accAdaptor = Dali::AccessibilityAdaptor::Get();
208 Test::AccessibilityAdaptor::SetEnabled( accAdaptor, true );
209 accAdaptor.HandleActionEnableEvent();
211 // Set the focus order and description for the third actor
212 Actor third = Actor::New();
213 manager.SetFocusOrder(third, 1);
214 manager.SetAccessibilityAttribute(third, AccessibilityManager::ACCESSIBILITY_LABEL, "third");
215 DALI_TEST_CHECK(manager.GetFocusOrder(third) == 1);
216 DALI_TEST_CHECK(manager.GetAccessibilityAttribute(third, AccessibilityManager::ACCESSIBILITY_LABEL) == "third");
218 // check that the focus order of the second actor is increased to 2.
219 DALI_TEST_CHECK(manager.GetFocusOrder(second) == 2);
220 // make sure the change of focus order doesn't affect the actor's description
221 DALI_TEST_CHECK(manager.GetAccessibilityAttribute(second, AccessibilityManager::ACCESSIBILITY_LABEL) == "second");
223 // check that the focus order of the first actor is increased to 3.
224 DALI_TEST_CHECK(manager.GetFocusOrder(first) == 3);
225 // make sure the change of focus order doesn't affect the actor's description
226 DALI_TEST_CHECK(manager.GetAccessibilityAttribute(first, AccessibilityManager::ACCESSIBILITY_LABEL) == "first");
230 int UtcDaliAccessibilityManagerGenerateNewFocusOrder(void)
232 ToolkitTestApplication application;
234 tet_infoline(" UtcDaliAccessibilityManagerGenerateNewFocusOrder");
236 AccessibilityManager manager = AccessibilityManager::Get();
237 DALI_TEST_CHECK(manager);
239 DALI_TEST_CHECK(1 == manager.GenerateNewFocusOrder());
240 DALI_TEST_CHECK(1 == manager.GenerateNewFocusOrder());
242 Actor first = Actor::New();
243 Actor second = Actor::New();
245 // Set the focus order for the first actor
246 manager.SetFocusOrder(first, 1);
247 manager.SetAccessibilityAttribute(first, AccessibilityManager::ACCESSIBILITY_LABEL, "first");
248 DALI_TEST_CHECK(manager.GetFocusOrder(first) == 1);
250 //Test for new focus order
251 DALI_TEST_CHECK(2 == manager.GenerateNewFocusOrder());
253 // Set the focus order for the first actor
254 manager.SetFocusOrder(second, 2);
255 manager.SetAccessibilityAttribute(second, AccessibilityManager::ACCESSIBILITY_LABEL, "first");
256 DALI_TEST_CHECK(manager.GetFocusOrder(second) == 2);
260 int UtcDaliAccessibilityManagerGetActorByFocusOrder(void)
262 ToolkitTestApplication application;
264 tet_infoline(" UtcDaliAccessibilityManagerGetActorByFocusOrder");
266 AccessibilityManager manager = AccessibilityManager::Get();
267 DALI_TEST_CHECK(manager);
269 // Create the actors and set their focus orders
270 Actor first = Actor::New();
271 manager.SetFocusOrder(first, 1);
273 Actor second = Actor::New();
274 manager.SetFocusOrder(second, 2);
276 Actor third = Actor::New();
277 manager.SetFocusOrder(third, 3);
279 // Check that we get an empty handle as no actor is added to the stage yet.
280 DALI_TEST_CHECK(manager.GetActorByFocusOrder(1) == Actor());
281 DALI_TEST_CHECK(manager.GetActorByFocusOrder(2) == Actor());
282 DALI_TEST_CHECK(manager.GetActorByFocusOrder(3) == Actor());
284 // Add the actors to the stage
285 Stage::GetCurrent().Add(first);
286 Stage::GetCurrent().Add(second);
287 Stage::GetCurrent().Add(third);
289 // Check that we get an empty handle because focus order 0 means undefined.
290 DALI_TEST_CHECK(manager.GetActorByFocusOrder(0) == Actor());
292 // Check that we get correct actors for the specified focus orders
293 DALI_TEST_CHECK(manager.GetActorByFocusOrder(1) == first);
294 DALI_TEST_CHECK(manager.GetActorByFocusOrder(2) == second);
295 DALI_TEST_CHECK(manager.GetActorByFocusOrder(3) == third);
297 Dali::AccessibilityAdaptor accAdaptor = Dali::AccessibilityAdaptor::Get();
298 Test::AccessibilityAdaptor::SetEnabled( accAdaptor, true );
299 accAdaptor.HandleActionEnableEvent();
301 // Change the focus order of the third actor to 1
302 manager.SetFocusOrder(third, 1);
304 // Check that we still get correct actors after changing their focus orders
305 DALI_TEST_CHECK(manager.GetActorByFocusOrder(1) == third);
306 DALI_TEST_CHECK(manager.GetActorByFocusOrder(2) == first);
307 DALI_TEST_CHECK(manager.GetActorByFocusOrder(3) == second);
309 // Check that we get an empty handle because no actor has a focus order of 4
310 DALI_TEST_CHECK(manager.GetActorByFocusOrder(4) == Actor());
314 int UtcDaliAccessibilityManagerSetAndGetCurrentFocusActor(void)
316 ToolkitTestApplication application;
318 tet_infoline(" UtcDaliAccessibilityManagerSetAndGetCurrentFocusActor");
320 AccessibilityManager manager = AccessibilityManager::Get();
321 DALI_TEST_CHECK(manager);
323 Dali::AccessibilityAdaptor accAdaptor = Dali::AccessibilityAdaptor::Get();
324 Test::AccessibilityAdaptor::SetEnabled( accAdaptor, true );
325 accAdaptor.HandleActionEnableEvent();
327 // Create the first actor and add it to the stage
328 Actor first = Actor::New();
329 manager.SetFocusOrder(first, 1);
330 Stage::GetCurrent().Add(first);
332 // Create the second actor and add it to the stage
333 Actor second = Actor::New();
334 manager.SetFocusOrder(second, 2);
335 Stage::GetCurrent().Add(second);
337 // Create the third actor but don't add it to the stage
338 Actor third = Actor::New();
339 manager.SetFocusOrder(third, 3);
341 // Check that no actor is being focused yet.
342 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == Actor());
344 // Check that it will fail to set focus on an invalid actor
345 DALI_TEST_CHECK(manager.SetCurrentFocusActor(Actor()) == false);
347 // Check that the focus is set on the first actor
348 DALI_TEST_CHECK(manager.SetCurrentFocusActor(first) == true);
349 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == first);
351 // Check that the focus is set on the second actor
352 DALI_TEST_CHECK(manager.SetCurrentFocusActor(second) == true);
353 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == second);
355 // Check that it will fail to set focus on the third actor as it's not in the stage
356 DALI_TEST_CHECK(manager.SetCurrentFocusActor(third) == false);
358 // Add the third actor to the stage
359 Stage::GetCurrent().Add(third);
361 // make the third actor invisible
362 third.SetVisible(false);
363 // flush the queue and render once
364 application.SendNotification();
365 application.Render();
367 // Check that it will fail to set focus on the third actor as it's invisible
368 DALI_TEST_CHECK(manager.SetCurrentFocusActor(third) == false);
370 // Make the third actor visible
371 third.SetVisible(true);
372 // flush the queue and render once
373 application.SendNotification();
374 application.Render();
376 // Make the third actor not focusable
377 Property::Index propertyActorFocusable = third.GetPropertyIndex("focusable");
378 third.SetProperty(propertyActorFocusable, false);
379 // flush the queue and render once
380 application.SendNotification();
381 application.Render();
383 // Check that it will fail to set focus on the third actor as it's not focusable
384 DALI_TEST_CHECK(manager.SetCurrentFocusActor(third) == false);
386 // Make the third actor focusable
387 third.SetProperty(propertyActorFocusable, true);
388 // flush the queue and render once
389 application.SendNotification();
390 application.Render();
392 // Check that the focus is successfully moved to the third actor
393 DALI_TEST_CHECK(manager.SetCurrentFocusActor(third) == true);
395 // Make the current focused actor to be not focusable by setting its focus order to be 0
396 manager.SetFocusOrder(third, 0);
398 // Check that the focus is automatically cleared
399 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == Actor());
401 // Set the focus order of the third actor again
402 manager.SetFocusOrder(third, 3);
404 // Check that the third actor can be focused successfully now
405 DALI_TEST_CHECK(manager.SetCurrentFocusActor(third) == true);
409 int UtcDaliAccessibilityManagerGetCurrentFocusGroup(void)
411 ToolkitTestApplication application;
413 tet_infoline(" UtcDaliAccessibilityManagerGetCurrentFocusGroup");
415 AccessibilityManager manager = AccessibilityManager::Get();
416 DALI_TEST_CHECK(manager);
418 Dali::AccessibilityAdaptor accAdaptor = Dali::AccessibilityAdaptor::Get();
419 Test::AccessibilityAdaptor::SetEnabled( accAdaptor, true );
420 accAdaptor.HandleActionEnableEvent();
422 // Create an actor with two child actors and add it to the stage
423 Actor parent = Actor::New();
424 Actor firstChild = Actor::New();
425 Actor secondChild = Actor::New();
426 parent.Add(firstChild);
427 parent.Add(secondChild);
428 Stage::GetCurrent().Add(parent);
430 // Create three actors and add them as the children of the first child actor
431 Actor firstGrandChild = Actor::New();
432 Actor secondGrandChild = Actor::New();
433 Actor thirdGrandChild = Actor::New();
434 firstChild.Add(firstGrandChild);
435 firstChild.Add(secondGrandChild);
436 firstChild.Add(thirdGrandChild);
438 // Set focus order to the actors
439 manager.SetFocusOrder(parent, 1);
440 manager.SetFocusOrder(firstChild, 2);
441 manager.SetFocusOrder(firstGrandChild, 3);
442 manager.SetFocusOrder(secondGrandChild, 4);
443 manager.SetFocusOrder(thirdGrandChild, 5);
444 manager.SetFocusOrder(secondChild, 6);
446 // Set the parent and the first child actor as focus groups
447 manager.SetFocusGroup(parent, true);
448 DALI_TEST_CHECK(manager.IsFocusGroup(parent) == true);
450 // Set focus to the first grand child actor
451 DALI_TEST_CHECK(manager.SetCurrentFocusActor(firstGrandChild) == true);
452 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == firstGrandChild);
454 // The current focus group should be the parent, As it is the immediate parent which is also a focus group.
455 DALI_TEST_CHECK(manager.GetCurrentFocusGroup() == parent);
457 manager.SetFocusGroup(firstChild, true);
458 DALI_TEST_CHECK(manager.IsFocusGroup(firstChild) == true);
460 // The current focus group should be the firstChild, As it is the immediate parent which is also a focus group.
461 DALI_TEST_CHECK(manager.GetCurrentFocusGroup() == firstChild);
463 manager.SetFocusGroup(firstGrandChild, true);
464 DALI_TEST_CHECK(manager.IsFocusGroup(firstGrandChild) == true);
466 // The current focus group should be itself, As it is also a focus group.
467 DALI_TEST_CHECK(manager.GetCurrentFocusGroup() == firstGrandChild);
469 // Set focus to the second grand child actor
470 DALI_TEST_CHECK(manager.SetCurrentFocusActor(secondGrandChild) == true);
471 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == secondGrandChild);
473 // The current focus group should be the firstChild, As it is the immediate parent which is also a
474 // focus group for the current focus actor.
475 DALI_TEST_CHECK(manager.GetCurrentFocusGroup() == firstChild);
480 int UtcDaliAccessibilityManagerGetCurrentFocusOrder(void)
482 ToolkitTestApplication application;
484 tet_infoline(" UtcDaliAccessibilityManagerGetCurrentFocusOrder");
486 AccessibilityManager manager = AccessibilityManager::Get();
487 DALI_TEST_CHECK(manager);
489 Dali::AccessibilityAdaptor accAdaptor = Dali::AccessibilityAdaptor::Get();
490 Test::AccessibilityAdaptor::SetEnabled( accAdaptor, true );
491 accAdaptor.HandleActionEnableEvent();
493 Actor first = Actor::New();
494 Stage::GetCurrent().Add(first);
496 Actor second = Actor::New();
497 Stage::GetCurrent().Add(second);
499 Actor third = Actor::New();
500 Stage::GetCurrent().Add(third);
502 // Set the focus order and description for the first actor
503 manager.SetFocusOrder(first, 1);
504 manager.SetAccessibilityAttribute(first, AccessibilityManager::ACCESSIBILITY_LABEL, "first");
505 DALI_TEST_CHECK(manager.GetFocusOrder(first) == 1);
506 DALI_TEST_CHECK(manager.GetAccessibilityAttribute(first, AccessibilityManager::ACCESSIBILITY_LABEL) == "first");
508 // Set the focus order and description for the second actor
509 manager.SetFocusOrder(second, 2);
510 manager.SetAccessibilityAttribute(second, AccessibilityManager::ACCESSIBILITY_LABEL, "second");
511 DALI_TEST_CHECK(manager.GetFocusOrder(second) == 2);
512 DALI_TEST_CHECK(manager.GetAccessibilityAttribute(second, AccessibilityManager::ACCESSIBILITY_LABEL) == "second");
514 // Set the focus order and description for the second actor
515 manager.SetFocusOrder(third, 3);
516 manager.SetAccessibilityAttribute(third, AccessibilityManager::ACCESSIBILITY_LABEL, "third");
517 DALI_TEST_CHECK(manager.GetFocusOrder(third) == 3);
518 DALI_TEST_CHECK(manager.GetAccessibilityAttribute(third, AccessibilityManager::ACCESSIBILITY_LABEL) == "third");
520 // Check that no actor is being focused yet.
521 DALI_TEST_CHECK(manager.GetCurrentFocusOrder() == 0);
523 // Set the focus on the first actor and test
524 DALI_TEST_CHECK(manager.SetCurrentFocusActor(first) == true);
525 DALI_TEST_CHECK(manager.GetCurrentFocusOrder() == 1);
527 // Move the focus forward to the second actor and test
528 manager.MoveFocusForward();
529 DALI_TEST_CHECK(manager.GetCurrentFocusOrder() == 2);
531 // Move the focus forward to the third actor and test
532 manager.MoveFocusForward();
533 DALI_TEST_CHECK(manager.GetCurrentFocusOrder() == 3);
535 // Clear focus and test
536 manager.ClearFocus();
537 DALI_TEST_CHECK(manager.GetCurrentFocusOrder() == 0);
541 int UtcDaliAccessibilityManagerMoveFocusForward(void)
543 ToolkitTestApplication application;
545 tet_infoline(" UtcDaliAccessibilityManagerMoveFocusForward");
547 AccessibilityManager manager = AccessibilityManager::Get();
548 DALI_TEST_CHECK(manager);
550 Dali::AccessibilityAdaptor accAdaptor = Dali::AccessibilityAdaptor::Get();
551 Test::AccessibilityAdaptor::SetEnabled( accAdaptor, true );
552 accAdaptor.HandleActionEnableEvent();
554 Actor first = Actor::New();
555 Stage::GetCurrent().Add(first);
557 Actor second = Actor::New();
558 Stage::GetCurrent().Add(second);
560 Actor third = Actor::New();
561 Stage::GetCurrent().Add(third);
563 // Set the focus order and description for the first actor
564 manager.SetFocusOrder(first, 1);
565 manager.SetAccessibilityAttribute(first, AccessibilityManager::ACCESSIBILITY_LABEL, "first");
566 DALI_TEST_CHECK(manager.GetFocusOrder(first) == 1);
567 DALI_TEST_CHECK(manager.GetAccessibilityAttribute(first, AccessibilityManager::ACCESSIBILITY_LABEL) == "first");
569 // Set the focus order and description for the second actor
570 manager.SetFocusOrder(second, 2);
571 manager.SetAccessibilityAttribute(second, AccessibilityManager::ACCESSIBILITY_LABEL, "second");
572 DALI_TEST_CHECK(manager.GetFocusOrder(second) == 2);
573 DALI_TEST_CHECK(manager.GetAccessibilityAttribute(second, AccessibilityManager::ACCESSIBILITY_LABEL) == "second");
575 // Set the focus order and description for the second actor
576 manager.SetFocusOrder(third, 3);
577 manager.SetAccessibilityAttribute(third, AccessibilityManager::ACCESSIBILITY_LABEL, "third");
578 DALI_TEST_CHECK(manager.GetFocusOrder(third) == 3);
579 DALI_TEST_CHECK(manager.GetAccessibilityAttribute(third, AccessibilityManager::ACCESSIBILITY_LABEL) == "third");
581 // Check that no actor is being focused yet.
582 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == Actor());
584 // Set the focus on the first actor
585 DALI_TEST_CHECK(manager.SetCurrentFocusActor(first) == true);
586 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == first);
587 DALI_TEST_CHECK(manager.GetAccessibilityAttribute(manager.GetCurrentFocusActor(), AccessibilityManager::ACCESSIBILITY_LABEL) == "first");
589 // Test the non-wrapped move first
590 manager.SetWrapMode(false);
591 DALI_TEST_CHECK(manager.GetWrapMode() == false);
593 // Move the focus forward to the second actor
594 manager.MoveFocusForward();
595 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == second);
596 DALI_TEST_CHECK(manager.GetAccessibilityAttribute(manager.GetCurrentFocusActor(), AccessibilityManager::ACCESSIBILITY_LABEL) == "second");
598 // Move the focus forward to the third actor
599 manager.MoveFocusForward();
600 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == third);
601 DALI_TEST_CHECK(manager.GetAccessibilityAttribute(manager.GetCurrentFocusActor(), AccessibilityManager::ACCESSIBILITY_LABEL) == "third");
603 // Check that it will fail to move the focus forward again as the third actor is the last
604 // focusable actor in the focus chain
605 manager.MoveFocusForward();
606 // The focus should still be set on the third actor
607 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == third);
608 DALI_TEST_CHECK(manager.GetAccessibilityAttribute(manager.GetCurrentFocusActor(), AccessibilityManager::ACCESSIBILITY_LABEL) == "third");
610 // Now test the wrapped move
611 manager.SetWrapMode(true);
612 DALI_TEST_CHECK(manager.GetWrapMode() == true);
614 // Move the focus forward recursively and this time the first actor should be focused
615 manager.MoveFocusForward();
616 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == first);
617 DALI_TEST_CHECK(manager.GetAccessibilityAttribute(manager.GetCurrentFocusActor(), AccessibilityManager::ACCESSIBILITY_LABEL) == "first");
619 // Make the second actor not focusable
620 Property::Index propertyActorFocusable = second.GetPropertyIndex("focusable");
621 second.SetProperty(propertyActorFocusable, false);
622 // flush the queue and render once
623 application.SendNotification();
624 application.Render();
626 // Move the focus forward and check that the second actor should be skipped and
627 // the third actor should be focused now.
628 manager.MoveFocusForward();
629 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == third);
630 DALI_TEST_CHECK(manager.GetAccessibilityAttribute(manager.GetCurrentFocusActor(), AccessibilityManager::ACCESSIBILITY_LABEL) == "third");
632 // Make the first actor invisible
633 first.SetVisible(false);
634 // flush the queue and render once
635 application.SendNotification();
636 application.Render();
638 // Move the focus forward and check that the first actor should be skipped as it's
639 // invisible and the second actor should also be skipped as it's not focusable,
640 // so the focus will still be on the third actor
641 manager.MoveFocusForward();
642 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == third);
643 DALI_TEST_CHECK(manager.GetAccessibilityAttribute(manager.GetCurrentFocusActor(), AccessibilityManager::ACCESSIBILITY_LABEL) == "third");
645 // Make the third actor invisible so that no actor can be focused.
646 third.SetVisible(false);
647 // flush the queue and render once
648 application.SendNotification();
649 application.Render();
651 // Check that the focus move is failed as all the three actors can not be focused
652 manager.MoveFocusForward();
653 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == third);
654 DALI_TEST_CHECK(manager.GetAccessibilityAttribute(manager.GetCurrentFocusActor(), AccessibilityManager::ACCESSIBILITY_LABEL) == "third");
658 int UtcDaliAccessibilityManagerMoveFocusBackward(void)
660 ToolkitTestApplication application;
662 tet_infoline(" UtcDaliAccessibilityManagerMoveFocusBackward");
664 AccessibilityManager manager = AccessibilityManager::Get();
665 DALI_TEST_CHECK(manager);
667 Dali::AccessibilityAdaptor accAdaptor = Dali::AccessibilityAdaptor::Get();
668 Test::AccessibilityAdaptor::SetEnabled( accAdaptor, true );
669 accAdaptor.HandleActionEnableEvent();
671 Actor first = Actor::New();
672 Stage::GetCurrent().Add(first);
674 Actor second = Actor::New();
675 Stage::GetCurrent().Add(second);
677 Actor third = Actor::New();
678 Stage::GetCurrent().Add(third);
680 // Set the focus order and description for the first actor
681 manager.SetFocusOrder(first, 1);
682 manager.SetAccessibilityAttribute(first, AccessibilityManager::ACCESSIBILITY_LABEL, "first");
683 DALI_TEST_CHECK(manager.GetFocusOrder(first) == 1);
684 DALI_TEST_CHECK(manager.GetAccessibilityAttribute(first, AccessibilityManager::ACCESSIBILITY_LABEL) == "first");
686 // Set the focus order and description for the second actor
687 manager.SetFocusOrder(second, 2);
688 manager.SetAccessibilityAttribute(second, AccessibilityManager::ACCESSIBILITY_LABEL, "second");
689 DALI_TEST_CHECK(manager.GetFocusOrder(second) == 2);
690 DALI_TEST_CHECK(manager.GetAccessibilityAttribute(second, AccessibilityManager::ACCESSIBILITY_LABEL) == "second");
692 // Set the focus order and description for the second actor
693 manager.SetFocusOrder(third, 3);
694 manager.SetAccessibilityAttribute(third, AccessibilityManager::ACCESSIBILITY_LABEL, "third");
695 DALI_TEST_CHECK(manager.GetFocusOrder(third) == 3);
696 DALI_TEST_CHECK(manager.GetAccessibilityAttribute(third, AccessibilityManager::ACCESSIBILITY_LABEL) == "third");
698 // Check that no actor is being focused yet.
699 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == Actor());
701 // Set the focus on the third actor
702 DALI_TEST_CHECK(manager.SetCurrentFocusActor(third) == true);
703 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == third);
704 DALI_TEST_CHECK(manager.GetAccessibilityAttribute(manager.GetCurrentFocusActor(), AccessibilityManager::ACCESSIBILITY_LABEL) == "third");
706 // Test the non-wrapped move first
707 manager.SetWrapMode(false);
708 DALI_TEST_CHECK(manager.GetWrapMode() == false);
710 // Move the focus backward to the second actor
711 manager.MoveFocusBackward();
712 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == second);
713 DALI_TEST_CHECK(manager.GetAccessibilityAttribute(manager.GetCurrentFocusActor(), AccessibilityManager::ACCESSIBILITY_LABEL) == "second");
715 // Move the focus backward to the first actor
716 manager.MoveFocusBackward();
717 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == first);
718 DALI_TEST_CHECK(manager.GetAccessibilityAttribute(manager.GetCurrentFocusActor(), AccessibilityManager::ACCESSIBILITY_LABEL) == "first");
720 // Check that it will fail to move the focus backward again as the first actor is the first
721 // focusable actor in the focus chain
722 manager.MoveFocusBackward();
723 // The focus should still be set on the first actor
724 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == first);
725 DALI_TEST_CHECK(manager.GetAccessibilityAttribute(manager.GetCurrentFocusActor(), AccessibilityManager::ACCESSIBILITY_LABEL) == "first");
727 // Now test the wrapped move
728 manager.SetWrapMode(true);
729 DALI_TEST_CHECK(manager.GetWrapMode() == true);
731 // Move the focus backward recursively and this time the third actor should be focused
732 manager.MoveFocusBackward();
733 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == third);
734 DALI_TEST_CHECK(manager.GetAccessibilityAttribute(manager.GetCurrentFocusActor(), AccessibilityManager::ACCESSIBILITY_LABEL) == "third");
736 // Make the second actor not focusable
737 Property::Index propertyActorFocusable = second.GetPropertyIndex("focusable");
738 second.SetProperty(propertyActorFocusable, false);
739 // flush the queue and render once
740 application.SendNotification();
741 application.Render();
743 // Move the focus backward and check that the second actor should be skipped and
744 // the first actor should be focused now.
745 manager.MoveFocusBackward();
746 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == first);
747 DALI_TEST_CHECK(manager.GetAccessibilityAttribute(manager.GetCurrentFocusActor(), AccessibilityManager::ACCESSIBILITY_LABEL) == "first");
749 // Make the third actor invisible
750 third.SetVisible(false);
751 // flush the queue and render once
752 application.SendNotification();
753 application.Render();
755 // Move the focus backward and check that the third actor should be skipped as it's
756 // invisible and the second actor should also be skipped as it's not focusable,
757 // so the focus will still be on the first actor
758 manager.MoveFocusBackward();
759 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == first);
760 DALI_TEST_CHECK(manager.GetAccessibilityAttribute(manager.GetCurrentFocusActor(), AccessibilityManager::ACCESSIBILITY_LABEL) == "first");
762 // Make the first actor invisible so that no actor can be focused.
763 first.SetVisible(false);
764 // flush the queue and render once
765 application.SendNotification();
766 application.Render();
768 // Check that the focus move is failed as all the three actors can not be focused
769 manager.MoveFocusBackward();
770 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == first);
771 DALI_TEST_CHECK(manager.GetAccessibilityAttribute(manager.GetCurrentFocusActor(), AccessibilityManager::ACCESSIBILITY_LABEL) == "first");
775 int UtcDaliAccessibilityManagerClearFocus(void)
777 ToolkitTestApplication application;
779 tet_infoline(" UtcDaliAccessibilityManagerClearFocus");
781 AccessibilityManager manager = AccessibilityManager::Get();
782 DALI_TEST_CHECK(manager);
784 Dali::AccessibilityAdaptor accAdaptor = Dali::AccessibilityAdaptor::Get();
785 Test::AccessibilityAdaptor::SetEnabled( accAdaptor, true );
786 accAdaptor.HandleActionEnableEvent();
788 // Create the first actor and add it to the stage
789 Actor first = Actor::New();
790 manager.SetFocusOrder(first, 1);
791 Stage::GetCurrent().Add(first);
793 // Create the second actor and add it to the stage
794 Actor second = Actor::New();
795 manager.SetFocusOrder(second, 2);
796 Stage::GetCurrent().Add(second);
798 // Check that no actor is being focused yet.
799 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == Actor());
801 // Check that the focus is set on the first actor
802 DALI_TEST_CHECK(manager.SetCurrentFocusActor(first) == true);
803 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == first);
805 // Check that the focus is set on the second actor
806 DALI_TEST_CHECK(manager.SetCurrentFocusActor(second) == true);
807 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == second);
810 manager.ClearFocus();
812 // Check that no actor is being focused now.
813 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == Actor());
817 int UtcDaliAccessibilityManagerReset(void)
819 ToolkitTestApplication application;
821 tet_infoline(" UtcDaliAccessibilityManagerReset");
823 AccessibilityManager manager = AccessibilityManager::Get();
824 DALI_TEST_CHECK(manager);
826 // Create the first actor and add it to the stage
827 Actor first = Actor::New();
828 manager.SetFocusOrder(first, 1);
829 Stage::GetCurrent().Add(first);
831 // Create the second actor and add it to the stage
832 Actor second = Actor::New();
833 manager.SetFocusOrder(second, 2);
834 Stage::GetCurrent().Add(second);
836 // Check that no actor is being focused yet.
837 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == Actor());
839 // Check that the focus is set on the first actor
840 DALI_TEST_CHECK(manager.SetCurrentFocusActor(first) == true);
841 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == first);
843 // Check that the focus is set on the second actor
844 DALI_TEST_CHECK(manager.SetCurrentFocusActor(second) == true);
845 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == second);
850 // Check that no actor is being focused now and the focus order of actors have been cleared
851 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == Actor());
852 DALI_TEST_CHECK(manager.GetFocusOrder(first) == 0);
853 DALI_TEST_CHECK(manager.GetFocusOrder(first) == 0);
857 int UtcDaliAccessibilityManagerFocusGroup(void)
859 ToolkitTestApplication application;
861 tet_infoline(" UtcDaliAccessibilityManagerFocusGroup");
863 AccessibilityManager manager = AccessibilityManager::Get();
864 DALI_TEST_CHECK(manager);
866 Dali::AccessibilityAdaptor accAdaptor = Dali::AccessibilityAdaptor::Get();
867 Test::AccessibilityAdaptor::SetEnabled( accAdaptor, true );
868 accAdaptor.HandleActionEnableEvent();
870 // Create an actor with two child actors and add it to the stage
871 Actor parent = Actor::New();
872 Actor firstChild = Actor::New();
873 Actor secondChild = Actor::New();
874 parent.Add(firstChild);
875 parent.Add(secondChild);
876 Stage::GetCurrent().Add(parent);
878 // Create three actors and add them as the children of the first child actor
879 Actor firstGrandChild = Actor::New();
880 Actor secondGrandChild = Actor::New();
881 Actor thirdGrandChild = Actor::New();
882 firstChild.Add(firstGrandChild);
883 firstChild.Add(secondGrandChild);
884 firstChild.Add(thirdGrandChild);
886 // Set focus order to the actors
887 manager.SetFocusOrder(parent, 1);
888 manager.SetFocusOrder(firstChild, 2);
889 manager.SetFocusOrder(firstGrandChild, 3);
890 manager.SetFocusOrder(secondGrandChild, 4);
891 manager.SetFocusOrder(thirdGrandChild, 5);
892 manager.SetFocusOrder(secondChild, 6);
894 // Set the parent and the first child actor as focus groups
895 manager.SetFocusGroup(parent, true);
896 DALI_TEST_CHECK(manager.IsFocusGroup(parent) == true);
898 // The focus group of the parent should be itself, as it is set to be a focus group.
899 DALI_TEST_CHECK(manager.GetFocusGroup(parent) == parent);
901 // The focus group of the firstChild should be its parent, as it is the immediate parent which is also a group.
902 DALI_TEST_CHECK(manager.GetFocusGroup(firstChild) == parent);
904 manager.SetFocusGroup(firstChild, true);
905 DALI_TEST_CHECK(manager.IsFocusGroup(firstChild) == true);
907 // The focus group of the firstChild should be itself, as it is set to be a focus group now.
908 DALI_TEST_CHECK(manager.GetFocusGroup(firstChild) == firstChild);
910 // Enable wrap mode for focus movement.
911 manager.SetWrapMode(true);
912 DALI_TEST_CHECK(manager.GetWrapMode() == true);
914 // Check that no actor is being focused yet.
915 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == Actor());
917 // Check that the focus is set on the parent actor.
918 DALI_TEST_CHECK(manager.SetCurrentFocusActor(parent) == true);
919 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == parent);
921 // Check that group mode is disabled.
922 DALI_TEST_CHECK(manager.GetGroupMode() == false);
924 // Check that the focus movement is wrapped as normal.
925 DALI_TEST_CHECK(manager.MoveFocusForward() == true);
926 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == firstChild);
927 DALI_TEST_CHECK(manager.MoveFocusForward() == true);
928 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == firstGrandChild);
929 DALI_TEST_CHECK(manager.MoveFocusForward() == true);
930 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == secondGrandChild);
931 DALI_TEST_CHECK(manager.MoveFocusForward() == true);
932 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == thirdGrandChild);
933 DALI_TEST_CHECK(manager.MoveFocusForward() == true);
934 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == secondChild);
935 DALI_TEST_CHECK(manager.MoveFocusForward() == true);
936 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == parent);
937 DALI_TEST_CHECK(manager.MoveFocusForward() == true);
938 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == firstChild);
939 DALI_TEST_CHECK(manager.MoveFocusForward() == true);
940 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == firstGrandChild);
942 // Enable the group mode.
943 manager.SetGroupMode(true);
944 DALI_TEST_CHECK(manager.GetGroupMode() == true);
946 // Check that the focus movement is now limited to the current focus group.
947 DALI_TEST_CHECK(manager.MoveFocusForward() == true);
948 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == secondGrandChild);
949 DALI_TEST_CHECK(manager.MoveFocusForward() == true);
950 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == thirdGrandChild);
951 DALI_TEST_CHECK(manager.MoveFocusForward() == true);
952 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == firstChild);
953 DALI_TEST_CHECK(manager.MoveFocusForward() == true);
954 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == firstGrandChild);
958 int UtcDaliAccessibilityManagerSetAndGetFocusIndicator(void)
960 ToolkitTestApplication application;
962 tet_infoline(" UtcDaliAccessibilityManagerSetAndGetFocusIndicator");
964 AccessibilityManager manager = AccessibilityManager::Get();
965 DALI_TEST_CHECK(manager);
967 Actor defaultFocusIndicatorActor = manager.GetFocusIndicatorActor();
968 DALI_TEST_CHECK(defaultFocusIndicatorActor);
970 Actor newFocusIndicatorActor = Actor::New();
971 manager.SetFocusIndicatorActor(newFocusIndicatorActor);
972 DALI_TEST_CHECK(manager.GetFocusIndicatorActor() == newFocusIndicatorActor);
976 int UtcDaliAccessibilityManagerSetAndGetFocusIndicatorWithFocusedActor(void)
978 ToolkitTestApplication application;
980 tet_infoline(" UtcDaliAccessibilityManagerSetAndGetFocusIndicatorWithFocusedActor");
982 AccessibilityManager manager = AccessibilityManager::Get();
983 DALI_TEST_CHECK(manager);
985 Dali::AccessibilityAdaptor accAdaptor = Dali::AccessibilityAdaptor::Get();
986 Test::AccessibilityAdaptor::SetEnabled( accAdaptor, true );
987 accAdaptor.HandleActionEnableEvent();
989 Actor defaultFocusIndicatorActor = manager.GetFocusIndicatorActor();
990 DALI_TEST_CHECK(defaultFocusIndicatorActor);
992 Actor focusedActor = Actor::New();
993 Stage::GetCurrent().Add( focusedActor );
995 application.SendNotification();
996 application.Render();
998 DALI_TEST_EQUALS( focusedActor.GetChildCount(), 0u, TEST_LOCATION );
1000 manager.SetFocusOrder( focusedActor, 1 );
1001 manager.SetCurrentFocusActor( focusedActor );
1003 DALI_TEST_EQUALS( focusedActor.GetChildCount(), 1u, TEST_LOCATION );
1004 DALI_TEST_CHECK( focusedActor.GetChildAt(0) == defaultFocusIndicatorActor );
1006 Actor newFocusIndicatorActor = Actor::New();
1007 manager.SetFocusIndicatorActor( newFocusIndicatorActor );
1008 DALI_TEST_CHECK(manager.GetFocusIndicatorActor() == newFocusIndicatorActor);
1009 DALI_TEST_EQUALS( focusedActor.GetChildCount(), 1u, TEST_LOCATION );
1010 DALI_TEST_CHECK( focusedActor.GetChildAt(0) == newFocusIndicatorActor );
1012 // Disable Accessibility
1013 Test::AccessibilityAdaptor::SetEnabled( accAdaptor, false );
1014 accAdaptor.HandleActionEnableEvent();
1016 DALI_TEST_EQUALS( focusedActor.GetChildCount(), 0u, TEST_LOCATION );
1021 int UtcDaliAccessibilityManagerSignalFocusChanged(void)
1023 ToolkitTestApplication application;
1025 tet_infoline(" UtcDaliAccessibilityManagerSignalFocusChanged");
1027 AccessibilityManager manager = AccessibilityManager::Get();
1028 DALI_TEST_CHECK(manager);
1030 bool signalVerified = false;
1031 FocusChangedCallback callback(signalVerified);
1032 manager.FocusChangedSignal().Connect( &callback, &FocusChangedCallback::Callback );
1034 // Create the first actor and add it to the stage
1035 Actor first = Actor::New();
1036 manager.SetFocusOrder(first, 1);
1037 Stage::GetCurrent().Add(first);
1039 // Create the second actor and add it to the stage
1040 Actor second = Actor::New();
1041 manager.SetFocusOrder(second, 2);
1042 Stage::GetCurrent().Add(second);
1044 // Check that no actor is being focused yet.
1045 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == Actor());
1047 // Check that the focus is set on the first actor
1048 DALI_TEST_CHECK(manager.SetCurrentFocusActor(first) == true);
1049 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == first);
1050 DALI_TEST_CHECK(callback.mSignalVerified);
1053 // Check that the focus is set on the second actor
1054 DALI_TEST_CHECK(manager.SetCurrentFocusActor(second) == true);
1055 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == second);
1056 DALI_TEST_CHECK(callback.mSignalVerified);
1060 manager.ClearFocus();
1062 // Check that no actor is being focused now.
1063 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == Actor());
1064 DALI_TEST_CHECK(callback.mSignalVerified);
1068 int UtcDaliAccessibilityManagerSignalFocusOvershot(void)
1070 ToolkitTestApplication application;
1072 tet_infoline(" UtcDaliAccessibilityManagerSignalFocusOvershot");
1074 AccessibilityManager manager = AccessibilityManager::Get();
1075 DALI_TEST_CHECK(manager);
1077 Dali::AccessibilityAdaptor accAdaptor = Dali::AccessibilityAdaptor::Get();
1078 Test::AccessibilityAdaptor::SetEnabled( accAdaptor, true );
1079 accAdaptor.HandleActionEnableEvent();
1081 bool signalVerified = false;
1082 FocusOvershotCallback callback(signalVerified);
1083 manager.FocusOvershotSignal().Connect(&callback, &FocusOvershotCallback::Callback);
1085 // Create the first actor and add it to the stage
1086 Actor first = Actor::New();
1087 manager.SetFocusOrder(first, 1);
1088 Stage::GetCurrent().Add(first);
1090 // Create the second actor and add it to the stage
1091 Actor second = Actor::New();
1092 manager.SetFocusOrder(second, 2);
1093 Stage::GetCurrent().Add(second);
1095 // Check that the wrap mode is disabled
1096 DALI_TEST_CHECK(manager.GetWrapMode() == false);
1098 // Check that the focus is set on the first actor
1099 DALI_TEST_CHECK(manager.SetCurrentFocusActor(first) == true);
1100 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == first);
1102 // Check that the focus is moved to the second actor successfully.
1103 DALI_TEST_CHECK(manager.MoveFocusForward() == true);
1104 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == second);
1106 // Check that the forward focus movement is overshot.
1107 callback.mCurrentFocusedActor = second;
1108 callback.mFocusOvershotDirection = Toolkit::AccessibilityManager::OVERSHOT_NEXT;
1109 DALI_TEST_CHECK(manager.MoveFocusForward() == false);
1110 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == second);
1111 DALI_TEST_CHECK(signalVerified);
1114 // Enable the wrap mode
1115 manager.SetWrapMode(true);
1116 DALI_TEST_CHECK(manager.GetWrapMode() == true);
1118 // Check that the forward focus movement is wrapped and no overshot happens.
1119 DALI_TEST_CHECK(manager.MoveFocusForward() == true);
1120 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == first);
1121 DALI_TEST_CHECK(signalVerified == false);
1123 // Disable the wrap mode
1124 manager.SetWrapMode(false);
1125 DALI_TEST_CHECK(manager.GetWrapMode() == false);
1127 // Check that the backward focus movement is overshot.
1128 callback.mCurrentFocusedActor = first;
1129 callback.mFocusOvershotDirection = Toolkit::AccessibilityManager::OVERSHOT_PREVIOUS;
1130 DALI_TEST_CHECK(manager.MoveFocusBackward() == false);
1131 DALI_TEST_CHECK(manager.GetCurrentFocusActor() == first);
1132 DALI_TEST_CHECK(signalVerified);
1136 int UtcDaliAccessibilityManagerSignalFocusedActorActivated(void)
1138 ToolkitTestApplication application;
1140 tet_infoline(" UtcDaliAccessibilityManagerSignalFocusedActorActivated");
1142 AccessibilityManager manager = AccessibilityManager::Get();
1143 DALI_TEST_CHECK(manager);
1145 FocusedActorActivatedCallback callback;
1146 manager.FocusedActorActivatedSignal().Connect(&callback, &FocusedActorActivatedCallback::Callback);
1147 DALI_TEST_CHECK(true);
1152 // Note: No negative test for GetReadPosition as it will always return something.
1153 int UtcDaliAccessibilityManagerGetReadPositionP(void)
1155 ToolkitTestApplication application;
1156 tet_infoline(" UtcDaliAccessibilityManagerGetReadPositionP");
1158 AccessibilityManager manager = AccessibilityManager::Get();
1159 DALI_TEST_CHECK( manager );
1161 Vector2 readPosition( manager.GetReadPosition() );
1162 DALI_TEST_EQUALS( readPosition.x, 0.0f, Math::MACHINE_EPSILON_0, TEST_LOCATION );
1163 DALI_TEST_EQUALS( readPosition.y, 0.0f, Math::MACHINE_EPSILON_0, TEST_LOCATION );
1168 // Functor to test if an accessibility signal has been called.
1169 class AccessibilityManagerSignalHandler : public Dali::ConnectionTracker
1172 AccessibilityManagerSignalHandler() :
1177 bool Callback( AccessibilityManager& accessibilityManager )
1180 tet_infoline( "Signal called" );
1184 unsigned int GetCalls() const
1190 unsigned int mCalls; ///< Keeps track of how many times the signal has been called.
1193 int UtcDaliAccessibilityManagerStatusChangedSignalP(void)
1195 ToolkitTestApplication application;
1196 tet_infoline( " UtcDaliAccessibilityManagerStatusChangedSignalP" );
1198 AccessibilityManagerSignalHandler callback;
1200 AccessibilityManager manager = AccessibilityManager::Get();
1201 DALI_TEST_CHECK( manager );
1203 manager.StatusChangedSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
1205 // Cause a state change.
1206 Dali::AccessibilityAdaptor accessibilityAdaptor = Dali::AccessibilityAdaptor::Get();
1207 accessibilityAdaptor.HandleActionEnableEvent();
1209 DALI_TEST_EQUALS( callback.GetCalls(), 1u, TEST_LOCATION );
1214 int UtcDaliAccessibilityManagerStatusChangedSignalN(void)
1216 ToolkitTestApplication application;
1217 tet_infoline( " UtcDaliAccessibilityManagerStatusChangedSignalN" );
1219 AccessibilityManagerSignalHandler callback;
1221 AccessibilityManager manager = AccessibilityManager::Get();
1222 DALI_TEST_CHECK( manager );
1224 manager.StatusChangedSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
1225 DALI_TEST_EQUALS( callback.GetCalls(), 0u, TEST_LOCATION );
1230 int UtcDaliAccessibilityManagerActionNextSignalP(void)
1232 ToolkitTestApplication application;
1233 tet_infoline( " UtcDaliAccessibilityManagerActionNextSignalP" );
1235 AccessibilityManagerSignalHandler callback;
1237 AccessibilityManager manager = AccessibilityManager::Get();
1238 DALI_TEST_CHECK( manager );
1240 manager.ActionNextSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
1242 Dali::AccessibilityAdaptor accessibilityAdaptor = Dali::AccessibilityAdaptor::Get();
1243 accessibilityAdaptor.HandleActionNextEvent();
1245 DALI_TEST_EQUALS( callback.GetCalls(), 1u, TEST_LOCATION );
1250 int UtcDaliAccessibilityManagerActionNextSignalN(void)
1252 ToolkitTestApplication application;
1253 tet_infoline( " UtcDaliAccessibilityManagerActionNextSignalN" );
1255 AccessibilityManagerSignalHandler callback;
1257 AccessibilityManager manager = AccessibilityManager::Get();
1258 DALI_TEST_CHECK( manager );
1260 manager.ActionNextSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
1261 DALI_TEST_EQUALS( callback.GetCalls(), 0u, TEST_LOCATION );
1266 int UtcDaliAccessibilityManagerActionPreviousSignalP(void)
1268 ToolkitTestApplication application;
1269 tet_infoline( " UtcDaliAccessibilityManagerActionPreviousSignalP" );
1271 AccessibilityManagerSignalHandler callback;
1273 AccessibilityManager manager = AccessibilityManager::Get();
1274 DALI_TEST_CHECK( manager );
1276 manager.ActionPreviousSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
1278 Dali::AccessibilityAdaptor accessibilityAdaptor = Dali::AccessibilityAdaptor::Get();
1279 accessibilityAdaptor.HandleActionPreviousEvent();
1281 DALI_TEST_EQUALS( callback.GetCalls(), 1u, TEST_LOCATION );
1286 int UtcDaliAccessibilityManagerActionPreviousSignalN(void)
1288 ToolkitTestApplication application;
1289 tet_infoline( " UtcDaliAccessibilityManagerActionPreviousSignalN" );
1291 AccessibilityManagerSignalHandler callback;
1293 AccessibilityManager manager = AccessibilityManager::Get();
1294 DALI_TEST_CHECK( manager );
1296 manager.ActionPreviousSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
1297 DALI_TEST_EQUALS( callback.GetCalls(), 0u, TEST_LOCATION );
1302 int UtcDaliAccessibilityManagerActionActivateSignalP(void)
1304 ToolkitTestApplication application;
1305 tet_infoline( " UtcDaliAccessibilityManagerActionActivateSignalP" );
1307 AccessibilityManagerSignalHandler callback;
1309 AccessibilityManager manager = AccessibilityManager::Get();
1310 DALI_TEST_CHECK( manager );
1312 Dali::AccessibilityAdaptor accAdaptor = Dali::AccessibilityAdaptor::Get();
1313 Test::AccessibilityAdaptor::SetEnabled( accAdaptor, true );
1314 accAdaptor.HandleActionEnableEvent();
1316 Dali::Toolkit::PushButton button = Dali::Toolkit::PushButton::New();
1317 button.SetSize(480, 800);
1318 Stage::GetCurrent().Add(button);
1319 manager.SetFocusOrder( button, 1 );
1320 manager.SetCurrentFocusActor( button );
1322 manager.ActionActivateSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
1324 Dali::AccessibilityAdaptor accessibilityAdaptor = Dali::AccessibilityAdaptor::Get();
1325 accessibilityAdaptor.HandleActionActivateEvent();
1327 DALI_TEST_EQUALS( callback.GetCalls(), 1u, TEST_LOCATION );
1332 int UtcDaliAccessibilityManagerActionActivateSignalN(void)
1334 ToolkitTestApplication application;
1335 tet_infoline( " UtcDaliAccessibilityManagerActionActivateSignalN" );
1337 AccessibilityManagerSignalHandler callback;
1339 AccessibilityManager manager = AccessibilityManager::Get();
1340 DALI_TEST_CHECK( manager );
1342 manager.ActionActivateSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
1343 DALI_TEST_EQUALS( callback.GetCalls(), 0u, TEST_LOCATION );
1348 int UtcDaliAccessibilityManagerActionReadSignalP(void)
1350 ToolkitTestApplication application;
1351 tet_infoline( " UtcDaliAccessibilityManagerActionReadSignalP" );
1353 AccessibilityManagerSignalHandler callback;
1355 Dali::AccessibilityAdaptor accAdaptor = Dali::AccessibilityAdaptor::Get();
1356 Test::AccessibilityAdaptor::SetEnabled( accAdaptor, true );
1357 accAdaptor.HandleActionEnableEvent();
1359 AccessibilityManager manager = AccessibilityManager::Get();
1360 DALI_TEST_CHECK( manager );
1362 manager.ActionReadSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
1364 Dali::AccessibilityAdaptor accessibilityAdaptor = Dali::AccessibilityAdaptor::Get();
1365 accessibilityAdaptor.HandleActionReadEvent( 100.0f, 200.0f, true );
1367 DALI_TEST_EQUALS( callback.GetCalls(), 1u, TEST_LOCATION );
1372 int UtcDaliAccessibilityManagerActionReadSignalN(void)
1374 ToolkitTestApplication application;
1375 tet_infoline( " UtcDaliAccessibilityManagerActionReadSignalN" );
1377 AccessibilityManagerSignalHandler callback;
1379 Dali::AccessibilityAdaptor accAdaptor = Dali::AccessibilityAdaptor::Get();
1380 Test::AccessibilityAdaptor::SetEnabled( accAdaptor, true );
1381 accAdaptor.HandleActionEnableEvent();
1383 AccessibilityManager manager = AccessibilityManager::Get();
1384 DALI_TEST_CHECK( manager );
1386 manager.ActionReadSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
1387 DALI_TEST_EQUALS( callback.GetCalls(), 0u, TEST_LOCATION );
1392 int UtcDaliAccessibilityManagerActionOverSignalP(void)
1394 ToolkitTestApplication application;
1395 tet_infoline( " UtcDaliAccessibilityManagerActionOverSignalP" );
1397 AccessibilityManagerSignalHandler callback;
1399 Dali::AccessibilityAdaptor accAdaptor = Dali::AccessibilityAdaptor::Get();
1400 Test::AccessibilityAdaptor::SetEnabled( accAdaptor, true );
1401 accAdaptor.HandleActionEnableEvent();
1403 AccessibilityManager manager = AccessibilityManager::Get();
1404 DALI_TEST_CHECK( manager );
1406 manager.ActionOverSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
1408 Dali::AccessibilityAdaptor accessibilityAdaptor = Dali::AccessibilityAdaptor::Get();
1409 // Note that the ActionOverSignal is provoked by a read even when "allow read again" is set to false.
1410 accessibilityAdaptor.HandleActionReadEvent( 100.0f, 200.0f, false );
1412 DALI_TEST_EQUALS( callback.GetCalls(), 1u, TEST_LOCATION );
1417 int UtcDaliAccessibilityManagerActionOverSignalN(void)
1419 ToolkitTestApplication application;
1420 tet_infoline( " UtcDaliAccessibilityManagerActionOverSignalN" );
1422 AccessibilityManagerSignalHandler callback;
1424 Dali::AccessibilityAdaptor accAdaptor = Dali::AccessibilityAdaptor::Get();
1425 Test::AccessibilityAdaptor::SetEnabled( accAdaptor, true );
1426 accAdaptor.HandleActionEnableEvent();
1428 AccessibilityManager manager = AccessibilityManager::Get();
1429 DALI_TEST_CHECK( manager );
1431 manager.ActionOverSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
1432 DALI_TEST_EQUALS( callback.GetCalls(), 0u, TEST_LOCATION );
1437 int UtcDaliAccessibilityManagerActionReadNextSignalP(void)
1439 ToolkitTestApplication application;
1440 tet_infoline( " UtcDaliAccessibilityManagerActionReadNextSignalP" );
1442 AccessibilityManagerSignalHandler callback;
1444 AccessibilityManager manager = AccessibilityManager::Get();
1445 DALI_TEST_CHECK( manager );
1447 manager.ActionReadNextSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
1449 Dali::AccessibilityAdaptor accessibilityAdaptor = Dali::AccessibilityAdaptor::Get();
1450 accessibilityAdaptor.HandleActionReadNextEvent();
1452 DALI_TEST_EQUALS( callback.GetCalls(), 1u, TEST_LOCATION );
1457 int UtcDaliAccessibilityManagerActionReadNextSignalN(void)
1459 ToolkitTestApplication application;
1460 tet_infoline( " UtcDaliAccessibilityManagerActionReadNextSignalN" );
1462 AccessibilityManagerSignalHandler callback;
1464 AccessibilityManager manager = AccessibilityManager::Get();
1465 DALI_TEST_CHECK( manager );
1467 manager.ActionReadNextSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
1468 DALI_TEST_EQUALS( callback.GetCalls(), 0u, TEST_LOCATION );
1473 int UtcDaliAccessibilityManagerActionReadPreviousSignalP(void)
1475 ToolkitTestApplication application;
1476 tet_infoline( " UtcDaliAccessibilityManagerActionReadPreviousSignalP" );
1478 AccessibilityManagerSignalHandler callback;
1480 AccessibilityManager manager = AccessibilityManager::Get();
1481 DALI_TEST_CHECK( manager );
1483 manager.ActionReadPreviousSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
1485 Dali::AccessibilityAdaptor accessibilityAdaptor = Dali::AccessibilityAdaptor::Get();
1486 accessibilityAdaptor.HandleActionReadPreviousEvent();
1488 DALI_TEST_EQUALS( callback.GetCalls(), 1u, TEST_LOCATION );
1493 int UtcDaliAccessibilityManagerActionReadPreviousSignalN(void)
1495 ToolkitTestApplication application;
1496 tet_infoline( " UtcDaliAccessibilityManagerActionReadPreviousSignalN" );
1498 AccessibilityManagerSignalHandler callback;
1500 AccessibilityManager manager = AccessibilityManager::Get();
1501 DALI_TEST_CHECK( manager );
1503 manager.ActionReadPreviousSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
1504 DALI_TEST_EQUALS( callback.GetCalls(), 0u, TEST_LOCATION );
1509 int UtcDaliAccessibilityManagerActionUpSignalP(void)
1511 ToolkitTestApplication application;
1512 tet_infoline( " UtcDaliAccessibilityManagerActionUpSignalP" );
1514 AccessibilityManagerSignalHandler callback;
1516 Dali::AccessibilityAdaptor accessibilityAdaptor = Dali::AccessibilityAdaptor::Get();
1517 Test::AccessibilityAdaptor::SetEnabled( accessibilityAdaptor, true );
1518 accessibilityAdaptor.HandleActionEnableEvent();
1520 AccessibilityManager manager = AccessibilityManager::Get();
1521 DALI_TEST_CHECK( manager );
1523 manager.ActionUpSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
1525 DummyControl dummyControl = DummyControl::New(true);
1526 dummyControl.SetSize(480, 800);
1527 manager.SetFocusOrder( dummyControl, 1 );
1528 Stage::GetCurrent().Add( dummyControl );
1529 manager.SetCurrentFocusActor( dummyControl );
1531 accessibilityAdaptor.HandleActionUpEvent();
1533 DALI_TEST_EQUALS( callback.GetCalls(), 1u, TEST_LOCATION );
1538 int UtcDaliAccessibilityManagerActionUpSignalN(void)
1540 ToolkitTestApplication application;
1541 tet_infoline( " UtcDaliAccessibilityManagerActionUpSignalN" );
1543 AccessibilityManagerSignalHandler callback;
1545 AccessibilityManager manager = AccessibilityManager::Get();
1546 DALI_TEST_CHECK( manager );
1548 manager.ActionUpSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
1549 DALI_TEST_EQUALS( callback.GetCalls(), 0u, TEST_LOCATION );
1554 int UtcDaliAccessibilityManagerActionDownSignalP(void)
1556 ToolkitTestApplication application;
1557 tet_infoline( " UtcDaliAccessibilityManagerActionDownSignalP" );
1559 AccessibilityManagerSignalHandler callback;
1561 Dali::AccessibilityAdaptor accessibilityAdaptor = Dali::AccessibilityAdaptor::Get();
1562 Test::AccessibilityAdaptor::SetEnabled( accessibilityAdaptor, true );
1563 accessibilityAdaptor.HandleActionEnableEvent();
1565 AccessibilityManager manager = AccessibilityManager::Get();
1566 DALI_TEST_CHECK( manager );
1568 manager.ActionDownSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
1570 Dali::Toolkit::PushButton button = Dali::Toolkit::PushButton::New();
1571 button.SetSize(480, 800);
1572 Stage::GetCurrent().Add(button);
1573 manager.SetFocusOrder( button, 1 );
1574 manager.SetCurrentFocusActor( button );
1576 accessibilityAdaptor.HandleActionDownEvent();
1578 DALI_TEST_EQUALS( callback.GetCalls(), 1u, TEST_LOCATION );
1583 int UtcDaliAccessibilityManagerActionDownSignalN(void)
1585 ToolkitTestApplication application;
1586 tet_infoline( " UtcDaliAccessibilityManagerActionDownSignalN" );
1588 AccessibilityManagerSignalHandler callback;
1590 AccessibilityManager manager = AccessibilityManager::Get();
1591 DALI_TEST_CHECK( manager );
1593 manager.ActionDownSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
1594 DALI_TEST_EQUALS( callback.GetCalls(), 0u, TEST_LOCATION );
1599 int UtcDaliAccessibilityManagerActionClearFocusSignalP(void)
1601 ToolkitTestApplication application;
1602 tet_infoline( " UtcDaliAccessibilityManagerActionClearFocusSignalP" );
1604 AccessibilityManagerSignalHandler callback;
1606 Dali::AccessibilityAdaptor accAdaptor = Dali::AccessibilityAdaptor::Get();
1607 Test::AccessibilityAdaptor::SetEnabled( accAdaptor, true );
1608 accAdaptor.HandleActionEnableEvent();
1610 AccessibilityManager manager = AccessibilityManager::Get();
1611 DALI_TEST_CHECK( manager );
1613 manager.ActionClearFocusSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
1615 Dali::AccessibilityAdaptor accessibilityAdaptor = Dali::AccessibilityAdaptor::Get();
1616 accessibilityAdaptor.HandleActionClearFocusEvent();
1618 DALI_TEST_EQUALS( callback.GetCalls(), 1u, TEST_LOCATION );
1623 int UtcDaliAccessibilityManagerActionClearFocusSignalN(void)
1625 ToolkitTestApplication application;
1626 tet_infoline( " UtcDaliAccessibilityManagerActionClearFocusSignalN" );
1628 AccessibilityManagerSignalHandler callback;
1630 AccessibilityManager manager = AccessibilityManager::Get();
1631 DALI_TEST_CHECK( manager );
1633 manager.ActionClearFocusSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
1634 DALI_TEST_EQUALS( callback.GetCalls(), 0u, TEST_LOCATION );
1639 int UtcDaliAccessibilityManagerActionBackSignalP(void)
1641 ToolkitTestApplication application;
1642 tet_infoline( " UtcDaliAccessibilityManagerActionBackSignalP" );
1644 AccessibilityManagerSignalHandler callback;
1646 Dali::AccessibilityAdaptor accAdaptor = Dali::AccessibilityAdaptor::Get();
1647 Test::AccessibilityAdaptor::SetEnabled( accAdaptor, true );
1648 accAdaptor.HandleActionEnableEvent();
1650 AccessibilityManager manager = AccessibilityManager::Get();
1651 DALI_TEST_CHECK( manager );
1653 manager.ActionBackSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
1655 Dali::AccessibilityAdaptor accessibilityAdaptor = Dali::AccessibilityAdaptor::Get();
1656 accessibilityAdaptor.HandleActionBackEvent();
1658 DALI_TEST_EQUALS( callback.GetCalls(), 1u, TEST_LOCATION );
1663 int UtcDaliAccessibilityManagerActionBackSignalN(void)
1665 ToolkitTestApplication application;
1666 tet_infoline( " UtcDaliAccessibilityManagerActionBackSignalN" );
1668 AccessibilityManagerSignalHandler callback;
1670 AccessibilityManager manager = AccessibilityManager::Get();
1671 DALI_TEST_CHECK( manager );
1673 manager.ActionBackSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
1674 DALI_TEST_EQUALS( callback.GetCalls(), 0u, TEST_LOCATION );
1679 int UtcDaliAccessibilityManagerActionScrollUpSignalP(void)
1681 ToolkitTestApplication application;
1682 tet_infoline( " UtcDaliAccessibilityManagerActionScrollUpSignalP" );
1684 AccessibilityManagerSignalHandler callback;
1686 Dali::AccessibilityAdaptor accAdaptor = Dali::AccessibilityAdaptor::Get();
1687 Test::AccessibilityAdaptor::SetEnabled( accAdaptor, true );
1688 accAdaptor.HandleActionEnableEvent();
1690 AccessibilityManager manager = AccessibilityManager::Get();
1691 DALI_TEST_CHECK( manager );
1693 manager.ActionScrollUpSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
1695 Dali::AccessibilityAdaptor accessibilityAdaptor = Dali::AccessibilityAdaptor::Get();
1696 accessibilityAdaptor.HandleActionScrollUpEvent();
1698 DALI_TEST_EQUALS( callback.GetCalls(), 1u, TEST_LOCATION );
1703 int UtcDaliAccessibilityManagerActionScrollUpSignalN(void)
1705 ToolkitTestApplication application;
1706 tet_infoline( " UtcDaliAccessibilityManagerActionScrollUpSignalN" );
1708 AccessibilityManagerSignalHandler callback;
1710 AccessibilityManager manager = AccessibilityManager::Get();
1711 DALI_TEST_CHECK( manager );
1713 manager.ActionScrollUpSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
1714 DALI_TEST_EQUALS( callback.GetCalls(), 0u, TEST_LOCATION );
1719 int UtcDaliAccessibilityManagerActionScrollDownSignalP(void)
1721 ToolkitTestApplication application;
1722 tet_infoline( " UtcDaliAccessibilityManagerActionScrollDownSignalP" );
1724 AccessibilityManagerSignalHandler callback;
1726 Dali::AccessibilityAdaptor accAdaptor = Dali::AccessibilityAdaptor::Get();
1727 Test::AccessibilityAdaptor::SetEnabled( accAdaptor, true );
1728 accAdaptor.HandleActionEnableEvent();
1730 AccessibilityManager manager = AccessibilityManager::Get();
1731 DALI_TEST_CHECK( manager );
1733 manager.ActionScrollDownSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
1735 Dali::AccessibilityAdaptor accessibilityAdaptor = Dali::AccessibilityAdaptor::Get();
1736 accessibilityAdaptor.HandleActionScrollDownEvent();
1738 DALI_TEST_EQUALS( callback.GetCalls(), 1u, TEST_LOCATION );
1743 int UtcDaliAccessibilityManagerActionScrollDownSignalN(void)
1745 ToolkitTestApplication application;
1746 tet_infoline( " UtcDaliAccessibilityManagerActionScrollDownSignalN" );
1748 AccessibilityManagerSignalHandler callback;
1750 AccessibilityManager manager = AccessibilityManager::Get();
1751 DALI_TEST_CHECK( manager );
1753 manager.ActionScrollDownSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
1754 DALI_TEST_EQUALS( callback.GetCalls(), 0u, TEST_LOCATION );
1759 int UtcDaliAccessibilityManagerActionPageLeftSignalP(void)
1761 ToolkitTestApplication application;
1762 tet_infoline( " UtcDaliAccessibilityManagerActionPageLeftSignalP" );
1764 AccessibilityManagerSignalHandler callback;
1766 Dali::AccessibilityAdaptor accAdaptor = Dali::AccessibilityAdaptor::Get();
1767 Test::AccessibilityAdaptor::SetEnabled( accAdaptor, true );
1768 accAdaptor.HandleActionEnableEvent();
1770 AccessibilityManager manager = AccessibilityManager::Get();
1771 DALI_TEST_CHECK( manager );
1773 manager.ActionPageLeftSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
1775 Dali::AccessibilityAdaptor accessibilityAdaptor = Dali::AccessibilityAdaptor::Get();
1776 accessibilityAdaptor.HandleActionPageLeftEvent();
1778 DALI_TEST_EQUALS( callback.GetCalls(), 1u, TEST_LOCATION );
1783 int UtcDaliAccessibilityManagerActionPageLeftSignalN(void)
1785 ToolkitTestApplication application;
1786 tet_infoline( " UtcDaliAccessibilityManagerActionPageLeftSignalN" );
1788 AccessibilityManagerSignalHandler callback;
1790 AccessibilityManager manager = AccessibilityManager::Get();
1791 DALI_TEST_CHECK( manager );
1793 manager.ActionPageLeftSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
1794 DALI_TEST_EQUALS( callback.GetCalls(), 0u, TEST_LOCATION );
1799 int UtcDaliAccessibilityManagerActionPageRightSignalP(void)
1801 ToolkitTestApplication application;
1802 tet_infoline( " UtcDaliAccessibilityManagerActionPageRightSignalP" );
1804 AccessibilityManagerSignalHandler callback;
1806 Dali::AccessibilityAdaptor accAdaptor = Dali::AccessibilityAdaptor::Get();
1807 Test::AccessibilityAdaptor::SetEnabled( accAdaptor, true );
1808 accAdaptor.HandleActionEnableEvent();
1810 AccessibilityManager manager = AccessibilityManager::Get();
1811 DALI_TEST_CHECK( manager );
1813 manager.ActionPageRightSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
1815 Dali::AccessibilityAdaptor accessibilityAdaptor = Dali::AccessibilityAdaptor::Get();
1816 accessibilityAdaptor.HandleActionPageRightEvent();
1818 DALI_TEST_EQUALS( callback.GetCalls(), 1u, TEST_LOCATION );
1823 int UtcDaliAccessibilityManagerActionPageRightSignalN(void)
1825 ToolkitTestApplication application;
1826 tet_infoline( " UtcDaliAccessibilityManagerActionPageRightSignalN" );
1828 AccessibilityManagerSignalHandler callback;
1830 AccessibilityManager manager = AccessibilityManager::Get();
1831 DALI_TEST_CHECK( manager );
1833 manager.ActionPageRightSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
1834 DALI_TEST_EQUALS( callback.GetCalls(), 0u, TEST_LOCATION );
1839 int UtcDaliAccessibilityManagerActionPageUpSignalP(void)
1841 ToolkitTestApplication application;
1842 tet_infoline( " UtcDaliAccessibilityManagerActionPageUpSignalP" );
1844 AccessibilityManagerSignalHandler callback;
1846 Dali::AccessibilityAdaptor accAdaptor = Dali::AccessibilityAdaptor::Get();
1847 Test::AccessibilityAdaptor::SetEnabled( accAdaptor, true );
1848 accAdaptor.HandleActionEnableEvent();
1850 AccessibilityManager manager = AccessibilityManager::Get();
1851 DALI_TEST_CHECK( manager );
1853 manager.ActionPageUpSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
1855 Dali::AccessibilityAdaptor accessibilityAdaptor = Dali::AccessibilityAdaptor::Get();
1856 accessibilityAdaptor.HandleActionPageUpEvent();
1858 DALI_TEST_EQUALS( callback.GetCalls(), 1u, TEST_LOCATION );
1863 int UtcDaliAccessibilityManagerActionPageUpSignalN(void)
1865 ToolkitTestApplication application;
1866 tet_infoline( " UtcDaliAccessibilityManagerActionPageUpSignalN" );
1868 AccessibilityManagerSignalHandler callback;
1870 Dali::AccessibilityAdaptor accAdaptor = Dali::AccessibilityAdaptor::Get();
1871 Test::AccessibilityAdaptor::SetEnabled( accAdaptor, true );
1872 accAdaptor.HandleActionEnableEvent();
1874 AccessibilityManager manager = AccessibilityManager::Get();
1875 DALI_TEST_CHECK( manager );
1877 manager.ActionPageUpSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
1878 DALI_TEST_EQUALS( callback.GetCalls(), 0u, TEST_LOCATION );
1883 int UtcDaliAccessibilityManagerActionPageDownSignalP(void)
1885 ToolkitTestApplication application;
1886 tet_infoline( " UtcDaliAccessibilityManagerActionPageDownSignalP" );
1888 AccessibilityManagerSignalHandler callback;
1890 Dali::AccessibilityAdaptor accAdaptor = Dali::AccessibilityAdaptor::Get();
1891 Test::AccessibilityAdaptor::SetEnabled( accAdaptor, true );
1892 accAdaptor.HandleActionEnableEvent();
1894 AccessibilityManager manager = AccessibilityManager::Get();
1895 DALI_TEST_CHECK( manager );
1897 manager.ActionPageDownSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
1899 Dali::AccessibilityAdaptor accessibilityAdaptor = Dali::AccessibilityAdaptor::Get();
1900 accessibilityAdaptor.HandleActionPageDownEvent();
1902 DALI_TEST_EQUALS( callback.GetCalls(), 1u, TEST_LOCATION );
1907 int UtcDaliAccessibilityManagerActionPageDownSignalN(void)
1909 ToolkitTestApplication application;
1910 tet_infoline( " UtcDaliAccessibilityManagerActionPageDownSignalN" );
1912 AccessibilityManagerSignalHandler callback;
1914 AccessibilityManager manager = AccessibilityManager::Get();
1915 DALI_TEST_CHECK( manager );
1917 manager.ActionPageDownSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
1918 DALI_TEST_EQUALS( callback.GetCalls(), 0u, TEST_LOCATION );
1923 int UtcDaliAccessibilityManagerActionMoveToFirstSignalP(void)
1925 ToolkitTestApplication application;
1926 tet_infoline( " UtcDaliAccessibilityManagerActionMoveToFirstSignalP" );
1928 AccessibilityManagerSignalHandler callback;
1930 Dali::AccessibilityAdaptor accAdaptor = Dali::AccessibilityAdaptor::Get();
1931 Test::AccessibilityAdaptor::SetEnabled( accAdaptor, true );
1932 accAdaptor.HandleActionEnableEvent();
1934 AccessibilityManager manager = AccessibilityManager::Get();
1935 DALI_TEST_CHECK( manager );
1937 manager.ActionMoveToFirstSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
1939 Dali::AccessibilityAdaptor accessibilityAdaptor = Dali::AccessibilityAdaptor::Get();
1940 accessibilityAdaptor.HandleActionMoveToFirstEvent();
1942 DALI_TEST_EQUALS( callback.GetCalls(), 1u, TEST_LOCATION );
1948 int UtcDaliAccessibilityManagerActionMoveToFirstSignalN(void)
1950 ToolkitTestApplication application;
1951 tet_infoline( " UtcDaliAccessibilityManagerActionMoveToFirstSignalN" );
1953 AccessibilityManagerSignalHandler callback;
1955 Dali::AccessibilityAdaptor accAdaptor = Dali::AccessibilityAdaptor::Get();
1956 Test::AccessibilityAdaptor::SetEnabled( accAdaptor, true );
1957 accAdaptor.HandleActionEnableEvent();
1959 AccessibilityManager manager = AccessibilityManager::Get();
1960 DALI_TEST_CHECK( manager );
1962 manager.ActionMoveToFirstSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
1963 DALI_TEST_EQUALS( callback.GetCalls(), 0u, TEST_LOCATION );
1968 int UtcDaliAccessibilityManagerActionMoveToLastSignalP(void)
1970 ToolkitTestApplication application;
1971 tet_infoline( " UtcDaliAccessibilityManagerActionMoveToLastSignalP" );
1973 AccessibilityManagerSignalHandler callback;
1975 Dali::AccessibilityAdaptor accAdaptor = Dali::AccessibilityAdaptor::Get();
1976 Test::AccessibilityAdaptor::SetEnabled( accAdaptor, true );
1977 accAdaptor.HandleActionEnableEvent();
1979 AccessibilityManager manager = AccessibilityManager::Get();
1980 DALI_TEST_CHECK( manager );
1982 manager.ActionMoveToLastSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
1984 Dali::AccessibilityAdaptor accessibilityAdaptor = Dali::AccessibilityAdaptor::Get();
1985 accessibilityAdaptor.HandleActionMoveToLastEvent();
1987 DALI_TEST_EQUALS( callback.GetCalls(), 1u, TEST_LOCATION );
1992 int UtcDaliAccessibilityManagerActionMoveToLastSignalN(void)
1994 ToolkitTestApplication application;
1995 tet_infoline( " UtcDaliAccessibilityManagerActionMoveToLastSignalN" );
1997 AccessibilityManagerSignalHandler callback;
1999 AccessibilityManager manager = AccessibilityManager::Get();
2000 DALI_TEST_CHECK( manager );
2002 manager.ActionMoveToLastSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
2003 DALI_TEST_EQUALS( callback.GetCalls(), 0u, TEST_LOCATION );
2008 int UtcDaliAccessibilityManagerActionReadFromTopSignalP(void)
2010 ToolkitTestApplication application;
2011 tet_infoline( " UtcDaliAccessibilityManagerActionReadFromTopSignalP" );
2013 AccessibilityManagerSignalHandler callback;
2015 Dali::AccessibilityAdaptor accAdaptor = Dali::AccessibilityAdaptor::Get();
2016 Test::AccessibilityAdaptor::SetEnabled( accAdaptor, true );
2017 accAdaptor.HandleActionEnableEvent();
2019 AccessibilityManager manager = AccessibilityManager::Get();
2020 DALI_TEST_CHECK( manager );
2022 manager.ActionReadFromTopSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
2024 Dali::AccessibilityAdaptor accessibilityAdaptor = Dali::AccessibilityAdaptor::Get();
2025 accessibilityAdaptor.HandleActionReadFromTopEvent();
2027 DALI_TEST_EQUALS( callback.GetCalls(), 1u, TEST_LOCATION );
2032 int UtcDaliAccessibilityManagerActionReadFromTopSignalN(void)
2034 ToolkitTestApplication application;
2035 tet_infoline( " UtcDaliAccessibilityManagerActionReadFromTopSignalN" );
2037 AccessibilityManagerSignalHandler callback;
2039 AccessibilityManager manager = AccessibilityManager::Get();
2040 DALI_TEST_CHECK( manager );
2042 manager.ActionReadFromTopSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
2043 DALI_TEST_EQUALS( callback.GetCalls(), 0u, TEST_LOCATION );
2048 int UtcDaliAccessibilityManagerActionReadFromNextSignalP(void)
2050 ToolkitTestApplication application;
2051 tet_infoline( " UtcDaliAccessibilityManagerActionReadFromNextSignalP" );
2053 AccessibilityManagerSignalHandler callback;
2055 Dali::AccessibilityAdaptor accAdaptor = Dali::AccessibilityAdaptor::Get();
2056 Test::AccessibilityAdaptor::SetEnabled( accAdaptor, true );
2057 accAdaptor.HandleActionEnableEvent();
2059 AccessibilityManager manager = AccessibilityManager::Get();
2060 DALI_TEST_CHECK( manager );
2062 manager.ActionReadFromNextSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
2064 Dali::AccessibilityAdaptor accessibilityAdaptor = Dali::AccessibilityAdaptor::Get();
2065 accessibilityAdaptor.HandleActionReadFromNextEvent();
2067 DALI_TEST_EQUALS( callback.GetCalls(), 1u, TEST_LOCATION );
2072 int UtcDaliAccessibilityManagerActionReadFromNextSignalN(void)
2074 ToolkitTestApplication application;
2075 tet_infoline( " UtcDaliAccessibilityManagerActionReadFromNextSignalN" );
2077 AccessibilityManagerSignalHandler callback;
2079 AccessibilityManager manager = AccessibilityManager::Get();
2080 DALI_TEST_CHECK( manager );
2082 manager.ActionReadFromNextSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
2083 DALI_TEST_EQUALS( callback.GetCalls(), 0u, TEST_LOCATION );
2088 int UtcDaliAccessibilityManagerActionZoomSignalP(void)
2090 ToolkitTestApplication application;
2091 tet_infoline( " UtcDaliAccessibilityManagerActionZoomSignalP" );
2093 AccessibilityManagerSignalHandler callback;
2095 AccessibilityManager manager = AccessibilityManager::Get();
2096 DALI_TEST_CHECK( manager );
2098 Dali::Toolkit::PushButton button = Dali::Toolkit::PushButton::New();
2099 button.SetSize(480, 800);
2100 Stage::GetCurrent().Add(button);
2101 manager.SetFocusOrder( button, 1 );
2102 manager.SetCurrentFocusActor( button );
2104 Dali::AccessibilityAdaptor accAdaptor = Dali::AccessibilityAdaptor::Get();
2105 Test::AccessibilityAdaptor::SetEnabled( accAdaptor, true );
2106 accAdaptor.HandleActionEnableEvent();
2108 manager.ActionZoomSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
2110 Dali::AccessibilityAdaptor accessibilityAdaptor = Dali::AccessibilityAdaptor::Get();
2111 accessibilityAdaptor.HandleActionZoomEvent();
2113 DALI_TEST_EQUALS( callback.GetCalls(), 1u, TEST_LOCATION );
2118 int UtcDaliAccessibilityManagerActionZoomSignalN(void)
2120 ToolkitTestApplication application;
2121 tet_infoline( " UtcDaliAccessibilityManagerActionZoomSignalN" );
2123 AccessibilityManagerSignalHandler callback;
2125 AccessibilityManager manager = AccessibilityManager::Get();
2126 DALI_TEST_CHECK( manager );
2128 manager.ActionZoomSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
2129 DALI_TEST_EQUALS( callback.GetCalls(), 0u, TEST_LOCATION );
2134 int UtcDaliAccessibilityManagerActionReadIndicatorInformationSignalP(void)
2136 ToolkitTestApplication application;
2137 tet_infoline( " UtcDaliAccessibilityManagerActionReadIndicatorInformationSignalP" );
2139 AccessibilityManagerSignalHandler callback;
2141 Dali::AccessibilityAdaptor accAdaptor = Dali::AccessibilityAdaptor::Get();
2142 Test::AccessibilityAdaptor::SetEnabled( accAdaptor, true );
2143 accAdaptor.HandleActionEnableEvent();
2145 AccessibilityManager manager = AccessibilityManager::Get();
2146 DALI_TEST_CHECK( manager );
2148 manager.ActionReadIndicatorInformationSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
2150 Dali::AccessibilityAdaptor accessibilityAdaptor = Dali::AccessibilityAdaptor::Get();
2151 accessibilityAdaptor.HandleActionReadIndicatorInformationEvent();
2153 DALI_TEST_EQUALS( callback.GetCalls(), 1u, TEST_LOCATION );
2158 int UtcDaliAccessibilityManagerActionReadIndicatorInformationSignalN(void)
2160 ToolkitTestApplication application;
2161 tet_infoline( " UtcDaliAccessibilityManagerActionReadIndicatorInformationSignalN" );
2163 AccessibilityManagerSignalHandler callback;
2165 AccessibilityManager manager = AccessibilityManager::Get();
2166 DALI_TEST_CHECK( manager );
2168 manager.ActionReadIndicatorInformationSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
2169 DALI_TEST_EQUALS( callback.GetCalls(), 0u, TEST_LOCATION );
2174 int UtcDaliAccessibilityManagerActionReadPauseResumeSignalP(void)
2176 ToolkitTestApplication application;
2177 tet_infoline( " UtcDaliAccessibilityManagerActionReadPauseResumeSignalP" );
2179 AccessibilityManagerSignalHandler callback;
2181 Dali::AccessibilityAdaptor accAdaptor = Dali::AccessibilityAdaptor::Get();
2182 Test::AccessibilityAdaptor::SetEnabled( accAdaptor, true );
2183 accAdaptor.HandleActionEnableEvent();
2185 AccessibilityManager manager = AccessibilityManager::Get();
2186 DALI_TEST_CHECK( manager );
2188 manager.ActionReadPauseResumeSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
2190 Dali::AccessibilityAdaptor accessibilityAdaptor = Dali::AccessibilityAdaptor::Get();
2191 accessibilityAdaptor.HandleActionReadPauseResumeEvent();
2193 DALI_TEST_EQUALS( callback.GetCalls(), 1u, TEST_LOCATION );
2198 int UtcDaliAccessibilityManagerActionReadPauseResumeSignalN(void)
2200 ToolkitTestApplication application;
2201 tet_infoline( " UtcDaliAccessibilityManagerActionReadPauseResumeSignalN" );
2203 AccessibilityManagerSignalHandler callback;
2205 AccessibilityManager manager = AccessibilityManager::Get();
2206 DALI_TEST_CHECK( manager );
2208 manager.ActionReadPauseResumeSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
2209 DALI_TEST_EQUALS( callback.GetCalls(), 0u, TEST_LOCATION );
2214 int UtcDaliAccessibilityManagerActionStartStopSignalP(void)
2216 ToolkitTestApplication application;
2217 tet_infoline( " UtcDaliAccessibilityManagerActionStartStopSignalP" );
2219 AccessibilityManagerSignalHandler callback;
2221 AccessibilityManager manager = AccessibilityManager::Get();
2222 DALI_TEST_CHECK( manager );
2224 manager.ActionStartStopSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
2226 Dali::AccessibilityAdaptor accessibilityAdaptor = Dali::AccessibilityAdaptor::Get();
2227 accessibilityAdaptor.HandleActionStartStopEvent();
2229 DALI_TEST_EQUALS( callback.GetCalls(), 1u, TEST_LOCATION );
2234 int UtcDaliAccessibilityManagerActionStartStopSignalN(void)
2236 ToolkitTestApplication application;
2237 tet_infoline( " UtcDaliAccessibilityManagerActionStartStopSignalN" );
2239 AccessibilityManagerSignalHandler callback;
2241 AccessibilityManager manager = AccessibilityManager::Get();
2242 DALI_TEST_CHECK( manager );
2244 manager.ActionStartStopSignal().Connect( &callback, &AccessibilityManagerSignalHandler::Callback );
2245 DALI_TEST_EQUALS( callback.GetCalls(), 0u, TEST_LOCATION );
2250 // Functor to test if a accessibility scroll signal has been called.
2251 class AccessibilityManagerScrollSignalHandler : public Dali::ConnectionTracker
2254 AccessibilityManagerScrollSignalHandler() :
2259 bool Callback( AccessibilityManager& accessibilityManager, const Dali::TouchEvent& touchEvent )
2262 mTouchEvent = touchEvent;
2263 tet_infoline( "Signal called" );
2267 unsigned int GetCalls() const
2272 const Dali::TouchEvent& GetTouchEvent() const
2278 unsigned int mCalls; ///< Keeps track of how many times the signal has been called.
2279 Dali::TouchEvent mTouchEvent; ///< Stores the last touch event received.
2282 int UtcDaliAccessibilityManagerActionScrollSignalP(void)
2284 ToolkitTestApplication application;
2285 tet_infoline( " UtcDaliAccessibilityManagerActionScrollSignalP" );
2287 AccessibilityManagerScrollSignalHandler callback;
2289 AccessibilityManager manager = AccessibilityManager::Get();
2290 DALI_TEST_CHECK( manager );
2292 manager.ActionScrollSignal().Connect( &callback, &AccessibilityManagerScrollSignalHandler::Callback );
2294 Dali::AccessibilityAdaptor accessibilityAdaptor = Dali::AccessibilityAdaptor::Get();
2296 TouchPoint point( 0, TouchPoint::Started, 100.0f, 200.0f );
2297 accessibilityAdaptor.HandleActionScrollEvent( point, 0u );
2299 DALI_TEST_EQUALS( callback.GetCalls(), 1u, TEST_LOCATION );
2301 const TouchEvent& signalTouchEvent = callback.GetTouchEvent();
2302 DALI_TEST_EQUALS( signalTouchEvent.GetPointCount(), 1u, TEST_LOCATION );
2304 const TouchPoint& signalTouchPoint = signalTouchEvent.GetPoint( 0u );
2306 DALI_TEST_EQUALS( signalTouchPoint.state, TouchPoint::Started, TEST_LOCATION );
2307 DALI_TEST_EQUALS( signalTouchPoint.screen.x, 100.0f, TEST_LOCATION );
2308 DALI_TEST_EQUALS( signalTouchPoint.screen.y, 200.0f, TEST_LOCATION );
2313 int UtcDaliAccessibilityManagerActionScrollSignalN(void)
2315 ToolkitTestApplication application;
2316 tet_infoline( " UtcDaliAccessibilityManagerActionScrollSignalN" );
2318 AccessibilityManagerScrollSignalHandler callback;
2320 AccessibilityManager manager = AccessibilityManager::Get();
2321 DALI_TEST_CHECK( manager );
2323 manager.ActionScrollSignal().Connect( &callback, &AccessibilityManagerScrollSignalHandler::Callback );
2325 DALI_TEST_EQUALS( callback.GetCalls(), 0u, TEST_LOCATION );
2330 int UtcDaliAccessibilityManagerActionTouch(void)
2332 ToolkitTestApplication application;
2333 tet_infoline( " UtcDaliAccessibilityManagerActionTouch" );
2335 AccessibilityManager manager = AccessibilityManager::Get();
2336 DALI_TEST_CHECK( manager );
2338 Dali::AccessibilityAdaptor accessibilityAdaptor = Dali::AccessibilityAdaptor::Get();
2340 DummyControl dummyControl = DummyControl::New(true);
2341 DummyControlImplOverride& dummyImpl = static_cast<DummyControlImplOverride&>(dummyControl.GetImplementation());
2342 dummyControl.SetSize(480, 800);
2343 manager.SetFocusOrder( dummyControl, 1 );
2344 Stage::GetCurrent().Add( dummyControl );
2345 manager.SetCurrentFocusActor( dummyControl );
2347 TouchPoint point( 0, TouchPoint::Started, 100.0f, 200.0f );
2348 accessibilityAdaptor.HandleActionTouchEvent( point, 0u );
2350 DALI_TEST_CHECK( dummyImpl.onAccTouchedCalled );
2356 int UtcDaliAccessibilityManagerHandlePanGesture(void)
2358 // Pan gesture sent from adaptor to manager via AccessibilityGestureHandler
2359 // Adaptor.SetGestureHandler is called in Initialize (check it's the toolkit version)
2360 ToolkitTestApplication application;
2361 tet_infoline( " UtcDaliAccessibilityManagerHandlePanGesture" );
2363 AccessibilityManager manager = AccessibilityManager::Get();
2364 DALI_TEST_CHECK( manager );
2366 Dali::AccessibilityAdaptor accessibilityAdaptor = Dali::AccessibilityAdaptor::Get();
2367 DummyControl dummyControl = DummyControl::New(true);
2368 dummyControl.SetSize(480, 800);
2369 Stage::GetCurrent().Add( dummyControl );
2371 Dali::Integration::PanGestureEvent panGestureEvent(Gesture::Started);
2372 panGestureEvent.previousPosition = Vector2(0.f, 0.f);
2373 panGestureEvent.currentPosition = Vector2(100.f, 0.f);
2374 panGestureEvent.timeDelta = 16;
2375 panGestureEvent.numberOfTouches = 1;
2377 Test::AccessibilityAdaptor::SendPanGesture( accessibilityAdaptor, panGestureEvent );
2379 panGestureEvent.state = Gesture::Continuing;
2380 panGestureEvent.previousPosition = Vector2(100.f, 0.f);
2381 panGestureEvent.currentPosition = Vector2(200.f, 0.f);
2382 Test::AccessibilityAdaptor::SendPanGesture( accessibilityAdaptor, panGestureEvent );
2384 panGestureEvent.state = Gesture::Finished;
2385 panGestureEvent.previousPosition = Vector2(200.f, 0.f);
2386 panGestureEvent.currentPosition = Vector2(300.f, 0.f);
2387 Test::AccessibilityAdaptor::SendPanGesture( accessibilityAdaptor, panGestureEvent );
2393 // Methods missing coverage:
2394 // IsActorFocusableFunction