RowScanner ereses frame as soon as scanning is completed. 48/159548/4
authorPawel Kurowski <p.kurowski2@samsung.com>
Thu, 9 Nov 2017 14:35:31 +0000 (15:35 +0100)
committerLukasz Oleksak <l.oleksak@samsung.com>
Sat, 18 Nov 2017 12:58:27 +0000 (12:58 +0000)
Minor fix: removed unnecessary sound feedback in RowScanner

Change-Id: I4e5d63bb8e9f8977f9cf36b0977c60b57a6351e7

src/MenuBuilder.cpp
src/RowScanner.cpp

index 8223bc6..6f87f6a 100644 (file)
@@ -260,6 +260,12 @@ NavigateToSuperMenu MenuImplementation::getNavigateToSuperMenu()
        return navigateToSuperMenu;
 }
 
+/**
+ * TODO:
+ * Items that which ultimately lead to menu replacement shouldn't have RepetitionPolicy::multiple,
+ * this issue will be addressed in different patch
+ */
+
 MenuBuilderImplementation::MenuBuilderImplementation()
 {
        const std::string defaultImg = ICONS_DIR "/tizen.png";
index 0399e73..b76ae66 100644 (file)
@@ -168,7 +168,6 @@ RowScannerImpl::RowScannerImpl(const ScanningProperties &properties)
 RowScannerImpl::~RowScannerImpl()
 {
        stopScanning();
-       eraseFrame();
 }
 
 void RowScannerImpl::boxMoved(Rectangle dimensions, NavigationInterface::BoxPositionMode mode)
@@ -217,11 +216,8 @@ void RowScannerImpl::acceptAutoscanningPhase(std::function<void(Optional<std::sh
                }
                DEBUG("Single element row");
                Singleton<UniversalSwitch>::instance().getNavigationInterface()->nextElementInRow();
-       // continue as case ITEMS
+               break;
        case State::ITEMS:
-               state = State::END;
-               playFeedback();
-               DEBUG("Scanning complete");
                break;
        case State::END:
                state = State::ITEMS;
@@ -233,9 +229,7 @@ void RowScannerImpl::acceptAutoscanningPhase(std::function<void(Optional<std::sh
        DEBUG("Scanning complete");
        auto elem = Singleton<UniversalSwitch>::instance().getNavigationInterface()->getCurrentElement();
        stopScanning();
-       if (!elem) callback({});
-       else callback(std::make_shared<UIElement>(std::move(elem)));
-       return;
+       callback(elem ? std::make_shared<UIElement>(std::move(elem)) : Optional<std::shared_ptr<UIElement>>());
 }
 
 void RowScannerImpl::next()
@@ -283,6 +277,7 @@ void RowScannerImpl::startScanning(bool continueScanning)
 void RowScannerImpl::stopScanning()
 {
        timer.reset();
+       eraseFrame();
 }
 
 bool RowScannerImpl::tryResetState()