View | Details | Raw Unified | Return to issue 18748
Collapse All | Expand All

(-)sc/source/ui/app/inputhdl.cxx (-15 / +16 lines)
Lines 2972-2981 BOOL ScInputHandler::KeyInput( const KeyEvent& rKEvt, BOOL bStartEdit /* = FALSE Link Here
2972
    USHORT nCode  = aCode.GetCode();
2972
    USHORT nCode  = aCode.GetCode();
2973
    sal_Unicode nChar = rKEvt.GetCharCode();
2973
    sal_Unicode nChar = rKEvt.GetCharCode();
2974
2974
2975
    //	Alt-Return is accepted, everything else with ALT, or CTRL-TAB are not:
2975
    if (bAlt && !bControl && nCode != KEY_RETURN)
2976
    if (( bAlt && !bControl && nCode != KEY_RETURN ) ||
2976
        // Alt-Return and Alt-Ctrl-* are accepted. Everything else with ALT are not.
2977
            ( bControl && aCode.GetCode() == KEY_TAB ))
2977
        return false;
2978
        return FALSE;
2978
2979
    if (!bControl && nCode == KEY_TAB)
2980
    {
2981
        // Normal TAB moves the cursor right.
2982
        EnterHandler();
2983
2984
        if (pActiveViewSh)
2985
            pActiveViewSh->FindNextUnprot( bShift );
2986
        return true;
2987
    }
2979
2988
2980
    BOOL bInputLine = ( eMode==SC_INPUT_TOP );
2989
    BOOL bInputLine = ( eMode==SC_INPUT_TOP );
2981
2990
Lines 3014-3043 BOOL ScInputHandler::KeyInput( const KeyEvent& rKEvt, BOOL bStartEdit /* = FALSE Link Here
3014
            }
3023
            }
3015
            break;
3024
            break;
3016
        case KEY_TAB:
3025
        case KEY_TAB:
3017
            if (!bControl && !bAlt)
3026
            if (bControl && !bAlt)
3018
            {
3027
            {
3019
                if ( pFormulaData && nTipVisible && nAutoPos != SCPOS_INVALID )
3028
                if ( pFormulaData && nTipVisible && nAutoPos != SCPOS_INVALID )
3020
                {
3029
                {
3021
                    //	blaettern
3030
                    //	blaettern
3022
3031
3023
                    NextFormulaEntry( bShift );
3032
                    NextFormulaEntry( bShift );
3033
                    bUsed = true;
3024
                }
3034
                }
3025
                else if ( pColumnData && bUseTab && nAutoPos != SCPOS_INVALID )
3035
                else if ( pColumnData && bUseTab && nAutoPos != SCPOS_INVALID )
3026
                {
3036
                {
3027
                    //	in den Eintraegen der AutoEingabe blaettern
3037
                    //	in den Eintraegen der AutoEingabe blaettern
3028
3038
3029
                    NextAutoEntry( bShift );
3039
                    NextAutoEntry( bShift );
3040
                    bUsed = true;
3030
                }
3041
                }
3031
                else
3032
                {
3033
                    EnterHandler();
3034
3035
                    //	TabKeyInput gibt auf manchen Rechnern unter W95 Stackueberlaeufe,
3036
                    //	darum direkter Aufruf:
3037
                    if (pActiveViewSh)
3038
                        pActiveViewSh->FindNextUnprot( bShift );
3039
                }
3040
                bUsed = TRUE;
3041
            }
3042
            }
3042
            break;
3043
            break;
3043
        case KEY_ESCAPE:
3044
        case KEY_ESCAPE:

Return to issue 18748