void (final @NotNull IdeFrame ideFrame) { final Runnable processClipboard = () -> { final String clipboard = ClipboardUtil.getTextInClipboard(); if (clipboard != null && clipboard.length() < MAX_SIZE && !clipboard.equals(myCachedClipboardValue)) { myCachedClipboardValue = clipboard; final Project project = ideFrame.getProject(); if (project != null && !project.isDefault() && canHandle(myCachedClipboardValue)) { handle(project, myCachedClipboardValue); } } }; if (Patches.SLOW_GETTING_CLIPBOARD_CONTENTS) { //IDEA's clipboard is synchronized with the system clipboard on frame activation so we need to postpone clipboard processing new Alarm().addRequest(processClipboard, 300); } else { processClipboard.run(); } }