diff --git a/src/hocs/keyboard-shortcuts-hoc.jsx b/src/hocs/keyboard-shortcuts-hoc.jsx
index 736b22a7..c3796094 100644
--- a/src/hocs/keyboard-shortcuts-hoc.jsx
+++ b/src/hocs/keyboard-shortcuts-hoc.jsx
@@ -9,6 +9,7 @@ import CopyPasteHOC from './copy-paste-hoc.jsx';
 import {selectAllBitmap} from '../helper/bitmap';
 import {clearSelection, deleteSelection, getSelectedLeafItems,
     selectAllItems, selectAllSegments} from '../helper/selection';
+import {groupSelection, ungroupSelection} from '../helper/group';
 import {clearSelectedItems, setSelectedItems} from '../reducers/selected-items';
 import {changeMode} from '../reducers/modes';
 
@@ -47,11 +48,23 @@ const KeyboardShortcutsHOC = function (WrappedComponent) {
                     this.props.onRedo();
                 } else if (event.key === 'z') {
                     this.props.onUndo();
+                } else if (event.shiftKey && event.key.toLowerCase() === 'g') {
+                    ungroupSelection(clearSelectedItems, setSelectedItems, this.props.onUpdateImage);
+                    event.preventDefault();
+                } else if (event.key === 'g') {
+                    groupSelection(clearSelectedItems, setSelectedItems, this.props.onUpdateImage);
+                    event.preventDefault();
                 } else if (event.key === 'c') {
                     this.props.onCopyToClipboard();
                 } else if (event.key === 'v') {
                     this.changeToASelectMode();
                     this.props.onPasteFromClipboard();
+                } else if (event.key === 'x') {
+                    this.props.onCopyToClipboard();
+                    if (deleteSelection(this.props.mode, this.props.onUpdateImage)) {
+                        this.props.setSelectedItems(this.props.format);
+                    }
+                    event.preventDefault();
                 } else if (event.key === 'a') {
                     this.changeToASelectMode();
                     event.preventDefault();