Exemplo n.º 1
0
    // Custom Bramble commands
    function _brambleCommand(command, args, callback) {
        var skipCallback = false;

        switch(command) {
        case "BRAMBLE_RELOAD":
            // If JS is disabled, re-enable it just for this next reload.
            HTMLRewriter.forceScriptsOnce();
            PostMessageTransport.reload(true);
            break;
        case "BRAMBLE_MOBILE_PREVIEW":
            UI.showMobileView();
            break;
        case "BRAMBLE_DESKTOP_PREVIEW":
            UI.showDesktopView();
            break;
        case "BRAMBLE_ENABLE_FULLSCREEN_PREVIEW":
            UI.enableFullscreenPreview();
            break;
        case "BRAMBLE_DISABLE_FULLSCREEN_PREVIEW":
            UI.disableFullscreenPreview();
            break;
        case "BRAMBLE_ENABLE_AUTO_UPDATE":
            PostMessageTransport.setAutoUpdate(true);
            break;
        case "BRAMBLE_DISABLE_AUTO_UPDATE":
            PostMessageTransport.setAutoUpdate(false);
            break;
        case "BRAMBLE_ENABLE_SCRIPTS":
            HTMLRewriter.enableScripts();
            PostMessageTransport.reload();
            break;
        case "BRAMBLE_DISABLE_SCRIPTS":
            HTMLRewriter.disableScripts();
            PostMessageTransport.reload();
            break;
        case "BRAMBLE_ENABLE_INSPECTOR":
            MouseManager.enableInspector();
            break;
        case "BRAMBLE_DISABLE_INSPECTOR":
            // Disable the inspector, and clear any marks in the preview/editor
            MouseManager.disableInspector(true);
            break;
        case "BRAMBLE_LIGHT_THEME":
            Theme.setTheme("light-theme");
            break;
        case "BRAMBLE_DARK_THEME":
            Theme.setTheme("dark-theme");
            break;
        case "BRAMBLE_SHOW_SIDEBAR":
            SidebarView.show();
            break;
        case "BRAMBLE_HIDE_SIDEBAR":
            SidebarView.hide();
            break;
        case "BRAMBLE_HIDE_STATUSBAR":
            StatusBar.disable();
            break;
        case "BRAMBLE_SHOW_STATUSBAR":
            StatusBar.enable();
            break;
        case "BRAMBLE_ENABLE_WORD_WRAP":
            PreferencesManager.set("wordWrap", true);
            break;
        case "BRAMBLE_DISABLE_WORD_WRAP":
            PreferencesManager.set("wordWrap", false);
            break;
        case "BRAMBLE_SHOW_TUTORIAL":
            Tutorial.setOverride(true);
            break;
        case "BRAMBLE_HIDE_TUTORIAL":
            Tutorial.setOverride(false);
            break;
        case "BRAMBLE_SHOW_UPLOAD_FILES_DIALOG":
            // Show dialog, see extensions/default/UploadFiles
            skipCallback = true;
            CommandManager.execute("bramble.showUploadFiles").always(callback);
            break;
        case "BRAMBLE_ADD_NEW_FILE":
            skipCallback = true;
            CommandManager.execute("bramble.addFile", args[0]).always(callback);
            break;
        case "BRAMBLE_EXPORT":
            skipCallback = true;
            ArchiveUtils.archive(callback);
            break;
        case "RESIZE":
            // The host window was resized, update all panes
            WorkspaceManager.recomputeLayout(true);
            BrambleEvents.triggerUpdateLayoutEnd();
            break;
        default:
            console.log('[Bramble] unknown command:', command);
            skipCallback = true;
            break;
        }

        if(!skipCallback) {
            callback();
        }
    }
Exemplo n.º 2
0
    // Custom Bramble commands
    function _brambleCommand(command, args, callback) {
        var skipCallback = false;

        switch(command) {
        case "BRAMBLE_RELOAD":
            // If JS is disabled, re-enable it just for this next reload.
            HTMLRewriter.forceScriptsOnce();
            PostMessageTransport.reload(true);
            break;
        case "BRAMBLE_MOBILE_PREVIEW":
            UI.showMobileView();
            break;
        case "BRAMBLE_DESKTOP_PREVIEW":
            UI.showDesktopView();
            break;
        case "BRAMBLE_ENABLE_FULLSCREEN_PREVIEW":
            UI.enableFullscreenPreview();
            break;
        case "BRAMBLE_DISABLE_FULLSCREEN_PREVIEW":
            UI.disableFullscreenPreview();
            break;
        case "BRAMBLE_ENABLE_AUTO_UPDATE":
            PreferencesManager.set("autoUpdate", true);
            PostMessageTransport.setAutoUpdate(true);
            break;
        case "BRAMBLE_DISABLE_AUTO_UPDATE":
            PreferencesManager.set("autoUpdate", false);
            PostMessageTransport.setAutoUpdate(false);
            break;
        case "BRAMBLE_ENABLE_SCRIPTS":
            PreferencesManager.set("allowJavaScript", true);
            PostMessageTransport.reload();
            break;
        case "BRAMBLE_DISABLE_SCRIPTS":
            PreferencesManager.set("allowJavaScript", false);
            PostMessageTransport.reload();
            break;
        case "BRAMBLE_ENABLE_WHITESPACE":
            PreferencesManager.getExtensionPrefs("denniskehrig.ShowWhitespace").set("enabled", true);
            break;
        case "BRAMBLE_DISABLE_WHITESPACE":
            PreferencesManager.getExtensionPrefs("denniskehrig.ShowWhitespace").set("enabled", false);
            break;
        case "BRAMBLE_ENABLE_INSPECTOR":
            MouseManager.enableInspector();
            break;
        case "BRAMBLE_ENABLE_AUTOCOMPLETE":
            PreferencesManager.set("codehint.TagHints", true);
            PreferencesManager.set("codehint.AttrHints", true);
            PreferencesManager.set("codehint.JSHints", true);
            PreferencesManager.set("codehint.CssPropHints", true);
            break;
        case "BRAMBLE_DISABLE_AUTOCOMPLETE":
            PreferencesManager.set("codehint.TagHints", false);
            PreferencesManager.set("codehint.AttrHints", false);
            PreferencesManager.set("codehint.JSHints", false);
            PreferencesManager.set("codehint.CssPropHints", false);
            break;

        case "BRAMBLE_DISABLE_INSPECTOR":
            // Disable the inspector, and clear any marks in the preview/editor
            MouseManager.disableInspector(true);
            break;
        case "BRAMBLE_LIGHT_THEME":
            Theme.setTheme("light-theme");
            break;
        case "BRAMBLE_DARK_THEME":
            Theme.setTheme("dark-theme");
            break;
        case "BRAMBLE_SHOW_SIDEBAR":
            SidebarView.show();
            break;
        case "BRAMBLE_HIDE_SIDEBAR":
            SidebarView.hide();
            break;
        case "BRAMBLE_HIDE_STATUSBAR":
            StatusBar.disable();
            break;
        case "BRAMBLE_SHOW_STATUSBAR":
            StatusBar.enable();
            break;
        case "BRAMBLE_ENABLE_WORD_WRAP":
            PreferencesManager.set("wordWrap", true);
            break;
        case "BRAMBLE_DISABLE_WORD_WRAP":
            PreferencesManager.set("wordWrap", false);
            break;
        case "BRAMBLE_CONFIGURE_AUTO_CLOSE_TAGS":
            PreferencesManager.set("closeTags", args[0]);
            break;
        case "BRAMBLE_OPEN_SVG_AS_XML":
            skipCallback = true;
            SVGUtils.showXML(callback);
            break;
        case "BRAMBLE_OPEN_SVG_AS_IMAGE":
            skipCallback = true;
            SVGUtils.showImage(callback);
            break;
        case "BRAMBLE_SHOW_TUTORIAL":
            Tutorial.setOverride(true);
            break;
        case "BRAMBLE_HIDE_TUTORIAL":
            Tutorial.setOverride(false);
            break;
        case "BRAMBLE_SHOW_UPLOAD_FILES_DIALOG":
            // Show dialog, see extensions/default/UploadFiles
            skipCallback = true;
            CommandManager.execute("bramble.showUploadFiles").always(callback);
            break;
        case "BRAMBLE_ADD_NEW_FILE":
            skipCallback = true;
            CommandManager.execute("bramble.addFile", args[0]).always(callback);
            break;
        case "BRAMBLE_EXPORT":
            skipCallback = true;
            ArchiveUtils.archive(StartupState.project("root"), callback);
            break;
        case "RESIZE":
            // The host window was resized, update all panes
            WorkspaceManager.recomputeLayout(true);
            BrambleEvents.triggerUpdateLayoutEnd();
            break;
        case "BRAMBLE_ADD_CODE_SNIPPET":
            skipCallback = true;
            CommandManager.execute("bramble.addCodeSnippet", args[0]).always(callback);
            break;
        default:
            console.log('[Bramble] unknown command:', command);
            skipCallback = true;
            break;
        }

        if(!skipCallback) {
            callback();
        }
    }