diff --git a/aep-schedule-website/src/frontend/app.rs b/aep-schedule-website/src/frontend/app.rs
index 86ecd113a68d63426e32feb646d659b96520e1be..d8d493b29f6b7f18e324824329a3899a7e48fda3 100644
--- a/aep-schedule-website/src/frontend/app.rs
+++ b/aep-schedule-website/src/frontend/app.rs
@@ -43,7 +43,7 @@ pub fn App() -> impl IntoView {
                     </a>
                     <a href="https://git.step.polymtl.ca/Lemark/aep-schedule-generator-rusty" class="sources" target="_blank" ><span class="rounded-md font-medium text-gray-700 text-lg font-sans tracking-tight">"Sources "</span><GitlabLogo weight=IconWeight::Regular size="3vh"/></a>
                 </nav>
-                <div class=("active", is_active) class="hamburger" on:mousedown=move |_| {
+                <div class=("active", is_active) class="hamburger" on:pointerdown=move |_| {
                     set_active.update(|active| {
                         *active = !*active;
                     });
diff --git a/aep-schedule-website/src/frontend/components/common/autocomplete.rs b/aep-schedule-website/src/frontend/components/common/autocomplete.rs
index 0bdb98610f6d1ec816123d36e8f2f8151dc2e2fa..1daa4704d83247ba542a5d78e325199d53c83bdf 100644
--- a/aep-schedule-website/src/frontend/components/common/autocomplete.rs
+++ b/aep-schedule-website/src/frontend/components/common/autocomplete.rs
@@ -73,7 +73,7 @@ pub fn AutoComplete<F: FnMut(String) + Copy + Clone + 'static>(
                 }
             }
             />
-            <button class=button_theme on:mousedown=move |_| {
+            <button class=button_theme on:pointerdown=move |_| {
                 let input = input.get().trim().to_uppercase();
                 submit(input);
             }>
@@ -83,7 +83,7 @@ pub fn AutoComplete<F: FnMut(String) + Copy + Clone + 'static>(
                 {suggestions.into_iter().enumerate().map(|(i, autocomplete)| view!{
                     <div
                         class=("hidden", move || {!suggestion_range.get().contains(&i)})
-                        on:mousedown=move |_| submit(autocomplete.value.clone())
+                        on:pointerdown=move |_| submit(autocomplete.value.clone())
                     >
                         {autocomplete.label}
                     </div>
diff --git a/aep-schedule-website/src/frontend/components/common/number_input.rs b/aep-schedule-website/src/frontend/components/common/number_input.rs
index 98b3a1df11e1e71d0a27f05f55f7f8a64135ec3b..5dc3e45ce787b44e41f7f36730ff1c0dab7a9db5 100644
--- a/aep-schedule-website/src/frontend/components/common/number_input.rs
+++ b/aep-schedule-website/src/frontend/components/common/number_input.rs
@@ -36,7 +36,7 @@ where
         <div class="flex flex-row gap-8 items-center">
             <p class="text-white font-sans font-medium tracking-tight">{label}</p>
             <div class="relative flex items-center max-w-20">
-                <button on:mousedown=minus type="button" class="bg-gray-100 hover:bg-gray-200 border border-gray-300 rounded-s-lg p-1 h-7 focus:ring-gray-100 focus:ring-2 focus:outline-none">
+                <button on:pointerdown=minus type="button" class="bg-gray-100 hover:bg-gray-200 border border-gray-300 rounded-s-lg p-1 h-7 focus:ring-gray-100 focus:ring-2 focus:outline-none">
                     <svg class="w-3 h-3 text-gray-900" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 18 2">
                         <path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M1 1h16"/>
                     </svg>
@@ -51,7 +51,7 @@ where
                     max=max
                     prop:value=value
                     required />
-                <button on:mousedown=plus type="button" class="bg-gray-100 hover:bg-gray-200 border border-gray-300 rounded-e-lg p-1 h-7 focus:ring-gray-100 focus:ring-2 focus:outline-none">
+                <button on:pointerdown=plus type="button" class="bg-gray-100 hover:bg-gray-200 border border-gray-300 rounded-e-lg p-1 h-7 focus:ring-gray-100 focus:ring-2 focus:outline-none">
                     <svg class="w-3 h-3 text-gray-900" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 18 18">
                         <path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 1v16M1 9h16"/>
                     </svg>
diff --git a/aep-schedule-website/src/frontend/components/notifications.rs b/aep-schedule-website/src/frontend/components/notifications.rs
index 20cb7ea9dd441cff9670f99c2ab61703d43cf539..a701a7247b6c4cd4ff84a4a47b9502b3c9beec5c 100644
--- a/aep-schedule-website/src/frontend/components/notifications.rs
+++ b/aep-schedule-website/src/frontend/components/notifications.rs
@@ -44,7 +44,7 @@ pub fn Notifications(
     view! {
         <div class=class>
             <div class="notif-body">
-                <div class="close-button" on:mousedown=move |_| {
+                <div class="close-button" on:pointerdown=move |_| {
                     set_modal.set(None);
                 }>
                     <X size="2em"></X>
diff --git a/aep-schedule-website/src/frontend/components/options/courses_selector.rs b/aep-schedule-website/src/frontend/components/options/courses_selector.rs
index b3c2ed4bdf9a97ec29b45c58887605d8f7eee1b8..a7a0197f77acc3d02e2d7b5e0f371ff85f58caa8 100644
--- a/aep-schedule-website/src/frontend/components/options/courses_selector.rs
+++ b/aep-schedule-website/src/frontend/components/options/courses_selector.rs
@@ -31,7 +31,7 @@ where
     let set_modal = SetModal::from_context();
 
     view! {
-        <div on:mousedown=move |_| {
+        <div on:pointerdown=move |_| {
                 open.update(|b| *b = !*b);
                 submit();
             }
@@ -52,7 +52,7 @@ where
             </div>
             //{match group.open {
             //    false => Some(view !{
-            //        <div on:mousedown=move |ev| {
+            //        <div on:pointerdown=move |ev| {
             //            ev.stop_propagation();
             //            let sigle_group = SigleGroup::new(course_sigle.clone(), group_type, group.number);
             //            set_modal.set(Some(sigle_group));
@@ -166,7 +166,7 @@ where
             <SearchCourse courses=courses.clone() action_courses set_active_tab/>
         </Await>
         <div class="flex w-full flex-wrap">
-            <button class="tab-button chips" class=("tab-selected", move || active_tab.get() == "") id="personal" on:mousedown={
+            <button class="tab-button chips" class=("tab-selected", move || active_tab.get() == "") id="personal" on:pointerdown={
                 move |_| set_active_tab.set("".to_string())
             }>
                 <CalendarX weight=IconWeight::Regular size="16px"/>
@@ -180,12 +180,12 @@ where
                     let add_hidden = move || sigle == active_tab.get();
                     let sigle = course.sigle.to_string();
                     view!{
-                        <button class="tab-button chips" class=("tab-selected", add_hidden) id=&sigle on:mousedown={
+                        <button class="tab-button chips" class=("tab-selected", add_hidden) id=&sigle on:pointerdown={
                             let sigle = sigle.clone();
                             move |_| set_active_tab.set(sigle.clone())
                         }>
                         {&sigle}
-                        <button class="close" on:mousedown={
+                        <button class="close" on:pointerdown={
                             let sigle = sigle.clone();
                             move |_| {
                                 action_courses.value().update(|courses| {
diff --git a/aep-schedule-website/src/frontend/components/options/form.rs b/aep-schedule-website/src/frontend/components/options/form.rs
index 618b00a4b60c3668734e2adc2a9909cd8871154a..07d06d665f84e42c238675fa808b997ad2c0a30f 100644
--- a/aep-schedule-website/src/frontend/components/options/form.rs
+++ b/aep-schedule-website/src/frontend/components/options/form.rs
@@ -40,6 +40,6 @@ pub fn OptionsForms() -> impl IntoView {
         <span class="grow"></span>
         <NumberInput value=state.max_nb_conflicts max=127 label="Nombre de période de cours en conflits maximum: " submit/>
         <SelectOptimizations state=state submit/>
-        <button on:mousedown=submit_mobile class="lg:hidden select-none rounded-lg bg-amber-500 py-2 text-xl px-4 w-64 self-center text-center align-middle text-black shadow-md shadow-amber-500/20 transition-all hover:shadow-lg hover:shadow-amber-500/40 focus:opacity-[0.85] focus:shadow-none active:opacity-[0.85] active:shadow-none disabled:pointer-events-none disabled:opacity-50 disabled:shadow-none">"Générer les horaires"</button>
+        <button on:pointerdown=submit_mobile class="lg:hidden select-none rounded-lg bg-amber-500 py-2 text-xl px-4 w-64 self-center text-center align-middle text-black shadow-md shadow-amber-500/20 transition-all hover:shadow-lg hover:shadow-amber-500/40 focus:opacity-[0.85] focus:shadow-none active:opacity-[0.85] active:shadow-none disabled:pointer-events-none disabled:opacity-50 disabled:shadow-none">"Générer les horaires"</button>
     }
 }
diff --git a/aep-schedule-website/src/frontend/components/options/todo.rs b/aep-schedule-website/src/frontend/components/options/todo.rs
index e32ad65d6001b59bfc291b9e6eab0b7252856a72..8a4cb056f288fc62be02f4271915f98b88b8d180 100644
--- a/aep-schedule-website/src/frontend/components/options/todo.rs
+++ b/aep-schedule-website/src/frontend/components/options/todo.rs
@@ -86,7 +86,7 @@ pub fn Todo() -> impl IntoView {
                                 </div>
                             </div>
                         </div>
-                        <button on:mousedown=submit class="select-none rounded-lg bg-amber-500 py-1 text-lg font-sans font-semibold px-2 w-64 self-center text-center align-middle text-black shadow-md shadow-amber-500/20 transition-all hover:shadow-lg hover:shadow-amber-500/40 focus:opacity-[0.85] focus:shadow-none active:opacity-[0.85] active:shadow-none disabled:pointer-events-none disabled:opacity-50 disabled:shadow-none" prop:disabled=disab>"Générer les horaires"</button>
+                        <button on:pointerdown=submit class="select-none rounded-lg bg-amber-500 py-1 text-lg font-sans font-semibold px-2 w-64 self-center text-center align-middle text-black shadow-md shadow-amber-500/20 transition-all hover:shadow-lg hover:shadow-amber-500/40 focus:opacity-[0.85] focus:shadow-none active:opacity-[0.85] active:shadow-none disabled:pointer-events-none disabled:opacity-50 disabled:shadow-none" prop:disabled=disab>"Générer les horaires"</button>
                     </div>
                 </div>
             </div>
diff --git a/aep-schedule-website/src/frontend/components/schedule.rs b/aep-schedule-website/src/frontend/components/schedule.rs
index af3b0d2710dd6d39bd9c57f166a33a6aa9f1dd82..5c21a8d7b666ce2726cfd9c14e1bca8d74af87ab 100644
--- a/aep-schedule-website/src/frontend/components/schedule.rs
+++ b/aep-schedule-website/src/frontend/components/schedule.rs
@@ -128,7 +128,7 @@ pub fn ScheduleComponent(schedule: Schedule, calendar: Rc<Calendar>) -> impl Int
             <Schedule last_day=schedule.last_day>
                 {schedule.taken_courses.iter().enumerate().map(|(i, c)| view!{<CoursePeriods i course=c />}).collect_view()}
             </Schedule>
-            //<button class="button-download flex" on:mousedown=move |_| {
+            //<button class="button-download flex" on:pointerdown=move |_| {
             //    let ics = schedule2.generate_ics(&calendar);
             //    let url = url_escape::encode_fragment(&ics);
             //    set_download("data:text/plain;charset=utf-8,".to_string() + &url);
diff --git a/aep-schedule-website/src/frontend/pages/generator.rs b/aep-schedule-website/src/frontend/pages/generator.rs
index fdd27fabbf8ddd324ba536e90899f8bbb63bdb2a..d7fdf57eaef118fbb2b8322d3bb16f3f4ff1effc 100644
--- a/aep-schedule-website/src/frontend/pages/generator.rs
+++ b/aep-schedule-website/src/frontend/pages/generator.rs
@@ -50,6 +50,6 @@ pub fn GeneratorPage() -> impl IntoView {
             <SchedulesComponent/>
         </section>
         <Notifications modal set_modal/>
-        <button on:mousedown=move |_| {state.hide.set(false)} id="go-back"><CaretDoubleRight weight=IconWeight::Regular size="3vh"/></button>
+        <button on:pointerdown=move |_| {state.hide.set(false)} id="go-back"><CaretDoubleRight weight=IconWeight::Regular size="3vh"/></button>
     }
 }