MCPcopy Create free account
hub / github.com/SFML/SFML / androidScanToSF

Method androidScanToSF

src/SFML/Window/Android/WindowImplAndroid.cpp:727–842  ·  view source on GitHub ↗

///////////////////////////////////////////////////////

Source from the content-addressed store, hash-verified

725
726////////////////////////////////////////////////////////////
727Keyboard::Scancode WindowImplAndroid::androidScanToSF(std::int32_t key)
728{
729 // Referencing https://android.googlesource.com/platform/frameworks/base/+/cd92588/data/keyboards/Generic.kl
730 // as the best source for how to map an android scancode to SFML
731 // clang-format off
732 switch (key)
733 {
734 case 1: return Keyboard::Scan::Escape;
735 case 2: return Keyboard::Scan::Num1;
736 case 3: return Keyboard::Scan::Num2;
737 case 4: return Keyboard::Scan::Num3;
738 case 5: return Keyboard::Scan::Num4;
739 case 6: return Keyboard::Scan::Num5;
740 case 7: return Keyboard::Scan::Num6;
741 case 8: return Keyboard::Scan::Num7;
742 case 9: return Keyboard::Scan::Num8;
743 case 10: return Keyboard::Scan::Num9;
744 case 11: return Keyboard::Scan::Num0;
745 case 12: return Keyboard::Scan::Hyphen;
746 case 13: return Keyboard::Scan::Equal;
747 case 14: return Keyboard::Scan::Backspace;
748 case 15: return Keyboard::Scan::Tab;
749 case 16: return Keyboard::Scan::Q;
750 case 17: return Keyboard::Scan::W;
751 case 18: return Keyboard::Scan::E;
752 case 19: return Keyboard::Scan::R;
753 case 20: return Keyboard::Scan::T;
754 case 21: return Keyboard::Scan::Y;
755 case 22: return Keyboard::Scan::U;
756 case 23: return Keyboard::Scan::I;
757 case 24: return Keyboard::Scan::O;
758 case 25: return Keyboard::Scan::P;
759 case 26: return Keyboard::Scan::LBracket;
760 case 27: return Keyboard::Scan::RBracket;
761 case 28: return Keyboard::Scan::Enter;
762 case 29: return Keyboard::Scan::LControl;
763 case 30: return Keyboard::Scan::A;
764 case 31: return Keyboard::Scan::S;
765 case 32: return Keyboard::Scan::D;
766 case 33: return Keyboard::Scan::F;
767 case 34: return Keyboard::Scan::G;
768 case 35: return Keyboard::Scan::H;
769 case 36: return Keyboard::Scan::J;
770 case 37: return Keyboard::Scan::K;
771 case 38: return Keyboard::Scan::L;
772 case 39: return Keyboard::Scan::Semicolon;
773 case 40: return Keyboard::Scan::Apostrophe;
774 case 41: return Keyboard::Scan::Grave;
775 case 42: return Keyboard::Scan::LShift;
776 case 43: return Keyboard::Scan::Backslash;
777 case 44: return Keyboard::Scan::Z;
778 case 45: return Keyboard::Scan::X;
779 case 46: return Keyboard::Scan::C;
780 case 47: return Keyboard::Scan::V;
781 case 48: return Keyboard::Scan::B;
782 case 49: return Keyboard::Scan::N;
783 case 50: return Keyboard::Scan::M;
784 case 51: return Keyboard::Scan::Comma;

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected