From eb25bb31d29cc03bdca7ed3ce2f1f55f3e9c1c61 Mon Sep 17 00:00:00 2001 From: Jesse McDonald Date: Sun, 29 Mar 2020 16:12:46 -0500 Subject: [PATCH] make entire square clickable to select, not just the piece --- js/pacosako_ui.js | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/js/pacosako_ui.js b/js/pacosako_ui.js index ee311f1..6c50fbb 100644 --- a/js/pacosako_ui.js +++ b/js/pacosako_ui.js @@ -172,15 +172,15 @@ $(function (){ pieceEndMove(ui.draggable, cbSquareLocation(this)); } - function pieceClickUnselect(ev, ui) { + function squareClickUnselect(ev, ui) { renderBoard(); } - function pieceClickSelect(ev, ui) { - const clicked = $(this); + function squareClickSelect(ev, ui) { + const clicked = $(this).children('.cb-piece.ui-draggable').not('.ui-draggable-disabled'); clicked.addClass('cb-selected'); - $('#cb_board .cb-piece').off('click.select'); - clicked.on('click.unselect', pieceClickUnselect); + $('#cb_board .cb-square').off('click.select'); + clicked.parent().on('click.unselect', squareClickUnselect); pieceStartMove(clicked, 'click'); } @@ -205,8 +205,6 @@ $(function (){ piece.attr('id', piece_id); piece.removeClass('cb-selected'); piece.removeAttr('style'); - piece.off('click.select'); - piece.off('click.unselect'); piece.data({ side: side, type: type, location: where }); piece.appendTo(cbSquare(where)); piece.draggable({ @@ -222,8 +220,8 @@ $(function (){ function renderBoard(animate) { $('#cb_board .cb-piece').stop(true); - $('#cb_board .cb-piece').off('click.select'); - $('#cb_board .cb-piece').off('click.unselect'); + $('#cb_board .cb-square').off('click.select'); + $('#cb_board .cb-square').off('click.unselect'); $('#cb_board .cb-square').off('click.destination'); $('#cb_board .cb-piece.cb-selected').removeClass('cb-selected'); $('#cb_board .cb-piece').removeAttr('style').appendTo('#cb_hidden'); @@ -309,7 +307,7 @@ $(function (){ } else if (liveView && playing) { const clss = game.player === PS.LIGHT ? '.cb-lt-piece' : '.cb-dk-piece'; const pieces = $('#cb_board ' + clss) - pieces.on('click.select', pieceClickSelect); + pieces.parent().on('click.select', squareClickSelect); pieces.draggable('enable'); }