The graph editor supports an Extend transformation mode, which is essentially Move that only affects keyframes either before or after the current frame, based on the mouse cursor position. This fixes a bug in this mode where it doesn't respect the snap setting.