… | |
… | |
3045 | rxvt_term::selection_click (int clicks, int x, int y) |
3045 | rxvt_term::selection_click (int clicks, int x, int y) |
3046 | { |
3046 | { |
3047 | clicks = ((clicks - 1) % 3) + 1; |
3047 | clicks = ((clicks - 1) % 3) + 1; |
3048 | selection.clicks = clicks; /* save clicks so extend will work */ |
3048 | selection.clicks = clicks; /* save clicks so extend will work */ |
3049 | |
3049 | |
|
|
3050 | if (clicks == 2 && !selection.rect |
|
|
3051 | && HOOK_INVOKE ((this, HOOK_SEL_EXTEND, DT_END))) |
|
|
3052 | { |
|
|
3053 | MEvent.clicks = 1; // what a mess |
|
|
3054 | return; |
|
|
3055 | } |
|
|
3056 | |
3050 | selection_start_colrow (Pixel2Col (x), Pixel2Row (y)); |
3057 | selection_start_colrow (Pixel2Col (x), Pixel2Row (y)); |
3051 | |
3058 | |
3052 | if (clicks == 2 || clicks == 3) |
3059 | if (clicks == 2 || clicks == 3) |
3053 | selection_extend_colrow (selection.mark.col, |
3060 | selection_extend_colrow (selection.mark.col, |
3054 | selection.mark.row + view_start, |
3061 | selection.mark.row + view_start, |
… | |
… | |
3349 | else if (selection.clicks == 2) |
3356 | else if (selection.clicks == 2) |
3350 | { |
3357 | { |
3351 | if (ROWCOL_IS_AFTER (selection.end, selection.beg)) |
3358 | if (ROWCOL_IS_AFTER (selection.end, selection.beg)) |
3352 | selection.end.col--; |
3359 | selection.end.col--; |
3353 | |
3360 | |
3354 | if (!HOOK_INVOKE ((this, HOOK_SEL_EXTEND, DT_END))) |
|
|
3355 | { |
|
|
3356 | selection_delimit_word (UP, &selection.beg, &selection.beg); |
3361 | selection_delimit_word (UP, &selection.beg, &selection.beg); |
3357 | selection_delimit_word (DN, &selection.end, &selection.end); |
3362 | selection_delimit_word (DN, &selection.end, &selection.end); |
3358 | } |
|
|
3359 | } |
3363 | } |
3360 | else if (selection.clicks == 3) |
3364 | else if (selection.clicks == 3) |
3361 | { |
3365 | { |
3362 | #if ENABLE_FRILLS |
3366 | #if ENABLE_FRILLS |
3363 | if (OPTION (Opt_tripleclickwords)) |
3367 | if (OPTION (Opt_tripleclickwords)) |