mirror of
https://github.com/UpsilonNumworks/Upsilon.git
synced 2026-01-18 16:27:34 +01:00
[apps/home] Avoid selecting unvisible app cell
Change-Id: I2fd3d1f329750e73d60c8f9cee87cba229730afe
This commit is contained in:
@@ -9,7 +9,7 @@ namespace Home {
|
||||
Controller::Controller(Responder * parentResponder, ::AppsContainer * container) :
|
||||
ViewController(parentResponder),
|
||||
m_container(container),
|
||||
m_selectableTableView(SelectableTableView(this, this))
|
||||
m_selectableTableView(SelectableTableView(this, this, 0, 0, 0, 0, this))
|
||||
{
|
||||
}
|
||||
|
||||
@@ -75,4 +75,11 @@ int Controller::numberOfIcons() {
|
||||
return m_container->numberOfApps() - 1;
|
||||
}
|
||||
|
||||
void Controller::tableViewDidChangeSelection(SelectableTableView * t, int previousSelectedCellX, int previousSelectedCellY) {
|
||||
int appIndex = (t->selectedRow()*k_numberOfColumns+t->selectedColumn())+1;
|
||||
if (appIndex >= m_container->numberOfApps()) {
|
||||
t->selectCellAtLocation(previousSelectedCellX, previousSelectedCellY);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -8,7 +8,7 @@ class AppsContainer;
|
||||
|
||||
namespace Home {
|
||||
|
||||
class Controller : public ViewController, public SimpleTableViewDataSource {
|
||||
class Controller : public ViewController, public SimpleTableViewDataSource, public SelectableTableViewDelegate {
|
||||
public:
|
||||
Controller(Responder * parentResponder, ::AppsContainer * container);
|
||||
|
||||
@@ -24,6 +24,7 @@ public:
|
||||
virtual TableViewCell * reusableCell(int index) override;
|
||||
virtual int reusableCellCount() override;
|
||||
void willDisplayCellAtLocation(TableViewCell * cell, int i, int j) override;
|
||||
void tableViewDidChangeSelection(SelectableTableView * t, int previousSelectedCellX, int previousSelectedCellY) override;
|
||||
private:
|
||||
int numberOfIcons();
|
||||
AppsContainer * m_container;
|
||||
|
||||
Reference in New Issue
Block a user