Aaron Culliney
3c1dcd4a69
Refactor to enable loading multiple AV backends
...
- Includes default 'null' backends with lowest priority
2017-07-15 13:25:00 -10:00
Aaron Culliney
3ed159dd0b
Lightly refactor joystick and button handling during reset
...
- Remove unused button2 variable
- Remake little-used backend joystick reset function as function pointer
- Allow soft reset and self-test on Android (although there is still a race condition due to code that directly sets
joy_button[12] values
2016-04-17 11:42:13 -07:00
Aaron Culliney
9c9ba6e7ef
Render the correct activeChar when initially setting touch joystick preferences
2016-04-16 14:15:21 -07:00
Aaron Culliney
fd7578a862
Always show touch joystick azimuth (if we're rendering the joystick axis)
2016-04-13 19:50:03 -07:00
Aaron Culliney
db816ad502
Refactor Android variant to use common shared JSON preferences
...
- Eliminates a whole bunch of boilerplate setter/getter code in various places
- Accesses preferences directly from JSON data through custom json_parse.h API
- Improves code locality for Java menus/settings
2016-04-11 22:01:30 -07:00
Aaron Culliney
3120b75e00
Enforce module ctor priorities
2016-02-22 22:41:37 -08:00
Aaron Culliney
699f4697df
Don't leak azimuth model objects
2016-02-19 20:00:42 -08:00
Aaron Culliney
5354b0cfd5
First cut at allowing portrait mode (on mobile devices)
2016-02-14 20:18:07 -08:00
Aaron Culliney
261ae2efae
Refactor to not use video_backend in so many places
2016-02-07 14:42:32 -08:00
Aaron Culliney
433f4baafa
Eliminate unnecessary variable and draw axis/buttons for duration of tracking touch
2016-01-30 14:46:49 -08:00
Aaron Culliney
8f03d0ca6f
Enforce pointer index tracking for touch lifecycle
...
- Fixes glitch where GLTouchMenu would capture a joystick event if the movement came into its portion of the screen
- Prepares the way for allowing both keyboard and joystick access to same screen real-estate
2016-01-30 14:46:43 -08:00
Aaron Culliney
c29daf006e
Refactor : naming RB -> Azimuth
2016-01-30 14:46:31 -08:00
Aaron Culliney
661b4220ef
Unbreak TOUCH_JOY_LOG() macro
2016-01-24 10:25:45 -08:00
Aaron Culliney
659a338d26
Avoid crashing if azimuth model is unavailable (shader failed to compile)
2016-01-05 23:19:12 -08:00
Aaron Culliney
c2014e2cde
Add simple display of touch joystick azimuth
2016-01-03 12:36:13 -08:00
Aaron Culliney
9219fa7053
Creation of GLCustom model is slightly more RAII
2016-01-03 11:57:48 -08:00
Aaron Culliney
2ec88ad433
Iterate on GLTouchJoystick
...
- Use smaller models/textures
- Slightly change the joystick/kpad glyphs
2016-01-02 15:08:06 -08:00
Aaron Culliney
691dbd5ac2
Coalesce duplicate fade-out codepaths
2016-01-02 14:23:09 -08:00
Aaron Culliney
8b3f288018
Reduce duplicate OpenGL plumbing codepaths
...
- Apple //e "framebuffer" OpenGL model/texture is now a complete GLModel object
- Readability FTW! ... use args struct in quadCreation function to allow for named args
2016-01-02 13:39:07 -08:00
Aaron Culliney
abae59767c
Enable simple heap memory fencing/scribbling in debug builds
2015-12-31 22:50:43 -08:00
Aaron Culliney
2cc23cf35d
Upgrade to GPLv3 "or later" and update copyrights
2015-10-22 21:09:13 -07:00
Aaron Culliney
f7acde244c
Work around broken Adreno 200 GPU
...
- Rework checks to compare with POSIX Regexs ... which themselves appear broken with android-10 NDK ... sigh
2015-09-30 21:55:07 -07:00
Aaron Culliney
f627ccef3f
Fix n00b shader mistake (conditional code in shader) =D
2015-09-27 11:49:58 -07:00
Aaron Culliney
d25acb1da0
Silence logging in touch dispatch by default
2015-09-15 20:39:30 -07:00
Aaron Culliney
97f8ef1f45
Just assume is on button side if not on axis side
2015-09-13 14:12:16 -07:00
Aaron Culliney
75ecc47307
Bugfix : show correct current button character
2015-09-04 20:35:42 -07:00
Aaron Culliney
287df44133
Move tap delay to joystick variant
...
- Keypad variant already has a key repeat threshold
- Improved variant touch lifecycle naming
2015-09-02 22:47:48 -07:00
Aaron Culliney
2ae673e221
Balance touch indices decrement with increment
2015-09-02 22:33:13 -07:00
Aaron Culliney
5eb51419b0
Ignore multi-touch within a particular screen division (only one touch per Axis/Button side)
2015-08-30 17:04:28 -07:00
Aaron Culliney
27723be6cb
Improved touch keypad joystick key repeat codepaths
2015-08-30 16:54:39 -07:00
Aaron Culliney
158449e7fb
Force CapsLock for Joystick Keypad for now
2015-08-29 12:05:09 -07:00
Aaron Culliney
5df1e2400e
Add ability to hide joystick controls overlay
2015-08-22 11:05:18 -07:00
Aaron Culliney
3f934ecd3f
Fix cycling between different touch devices in the GL touch menu
2015-08-21 23:33:08 -07:00
Aaron Culliney
d2b526783a
Improve joystick calibration modes and keypad menus
2015-08-21 20:34:19 -07:00
Aaron Culliney
5c3791f5dc
Refactor GL Touch Joystick (PART I Native changes)
...
- Move touch-handling code for "regular" touch joystick into separate file
- Add new touch-handling code for "keypad" touch joystick. This is a somewhat complex state-machine to determine
which key to press depending on a full keypad rosette.
- Adds a callback to vm.c to hook into keyboard read callback. Allows us to immediately queue the next key if the
keypad touch joystick is long-pressed for either axis or button keys.
2015-08-18 21:59:41 -07:00
Aaron Culliney
7344cadfbd
More joystick settings including calibration mode
2015-08-02 14:29:34 -07:00
Aaron Culliney
af04ba94d1
Migrate file globals into file static struct
2015-08-02 12:44:44 -07:00
Aaron Culliney
324d900c35
First cut at Android touch joystick configuration
2015-08-01 17:33:29 -07:00
Aaron Culliney
0bc8869627
nativeOnTouch() now returns various state flags
...
- Allows playing of a key click sound if a keyboard item tapped
- Improves stovepiping the native request to show the Android main menu
2015-07-30 22:05:21 -07:00
Aaron Culliney
abfa6e743b
Bugfix : properly show icon for joystick or keyboard
2015-07-29 21:18:25 -07:00
Aaron Culliney
fa1de4dee7
Silence some logging
2015-07-26 10:41:12 -07:00
Aaron Culliney
20bbfcd286
Fixes for Tap Delay thread
...
- Now signals TD thread on each touch event that resulted in a change to the buttons.trackingIndex or a change to
the chosen button (buttons.touchDownButton, buttons.northButton, or buttons.southButton)
- Uses mutex (un)locking to avoid races around buttons.trackingIndex and chosen button
- Adds an equal delay on TD thread loop finish to ensure the touchDown/touchUp or touchDown/move/touchUp event
sequence is the same basic duration as received
2015-06-14 13:59:51 -07:00
Aaron Culliney
f28b708449
Delay joystick button touches FTW
...
- Previously a touch down event would trigger a joystick button, but now this slight delay in processing allows us
to discard this if the user really issued a tap-move combo
2015-06-06 21:44:11 -07:00
Aaron Culliney
5816962f32
Make RGBA_4444 codepaths available to HUD models
2015-05-30 23:18:08 -07:00
Aaron Culliney
cb72d483c0
Refactor INTERPOLATED_PIXEL_ADJUSTMENT calculations just to codepaths actually touching the internal framebuffers
2015-05-29 21:47:49 -07:00
Aaron Culliney
692a6793cb
Default enable touch joystick instead of keyboard
2015-05-23 23:25:32 -07:00
Aaron Culliney
13a7dbfbb0
defensive coding
2015-05-21 22:31:06 -07:00
Aaron Culliney
1126a319ec
Misc tweaks to various GL interface objects
2015-04-26 18:12:56 -07:00
Aaron Culliney
725cf68011
Move common function to base class
2015-04-19 14:28:47 -07:00
Aaron Culliney
629e44b210
Slightly more idiomatic way to upload texture pixels
2015-04-18 15:29:55 -07:00