Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

accept an initialized ShiftRegisterKeys #39

Merged
merged 2 commits into from
Nov 13, 2024

Conversation

FoamyGuy
Copy link
Contributor

@ladyada

Resolves: #35

Allowing the user code to init the ShiftRegisterKeys and pass it in makes it so that you could have some menus within a program that use the Cursor and other parts of the program that do not use Cursor but still want to be able to check for button presses. i.e. a game where the menu uses Cursor and the game itself uses the DPad and buttons to control the character as well.

@ladyada
Copy link
Member

ladyada commented Nov 13, 2024

cc @tekktrik

Copy link
Member

@tekktrik tekktrik left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is great, thank you! One small type annotation correction.

adafruit_cursorcontrol/cursorcontrol_cursormanager.py Outdated Show resolved Hide resolved
Copy link
Member

@tekktrik tekktrik left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Excellent, thanks!

@FoamyGuy FoamyGuy merged commit 2704c15 into adafruit:main Nov 13, 2024
1 check passed
adafruit-adabot added a commit to adafruit/Adafruit_CircuitPython_Bundle that referenced this pull request Nov 14, 2024
Updating https://github.com/adafruit/Adafruit_CircuitPython_BNO055 to 5.4.15 from 5.4.14:
  > Merge pull request adafruit/Adafruit_CircuitPython_BNO055#127 from FoamyGuy/fix_accel_doc_unit

Updating https://github.com/adafruit/Adafruit_CircuitPython_CircuitPlayground to 5.3.6 from 5.3.5:
  > Merge pull request adafruit/Adafruit_CircuitPython_CircuitPlayground#128 from FoamyGuy/fix_samples_typo

Updating https://github.com/adafruit/Adafruit_CircuitPython_CLUE to 3.2.0 from 3.1.2:
  > Merge pull request adafruit/Adafruit_CircuitPython_CLUE#64 from FoamyGuy/iterable_touch

Updating https://github.com/adafruit/Adafruit_CircuitPython_Colorsys to 3.0.0 from 2.0.18:
  > Merge pull request adafruit/Adafruit_CircuitPython_Colorsys#30 from FoamyGuy/match_cpython

Updating https://github.com/adafruit/Adafruit_CircuitPython_CursorControl to 2.9.0 from 2.8.2:
  > Merge pull request adafruit/Adafruit_CircuitPython_CursorControl#39 from FoamyGuy/allow_reuse_shiftregisterkeys

Updating https://github.com/adafruit/Adafruit_CircuitPython_Display_Button to 1.9.3 from 1.9.2:
  > Merge pull request adafruit/Adafruit_CircuitPython_Display_Button#46 from FoamyGuy/fix_null_label_issue

Updating https://github.com/adafruit/Adafruit_CircuitPython_Bundle/circuitpython_library_list.md to NA from NA:
  > Added the following libraries: Adafruit_CircuitPython_Register, Adafruit_CircuitPython_BusDevice, Adafruit_CircuitPython_SimpleIO, Adafruit_CircuitPython_MCP9808, Adafruit_CircuitPython_Thermistor, Adafruit_CircuitPython_MPR121, Adafruit_CircuitPython_SI7021, Adafruit_CircuitPython_MAX31855, Adafruit_CircuitPython_BNO055, Adafruit_CircuitPython_LIS3DH, Adafruit_CircuitPython_HID, Adafruit_CircuitPython_PCA9685, Adafruit_CircuitPython_HT16K33, Adafruit_CircuitPython_RGB_Display, Adafruit_CircuitPython_NeoPixel, Adafruit_CircuitPython_SSD1306, Adafruit_CircuitPython_PCF8523, Adafruit_CircuitPython_IS31FL3731, Adafruit_CircuitPython_RTTTL, Adafruit_CircuitPython_Waveform, Adafruit_CircuitPython_DotStar, Adafruit_CircuitPython_CircuitPlayground, Adafruit_CircuitPython_SD, Adafruit_CircuitPython_DS3231, Adafruit_CircuitPython_MAX7219, Adafruit_CircuitPython_DHT, Adafruit_CircuitPython_CCS811, Adafruit_CircuitPython_BMP280, Adafruit_CircuitPython_BME280, Adafruit_CircuitPython_BME680, Adafruit_CircuitPython_TSL2561, Adafruit_CircuitPython_ADS1x15, Adafruit_CircuitPython_GPS, Adafruit_CircuitPython_VC0706, Adafruit_CircuitPython_CharLCD, Adafruit_CircuitPython_AMG88xx, Adafruit_CircuitPython_Seesaw, Adafruit_CircuitPython_Fingerprint, Adafruit_CircuitPython_MAX31865, Adafruit_CircuitPython_INA219, Adafruit_CircuitPython_DS1307, Adafruit_CircuitPython_IRRemote, Adafruit_CircuitPython_FXOS8700, Adafruit_CircuitPython_VCNL4010, Adafruit_CircuitPython_DRV2605, Adafruit_CircuitPython_TCS34725, Adafruit_CircuitPython_LSM9DS0, Adafruit_CircuitPython_LSM9DS1, Adafruit_CircuitPython_FXAS21002C, Adafruit_CircuitPython_VL53L0X, Adafruit_CircuitPython_APDS9960, Adafruit_CircuitPython_FeatherWing, Adafruit_CircuitPython_Motor, Adafruit_CircuitPython_AVRprog, Adafruit_CircuitPython_SGP30, Adafruit_CircuitPython_OneWire, Adafruit_CircuitPython_VL6180X, Adafruit_CircuitPython_DS2413, Adafruit_CircuitPython_RFM69, Adafruit_CircuitPython_VEML6070, Adafruit_CircuitPython_FancyLED, Adafruit_CircuitPython_TSL2591, Adafruit_CircuitPython_MCP4725, Adafruit_CircuitPython_MAX9744, Adafruit_CircuitPython_TLC59711, Adafruit_CircuitPython_TLC5947, Adafruit_CircuitPython_MMA8451, Adafruit_CircuitPython_SI5351, Adafruit_CircuitPython_SHT31D, Adafruit_CircuitPython_SI4713, Adafruit_CircuitPython_MPL3115A2, Adafruit_CircuitPython_DS18X20, Adafruit_CircuitPython_RFM9x, Adafruit_CircuitPython_AM2320, Adafruit_CircuitPython_MCP230xx, Adafruit_CircuitPython_Trellis, Adafruit_CircuitPython_WS2801, Adafruit_CircuitPython_FocalTouch, Adafruit_CircuitPython_AS726x, Adafruit_CircuitPython_STMPE610, Adafruit_CircuitPython_MatrixKeypad, Adafruit_CircuitPython_L3GD20, Adafruit_CircuitPython_Crickit, Adafruit_CircuitPython_Pixie, Adafruit_CircuitPython_EPD, Adafruit_CircuitPython_NeoTrellis, Adafruit_CircuitPython_TMP007, Adafruit_CircuitPython_TCA9548A, Adafruit_CircuitPython_MCP3xxx, Adafruit_CircuitPython_LED_Animation, Adafruit_CircuitPython_MLX90614, Adafruit_CircuitPython_PN532, Adafruit_CircuitPython_ImageLoad, Adafruit_CircuitPython_HCSR04, Adafruit_CircuitPython_MPRLS, Adafruit_CircuitPython_VEML6075, Adafruit_CircuitPython_miniQR, Adafruit_CircuitPython_HTU21D, Adafruit_CircuitPython_LIDARLite, Adafruit_CircuitPython_Slideshow, Adafruit_CircuitPython_CAP1188, Adafruit_CircuitPython_MAX31856, Adafruit_CircuitPython_ADXL34x, Adafruit_CircuitPython_TrellisM4, Adafruit_CircuitPython_TFmini, Adafruit_CircuitPython_VS1053, Adafruit_CircuitPython_FRAM, Adafruit_CircuitPython_MLX90393, Adafruit_CircuitPython_BluefruitSPI, Adafruit_CircuitPython_BMP3XX, Adafruit_CircuitPython_MPL115A2, Adafruit_CircuitPython_74HC595, Adafruit_CircuitPython_TMP006, Adafruit_CircuitPython_TinyLoRa, Adafruit_CircuitPython_MotorKit, Adafruit_CircuitPython_ESP_ATcontrol, Adafruit_CircuitPython_miniesptool, Adafruit_CircuitPython_framebuf, Adafruit_CircuitPython_SharpMemoryDisplay, Adafruit_CircuitPython_PCD8544, Adafruit_CircuitPython_US100, Adafruit_CircuitPython_ServoKit, Adafruit_CircuitPython_Debouncer, Adafruit_CircuitPython_ADT7410, Adafruit_CircuitPython_BoardTest, Adafruit_CircuitPython_BLE, Adafruit_CircuitPython_BluefruitConnect, Adafruit_CircuitPython_MIDI, Adafruit_CircuitPython_RA8875, Adafruit_CircuitPython_ESP32SPI, Adafruit_CircuitPython_Touchscreen, Adafruit_CircuitPython_Display_Text, Adafruit_CircuitPython_binascii, Adafruit_CircuitPython_Bitmap_Font, Adafruit_CircuitPython_PyPortal, Adafruit_CircuitPython_INA260, Adafruit_CircuitPython_Logging, Adafruit_CircuitPython_AdafruitIO, Adafruit_CircuitPython_TPA2016, Adafruit_CircuitPython_Display_Button, Adafruit_CircuitPython_Display_Shapes, Adafruit_CircuitPython_VEML7700, Adafruit_CircuitPython_DymoScale, Adafruit_CircuitPython_IterTools, Adafruit_CircuitPython_LIFX, Adafruit_CircuitPython_Hue, Adafruit_CircuitPython_LPS35HW, Adafruit_CircuitPython_ILI9341, Adafruit_CircuitPython_ST7735R, Adafruit_CircuitPython_ST7735, Adafruit_CircuitPython_HX8357, Adafruit_CircuitPython_SSD1351, Adafruit_CircuitPython_SSD1331, Adafruit_CircuitPython_ST7789, Adafruit_CircuitPython_AzureIoT, Adafruit_CircuitPython_BD3491FS, Adafruit_CircuitPython_DS3502, Adafruit_CircuitPython_RGBLED, Adafruit_CircuitPython_PYOA, Adafruit_CircuitPython_turtle, Adafruit_CircuitPython_VCNL4040, Adafruit_CircuitPython_CursorControl, Adafruit_CircuitPython_PyBadger, Adafruit_CircuitPython_MiniMQTT, Adafruit_CircuitPython_Nunchuk, Adafruit_CircuitPython_Requests, Adafruit_CircuitPython_DisplayIO_SSD1306, Adafruit_CircuitPython_SSD1322, Adafruit_CircuitPython_SSD1325, Adafruit_CircuitPython_SSD1327, Adafruit_CircuitPython_hashlib, Adafruit_CircuitPython_RSA, Adafruit_CircuitPython_NTP, Adafruit_CircuitPython_JWT, Adafruit_CircuitPython_GC_IOT_Core, Adafruit_CircuitPython_PCT2075, Adafruit_CircuitPython_TLV493D, Adafruit_CircuitPython_BitmapSaver, Adafruit_CircuitPython_IL91874, Adafruit_CircuitPython_IL0373, Adafruit_CircuitPython_IL0398, Adafruit_CircuitPython_SSD1608, Adafruit_CircuitPython_SSD1675, Adafruit_CircuitPython_MSA301, Adafruit_CircuitPython_ATECC, Adafruit_CircuitPython_AWS_IOT, Adafruit_CircuitPython_LSM303_Accel, Adafruit_CircuitPython_LSM303DLH_Mag, Adafruit_CircuitPython_MPU6050, Adafruit_CircuitPython_MCP9600, Adafruit_CircuitPython_Gizmo, Adafruit_CircuitPython_DisplayIO_SSD1305, Adafruit_CircuitPython_SSD1305, Adafruit_CircuitPython_RPLIDAR, Adafruit_CircuitPython_NeoPixel_SPI, Adafruit_CircuitPython_MLX90640, Adafruit_CircuitPython_LSM6DS, Adafruit_CircuitPython_MCP4728, Adafruit_CircuitPython_BLE_Apple_Notification_Center, Adafruit_CircuitPython_BLE_Magic_Light, Adafruit_CircuitPython_Display_Notification, Adafruit_CircuitPython_LIS2MDL, Adafruit_CircuitPython_LIS3MDL, Adafruit_CircuitPython_BLE_Apple_Media, Adafruit_CircuitPython_DPS310, Adafruit_CircuitPython_CLUE, Adafruit_CircuitPython_BLE_Heart_Rate, Adafruit_CircuitPython_BLE_Cycling_Speed_and_Cadence, Adafruit_CircuitPython_LPS2X, Adafruit_CircuitPython_BLE_Eddystone, Adafruit_CircuitPython_HTS221, Adafruit_CircuitPython_BLE_BroadcastNet, Adafruit_CircuitPython_Debug_I2C, Adafruit_CircuitPython_WSGI, Adafruit_CircuitPython_ProgressBar, Adafruit_CircuitPython_Wiznet5k, Adafruit_CircuitPython_RockBlock, Adafruit_CircuitPython_DS1841, Adafruit_CircuitPython_BLE_Radio, Adafruit_CircuitPython_BLE_iBBQ, Adafruit_CircuitPython_BLE_MIDI, Adafruit_CircuitPython_BitbangIO, Adafruit_CircuitPython_BLE_BerryMed_Pulse_Oximeter, Adafruit_CircuitPython_FONA, Adafruit_CircuitPython_LIS331, Adafruit_CircuitPython_BLE_Adafruit, Adafruit_CircuitPython_ICM20X, Adafruit_CircuitPython_PM25, Adafruit_CircuitPython_AHTx0, Adafruit_CircuitPython_SHTC3, Adafruit_CircuitPython_PCF8591, Adafruit_CircuitPython_BH1750, Adafruit_CircuitPython_AS7341, Adafruit_CircuitPython_MS8607, Adafruit_CircuitPython_MatrixPortal, Adafruit_CircuitPython_TC74, Adafruit_CircuitPython_Pixel_Framebuf, Adafruit_CircuitPython_BNO08X_RVC, Adafruit_CircuitPython_AirLift, Adafruit_CircuitPython_BNO08X, Adafruit_CircuitPython_DisplayIO_SH1107, Adafruit_CircuitPython_TLA202X, Adafruit_CircuitPython_LC709203F, Adafruit_CircuitPython_EMC2101, Adafruit_CircuitPython_MONSTERM4SK, Adafruit_CircuitPython_TMP117, Adafruit_CircuitPython_MagTag, Adafruit_CircuitPython_MLX90395, Adafruit_CircuitPython_FakeRequests, Adafruit_CircuitPython_PortalBase, Adafruit_CircuitPython_SCD30, Adafruit_CircuitPython_LTR390, Adafruit_CircuitPython_SGP40, Adafruit_CircuitPython_OAuth2, Adafruit_CircuitPython_SHT4x, Adafruit_CircuitPython_PIOASM, Adafruit_CircuitPython_AW9523, Adafruit_CircuitPython_datetime, Adafruit_CircuitPython_HTU31D, Adafruit_CircuitPython_SimpleMath, Adafruit_CircuitPython_MCP2515, Adafruit_CircuitPython_BLE_LYWSD03MMC, Adafruit_CircuitPython_SSD1681, Adafruit_CircuitPython_DisplayIO_Layout, Adafruit_CircuitPython_SSD1680, Adafruit_CircuitPython_FunHouse, Adafruit_CircuitPython_Colorsys, Adafruit_CircuitPython_OV7670, Adafruit_CircuitPython_Dash_Display, Adafruit_CircuitPython_Simple_Text_Display, Adafruit_CircuitPython_OV2640, Adafruit_CircuitPython_NeoKey, Adafruit_CircuitPython_DisplayIO_SH1106, Adafruit_CircuitPython_MacroPad, Adafruit_CircuitPython_Pixelbuf, Adafruit_CircuitPython_Ticks, Adafruit_CircuitPython_SCD4X, Adafruit_CircuitPython_IS31FL3741, Adafruit_CircuitPython_Ducky, Adafruit_CircuitPython_PCF8563, Adafruit_CircuitPython_ST7565, Adafruit_CircuitPython_UC8151D, Adafruit_CircuitPython_Radial_Controller, Adafruit_CircuitPython_OV5640, Adafruit_CircuitPython_VL53L1X, Adafruit_CircuitPython_asyncio, Adafruit_CircuitPython_24LC32, Adafruit_CircuitPython_ADXL37x, Adafruit_CircuitPython_ESP32S2TFT, Adafruit_CircuitPython_VL53L4CD, Adafruit_CircuitPython_TT21100, Adafruit_CircuitPython_HTTPServer, Adafruit_CircuitPython_TSC2007, Adafruit_CircuitPython_floppy, Adafruit_CircuitPython_PCF8574, Adafruit_CircuitPython_MMC56x3, Adafruit_CircuitPython_SI1145, Adafruit_CircuitPython_AGS02MA, Adafruit_CircuitPython_MAX1704x, Adafruit_CircuitPython_GUVX_I2C, Adafruit_CircuitPython_TCA8418, Adafruit_CircuitPython_LTR329_LTR303, Adafruit_CircuitPython_ENS160, Adafruit_CircuitPython_PCF8575, Adafruit_CircuitPython_BLE_Beacon, Adafruit_CircuitPython_BLE_File_Transfer, Adafruit_CircuitPython_Pastebin, Adafruit_CircuitPython_NeoPxl8, Adafruit_CircuitPython_DisplayIO_FlipClock, Adafruit_CircuitPython_PixelMap, Adafruit_CircuitPython_GFX, Adafruit_CircuitPython_SPD1656, Adafruit_CircuitPython_ACeP7In, Adafruit_CircuitPython_Wii_Classic, Adafruit_CircuitPython_wave, Adafruit_CircuitPython_EK79686, Adafruit_CircuitPython_USB_Host_Descriptors, Adafruit_CircuitPython_JSON_Stream, Adafruit_CircuitPython_AD569x, Adafruit_CircuitPython_TemplateEngine, Adafruit_CircuitPython_HUSB238, Adafruit_CircuitPython_PCA9554, Adafruit_CircuitPython_CST8XX, Adafruit_CircuitPython_VCNL4020, Adafruit_CircuitPython_Qualia, Adafruit_CircuitPython_ADS7830, Adafruit_CircuitPython_PyCamera, Adafruit_CircuitPython_FT5336, Adafruit_CircuitPython_MCP3421, Adafruit_CircuitPython_ConnectionManager, Adafruit_CircuitPython_ADG72x, Adafruit_CircuitPython_S35710, Adafruit_CircuitPython_CH9328, Adafruit_CircuitPython_HDC302x, Adafruit_CircuitPython_RFM, Adafruit_CircuitPython_Prompt_Toolkit, Adafruit_CircuitPython_HX711, Adafruit_CircuitPython_PIO_UART, Adafruit_CircuitPython_Anchored_TileGrid, Adafruit_CircuitPython_TM1814, Adafruit_CircuitPython_USB_Host_Mass_Storage, Adafruit_CircuitPython_USB_Host_MIDI, Adafruit_CircuitPython_INA3221, Adafruit_CircuitPython_VCNL4200, Adafruit_CircuitPython_WM8960

Updating https://github.com/adafruit/Adafruit_CircuitPython_Bundle/circuitpython_library_list.md to NA from NA:
  > Updated download stats for the libraries
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Separate button presses from library
3 participants