Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
For any issues please report them on github: [extension issues](https://github.com/QuecPython/vscode-extension-issues).
## 1.0.13
- fix minor issue
- compatible with vs code 1.95.3 or higher
- fix create multiple dirs
- fix minor issue
## 1.0.12
- fix issue with firmware zip files
- update firmware download tool
Expand Down
3 changes: 2 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,8 +49,9 @@ Steps for flashing are:

## Release Notes
## 1.0.13
- fix minor issue
- compatible with vs code 1.95.3 or higher
- fix create multiple dirs
- fix minor issue
## 1.0.12
- fix issue with firmware zip files
- update firmware download tool
Expand Down
30 changes: 22 additions & 8 deletions src/api/commands.ts
Original file line number Diff line number Diff line change
Expand Up @@ -25,13 +25,7 @@ export const refreshModuleFs = vscode.commands.registerCommand(
'qpy-ide.refreshModuleFS',
async () => {
try {
setTerminalFlag(true, cmd.ilistdir);
const st = getActiveSerial();
st.handleCmd(`example.exec('usr/q_init_fs.py')\r\n`);
await utils.sleep(400);
serialEmitter.emit(cmd.ilistdir, cmd.ilistdir);
moduleFsTreeProvider.data = sortTreeNodes(moduleFsTreeProvider.data);
moduleFsTreeProvider.refresh();
await _refreshTree();
} catch {
vscode.window.showErrorMessage('Something went wrong.');
setTerminalFlag();
Expand Down Expand Up @@ -356,9 +350,16 @@ export const createDir = vscode.commands.registerCommand(

if (fullFilePath.startsWith('/usr/')) {
const st = getActiveSerial();

// this flag is monitored by EventEmitter in serialBridge.ts
setTerminalFlag(true, cmd.createDir);

newDirPath = fullFilePath;
st.handleCmd(`uos.mkdir('${fullFilePath}')\r\n`);
st.handleCmd(`import ql_fs\r\n`);
st.handleCmd(`ql_fs.mkdirs('${fullFilePath}')\r\n`);
await utils.sleep(400);

await _refreshTree(); // refresh tree view after creating folder
} else {
vscode.window.showErrorMessage('Invalid directory path.');
return;
Expand All @@ -370,6 +371,19 @@ export const createDir = vscode.commands.registerCommand(
}
);

async function _refreshTree() {
// private func to refresh folder tree view

setTerminalFlag(true, cmd.ilistdir);
const st = getActiveSerial();
st.handleCmd(`example.exec('usr/q_init_fs.py')\r\n`);
await utils.sleep(400);
serialEmitter.emit(cmd.ilistdir, cmd.ilistdir);
moduleFsTreeProvider.data = sortTreeNodes(moduleFsTreeProvider.data);
moduleFsTreeProvider.refresh();
};

// register commands to the extension
export const registerCommands = (context: vscode.ExtensionContext): void => {
context.subscriptions.push(
openConnection,
Expand Down
3 changes: 0 additions & 3 deletions src/serial/serialBridge.ts
Original file line number Diff line number Diff line change
Expand Up @@ -102,9 +102,6 @@ serialEmitter.on(`${cmd.createDir}`, async (data: string) => {
if (parentDir) {
parentDir.children.push(newDir);
moduleFsTreeProvider.refresh();
} else {
vscode.window.showErrorMessage('Unable to create directory.');
return;
}
}

Expand Down