aboutsummaryrefslogtreecommitdiff
path: root/tmk_core/common/action_layer.c
diff options
context:
space:
mode:
Diffstat (limited to 'tmk_core/common/action_layer.c')
-rw-r--r--tmk_core/common/action_layer.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/tmk_core/common/action_layer.c b/tmk_core/common/action_layer.c
index af2d7d964..ed1a4bd20 100644
--- a/tmk_core/common/action_layer.c
+++ b/tmk_core/common/action_layer.c
@@ -131,32 +131,32 @@ bool layer_state_cmp(layer_state_t cmp_layer_state, uint8_t layer) {
131 if (!cmp_layer_state) { 131 if (!cmp_layer_state) {
132 return layer == 0; 132 return layer == 0;
133 } 133 }
134 return (cmp_layer_state & (1UL << layer)) != 0; 134 return (cmp_layer_state & ((layer_state_t)1 << layer)) != 0;
135} 135}
136 136
137/** \brief Layer move 137/** \brief Layer move
138 * 138 *
139 * Turns on the given layer and turn off all other layers 139 * Turns on the given layer and turn off all other layers
140 */ 140 */
141void layer_move(uint8_t layer) { layer_state_set(1UL << layer); } 141void layer_move(uint8_t layer) { layer_state_set((layer_state_t)1 << layer); }
142 142
143/** \brief Layer on 143/** \brief Layer on
144 * 144 *
145 * Turns on given layer 145 * Turns on given layer
146 */ 146 */
147void layer_on(uint8_t layer) { layer_state_set(layer_state | (1UL << layer)); } 147void layer_on(uint8_t layer) { layer_state_set(layer_state | ((layer_state_t)1 << layer)); }
148 148
149/** \brief Layer off 149/** \brief Layer off
150 * 150 *
151 * Turns off given layer 151 * Turns off given layer
152 */ 152 */
153void layer_off(uint8_t layer) { layer_state_set(layer_state & ~(1UL << layer)); } 153void layer_off(uint8_t layer) { layer_state_set(layer_state & ~((layer_state_t)1 << layer)); }
154 154
155/** \brief Layer invert 155/** \brief Layer invert
156 * 156 *
157 * Toggle the given layer (set it if it's unset, or unset it if it's set) 157 * Toggle the given layer (set it if it's unset, or unset it if it's set)
158 */ 158 */
159void layer_invert(uint8_t layer) { layer_state_set(layer_state ^ (1UL << layer)); } 159void layer_invert(uint8_t layer) { layer_state_set(layer_state ^ ((layer_state_t)1 << layer)); }
160 160
161/** \brief Layer or 161/** \brief Layer or
162 * 162 *
@@ -258,7 +258,7 @@ uint8_t layer_switch_get_layer(keypos_t key) {
258 layer_state_t layers = layer_state | default_layer_state; 258 layer_state_t layers = layer_state | default_layer_state;
259 /* check top layer first */ 259 /* check top layer first */
260 for (int8_t i = MAX_LAYER - 1; i >= 0; i--) { 260 for (int8_t i = MAX_LAYER - 1; i >= 0; i--) {
261 if (layers & (1UL << i)) { 261 if (layers & ((layer_state_t)1 << i)) {
262 action = action_for_key(i, key); 262 action = action_for_key(i, key);
263 if (action.code != ACTION_TRANSPARENT) { 263 if (action.code != ACTION_TRANSPARENT) {
264 return i; 264 return i;