diff options
author | 2016-06-03 08:47:23 -0700 | |
---|---|---|
committer | 2016-06-03 08:47:24 -0700 | |
commit | b73c24b01a411843a98d4ccab7a39341d927e7fd (patch) | |
tree | 26867a3f082b22f41be97c46143878a0204f886c /tools/viewer/sk_app/CommandSet.cpp | |
parent | 5cebf8c82dfe3fc4110944f0db03d7fc85b7142a (diff) |
Add Softkey UIState to Viewer
We can use this to simulate any key/command on Android UI.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2035923002
Review-Url: https://codereview.chromium.org/2035923002
Diffstat (limited to 'tools/viewer/sk_app/CommandSet.cpp')
-rw-r--r-- | tools/viewer/sk_app/CommandSet.cpp | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/tools/viewer/sk_app/CommandSet.cpp b/tools/viewer/sk_app/CommandSet.cpp index e426eaab21..4805e6aafe 100644 --- a/tools/viewer/sk_app/CommandSet.cpp +++ b/tools/viewer/sk_app/CommandSet.cpp @@ -71,6 +71,16 @@ bool CommandSet::onChar(SkUnichar c, uint32_t modifiers) { return false; } +bool CommandSet::onSoftkey(const SkString& softkey) { + for (const Command& cmd : fCommands) { + if (cmd.getSoftkeyString().equals(softkey)) { + cmd.fFunction(); + return true; + } + } + return false; +} + void CommandSet::addCommand(SkUnichar c, const char* group, const char* description, std::function<void(void)> function) { fCommands.push_back(Command(c, group, description, function)); @@ -154,4 +164,12 @@ void CommandSet::drawHelp(SkCanvas* canvas) { } } +std::vector<SkString> CommandSet::getCommandsAsSoftkeys() const { + std::vector<SkString> result; + for(const Command& command : fCommands) { + result.push_back(command.getSoftkeyString()); + } + return result; +} + } // namespace sk_app |