Add controls to stop color shift
authorLukas Jiriste <ljiriste@student.42prague.com>
Fri, 26 Apr 2024 09:30:07 +0000 (11:30 +0200)
committerLukas Jiriste <ljiriste@student.42prague.com>
Fri, 26 Apr 2024 09:30:07 +0000 (11:30 +0200)
Also change detection of XK_KP keys to also include the numbered
variants. I'm not sure why numlock has no effect on the keycode
but I think this way it is more portable.

src/event_handling.c
src/trans_view.c

index 98f2aac561b4d64004d61c71a73c07ae3ff46528..b51097e50f28d730d53313934119ea83cb393bc9 100644 (file)
@@ -6,7 +6,7 @@
 /*   By: ljiriste <marvin@42.fr>                    +#+  +:+       +#+        */
 /*                                                +#+#+#+#+#+   +#+           */
 /*   Created: 2023/12/05 19:35:01 by ljiriste          #+#    #+#             */
-/*   Updated: 2024/04/26 11:02:11 by ljiriste         ###   ########.fr       */
+/*   Updated: 2024/04/26 11:24:51 by ljiriste         ###   ########.fr       */
 /*                                                                            */
 /* ************************************************************************** */
 
@@ -49,12 +49,15 @@ static void additional_keys(int keycode, t_session *s)
                        set_for_redraw(s);
                }
        }
-       else if (keycode == XK_KP_Up)
+       else if (keycode == XK_KP_Up || keycode == XK_KP_8)
                change_shift_speed(&s->view.color_shift_speed,
                        SHIFT_MULT, SHIFT_THRESH);
-       else if (keycode == XK_KP_Down)
+       else if (keycode == XK_KP_Down || keycode == XK_KP_2)
                change_shift_speed(&s->view.color_shift_speed,
                        -SHIFT_MULT, SHIFT_THRESH);
+       else if (keycode == XK_KP_Insert || keycode == XK_KP_0)
+               change_shift_speed(&s->view.color_shift_speed, 0, SHIFT_THRESH);
+       return ;
 }
 
 int    handle_key_press(int keycode, t_session *s)
index d813ff1739cdd64d3425536e745536474f8a9d84..7d4d97a3f57e0639a08c79b05425373a90f9a440 100644 (file)
@@ -6,7 +6,7 @@
 /*   By: ljiriste <marvin@42.fr>                    +#+  +:+       +#+        */
 /*                                                +#+#+#+#+#+   +#+           */
 /*   Created: 2024/04/26 10:40:31 by ljiriste          #+#    #+#             */
-/*   Updated: 2024/04/26 11:06:57 by ljiriste         ###   ########.fr       */
+/*   Updated: 2024/04/26 11:29:08 by ljiriste         ###   ########.fr       */
 /*                                                                            */
 /* ************************************************************************** */
 
@@ -93,11 +93,11 @@ void        change_shift_speed(double *speed, double mult, double thresh)
                        *speed = -thresh;
                return ;
        }
-       if (*speed > 0 && mult > 0)
+       if (*speed > 0 && mult >= 0)
                *speed *= mult;
        else if (*speed > 0 && mult < 0)
                *speed /= -mult;
-       else if (*speed < 0 && mult < 0)
+       else if (*speed < 0 && mult <= 0)
                *speed *= -mult;
        else if (*speed < 0 && mult > 0)
                *speed /= mult;