11/** @odoo -module **/
22
3- import { Component , onMounted , onWillUnmount , useRef , useState } from "@odoo/owl" ;
3+ import { Component , onMounted , useRef , useState } from "@odoo/owl" ;
44import { useService } from "@web/core/utils/hooks" ;
55import { _t } from "@web/core/l10n/translation" ;
66
@@ -10,14 +10,6 @@ import {_t} from "@web/core/l10n/translation";
1010 * Provides a side-by-side view of:
1111 * - Left: Current registrant data
1212 * - Right: Proposed changes
13- *
14- * Keyboard shortcuts:
15- * - A: Approve
16- * - R: Request changes
17- * - D: Decline
18- * - N: Next in queue
19- * - P: Previous in queue
20- * - Escape: Close panel
2113 */
2214export class CRReviewPanel extends Component {
2315 static template = "spp_change_request_v2.CRReviewPanel" ;
@@ -54,11 +46,6 @@ export class CRReviewPanel extends Component {
5446
5547 onMounted ( ( ) => {
5648 this . loadData ( ) ;
57- document . addEventListener ( "keydown" , this . onKeydown . bind ( this ) ) ;
58- } ) ;
59-
60- onWillUnmount ( ( ) => {
61- document . removeEventListener ( "keydown" , this . onKeydown . bind ( this ) ) ;
6249 } ) ;
6350 }
6451
@@ -163,47 +150,6 @@ export class CRReviewPanel extends Component {
163150 }
164151 }
165152
166- // Keyboard handler
167- onKeydown ( event ) {
168- // Don't handle if we're in an input
169- if ( event . target . tagName === "INPUT" || event . target . tagName === "TEXTAREA" ) {
170- return ;
171- }
172-
173- switch ( event . key . toLowerCase ( ) ) {
174- case "a" :
175- if ( this . state . canApprove ) {
176- event . preventDefault ( ) ;
177- this . onApprove ( ) ;
178- }
179- break ;
180- case "r" :
181- if ( this . state . canReject ) {
182- event . preventDefault ( ) ;
183- this . onRequestChanges ( ) ;
184- }
185- break ;
186- case "d" :
187- if ( this . state . canReject ) {
188- event . preventDefault ( ) ;
189- this . onDecline ( ) ;
190- }
191- break ;
192- case "n" :
193- event . preventDefault ( ) ;
194- this . onNext ( ) ;
195- break ;
196- case "p" :
197- event . preventDefault ( ) ;
198- this . onPrevious ( ) ;
199- break ;
200- case "escape" :
201- event . preventDefault ( ) ;
202- this . onClose ( ) ;
203- break ;
204- }
205- }
206-
207153 // Action handlers
208154 async onApprove ( ) {
209155 if ( this . state . showApproveComment ) {
0 commit comments