Skip to content

Commit

Permalink
update dependencies & improve the way triggering find-in-page event
Browse files Browse the repository at this point in the history
  • Loading branch information
qazbnm456 committed Jun 12, 2017
1 parent 2eb8d4d commit 15dd37d
Show file tree
Hide file tree
Showing 5 changed files with 256 additions and 261 deletions.
14 changes: 7 additions & 7 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -30,15 +30,15 @@
"dependencies": {
"axios": "^0.16.2",
"electron-localshortcut": "^0.6.1",
"fetch-jsonp": "^1.1.0",
"fetch-jsonp": "^1.1.1",
"fuse.js": "^3.0.4",
"lulumi": "^0.0.11",
"node-localstorage": "^1.3.0",
"punycode": "^2.1.0",
"strip-css-comments": "^3.0.0",
"vue": "^2.3.4",
"vue-electron": "^1.0.6",
"vue-i18n": "^7.0.1",
"vue-i18n": "^7.0.2",
"vue-router": "^2.5.3",
"vuex": "^2.3.1"
},
Expand All @@ -59,20 +59,20 @@
"chalk": "^1.1.3",
"cross-env": "^5.0.1",
"css-loader": "^0.28.4",
"del": "^2.2.2",
"del": "^3.0.0",
"devtron": "^1.4.0",
"electron": "^1.7.3",
"electron-debug": "^1.1.0",
"electron-devtools-installer": "^2.2.0",
"electron-packager": "^8.7.1",
"electron-rebuild": "^1.5.11",
"element-ui": "^1.3.5",
"eslint": "^3.19.0",
"element-ui": "^1.3.6",
"eslint": "4.0.0",
"eslint-config-airbnb-base": "^11.2.0",
"eslint-friendly-formatter": "^3.0.0",
"eslint-import-resolver-webpack": "^0.8.1",
"eslint-loader": "^1.7.1",
"eslint-plugin-html": "^2.0.3",
"eslint-plugin-html": "^3.0.0",
"eslint-plugin-import": "^2.3.0",
"extract-text-webpack-plugin": "^2.1.2",
"file-loader": "^0.11.2",
Expand All @@ -97,7 +97,7 @@
"pug": "^2.0.0-rc.2",
"pug-html-loader": "^1.1.5",
"require-dir": "^0.3.2",
"sinon": "^2.3.2",
"sinon": "^2.3.4",
"sortablejs": "^1.6.0",
"spectron": "^3.7.1",
"style-loader": "^0.18.2",
Expand Down
6 changes: 3 additions & 3 deletions src/main/js/constants/config.js
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
import path from 'path';

const lulumiRootPath = process.env.NODE_ENV === 'development'
? path.resolve(__dirname, '../../../../')
: path.resolve(__dirname, '../');
? path.resolve(__dirname, '../../../../')
: path.resolve(__dirname, '../');
const lulumiHelperPath = path.resolve(lulumiRootPath, './helper');

export default {
Expand All @@ -15,5 +15,5 @@ export default {
lulumiPreloadPath: `${lulumiHelperPath}/preload`,
lulumiPagesPath: `${lulumiHelperPath}/pages`,
lulumiPDFJSPath: `${lulumiHelperPath}/pdfjs`,
lulumiRev: 'abadae45408561ba29406b95ebd28cb160800fd2',
lulumiRev: '2eb8d4da7378fc12a65ece85f5447f1f7720a09c',
};
24 changes: 14 additions & 10 deletions src/renderer/components/BrowserMainView.vue
Original file line number Diff line number Diff line change
Expand Up @@ -793,11 +793,11 @@
menuItem.click = (menuItem, BrowserWindow) => {
this.$electron.remote.webContents.fromId(menuItem.webContentsId)
.send(`lulumi-context-menus-clicked-${menuItem.extensionId}-${menuItem.id}-${menuItem.digest}`,
event.params,
this.currentPageIndex,
menuItem,
BrowserWindow,
);
event.params,
this.currentPageIndex,
menuItem,
BrowserWindow,
);
};
const submenu = menuItem.submenu;
if (submenu) {
Expand All @@ -806,11 +806,11 @@
sub.click = (menuItem, BrowserWindow) => {
this.$electron.remote.webContents.fromId(sub.webContentsId)
.send(`lulumi-context-menus-clicked-${sub.extensionId}-${sub.id}-${sub.digest}`,
event.params,
this.currentPageIndex,
menuItem,
BrowserWindow,
);
event.params,
this.currentPageIndex,
menuItem,
BrowserWindow,
);
};
});
}
Expand Down Expand Up @@ -1017,6 +1017,10 @@
document.body.classList.add('darwin');
}
ipc.on('startFindInPage', () => {
this.getPage(this.currentPageIndex).findInPage();
});
ipc.on('open-pdf', (event, data) => {
if (this.onOpenPDF) {
this.onOpenPDF(event, data);
Expand Down
82 changes: 34 additions & 48 deletions src/renderer/components/BrowserMainView/Page.vue
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,17 @@
}
};
},
findInPage() {
if (this.hidden) {
this.findinpage.start();
this.findinpage.counter.textContent = `
${this.$t('page.findInPage.status', { activeMatch: 0, matches: 0 })} ${this.$tc('page.findInPage.match', 1)}
`;
} else {
this.findinpage.input.focus();
this.findinpage.input.select();
}
},
},
watch: {
isActive(newState) {
Expand Down Expand Up @@ -97,9 +108,7 @@
webview.addEventListener(key, this.webviewHandler(this, webviewEvents[key]));
});
const ipc = this.$electron.ipcRenderer;
const findinpage = {
this.findinpage = {
container: this.$refs.findinpageBar,
input: this.$refs.findinpageInput,
counter: this.$refs.findinpageCount,
Expand All @@ -108,62 +117,62 @@
endButton: this.$refs.findinpageEnd,
activeWebview: webview,
start: () => {
findinpage.counter.textContent = '';
this.findinpage.counter.textContent = '';
this.hidden = false;
this.$nextTick(() => {
findinpage.input.focus();
findinpage.input.select();
this.findinpage.input.focus();
this.findinpage.input.select();
});
if (findinpage.input.value) {
this.requestId = findinpage.activeWebview.findInPage(findinpage.input.value);
if (this.findinpage.input.value) {
this.requestId = this.findinpage.activeWebview.findInPage(this.findinpage.input.value);
}
},
end: () => {
this.hidden = true;
this.$nextTick(() => {
if (findinpage.activeWebview) {
findinpage.activeWebview.stopFindInPage('keepSelection');
if (findinpage.input === document.activeElement) {
findinpage.activeWebview.focus();
if (this.findinpage.activeWebview) {
this.findinpage.activeWebview.stopFindInPage('keepSelection');
if (this.findinpage.input === document.activeElement) {
this.findinpage.activeWebview.focus();
}
}
});
},
};
findinpage.endButton.addEventListener('click', () => {
findinpage.end();
this.findinpage.endButton.addEventListener('click', () => {
this.findinpage.end();
});
findinpage.input.addEventListener('input', (event) => {
this.findinpage.input.addEventListener('input', (event) => {
if (event.target.value) {
this.requestId = findinpage.activeWebview.findInPage(event.target.value);
this.requestId = this.findinpage.activeWebview.findInPage(event.target.value);
}
});
findinpage.input.addEventListener('keypress', (event) => {
this.findinpage.input.addEventListener('keypress', (event) => {
if (event.keyCode === 13) {
this.requestId = findinpage.activeWebview.findInPage(findinpage.input.value, {
this.requestId = this.findinpage.activeWebview.findInPage(this.findinpage.input.value, {
forward: true,
findNext: true,
});
}
});
findinpage.previous.addEventListener('click', () => {
if (findinpage.input.value) {
this.requestId = findinpage.activeWebview.findInPage(findinpage.input.value, {
this.findinpage.previous.addEventListener('click', () => {
if (this.findinpage.input.value) {
this.requestId = this.findinpage.activeWebview.findInPage(this.findinpage.input.value, {
forward: false,
findNext: true,
});
}
});
findinpage.next.addEventListener('click', () => {
if (findinpage.input.value) {
this.requestId = findinpage.activeWebview.findInPage(findinpage.input.value, {
this.findinpage.next.addEventListener('click', () => {
if (this.findinpage.input.value) {
this.requestId = this.findinpage.activeWebview.findInPage(this.findinpage.input.value, {
forward: true,
findNext: true,
});
Expand All @@ -180,42 +189,19 @@
} else {
match = 2;
}
findinpage.counter.textContent = `
this.findinpage.counter.textContent = `
${this.$t('page.findInPage.status', { activeMatch: event.result.activeMatchOrdinal, matches: event.result.matches })} ${this.$tc('page.findInPage.match', match)}
`;
}
}
});
// Every page would add a listenter to the startFindInPage event,
// so ignore the listenters warning.
ipc.setMaxListeners(0);
ipc.on('startFindInPage', () => {
if (this.pageIndex === this.$store.getters.currentPageIndex) {
if (this.hidden) {
findinpage.start();
findinpage.counter.textContent = `
${this.$t('page.findInPage.status', { activeMatch: 0, matches: 0 })} ${this.$tc('page.findInPage.match', 1)}
`;
} else {
findinpage.input.focus();
findinpage.input.select();
}
}
});
const nav = this.$parent.$el.querySelector('#nav');
webview.style.height
= `calc(100vh - ${nav.clientHeight}px)`;
this.$el.querySelector('.findinpage-bar').style.top = `${nav.clientHeight}px`;
this.navigateTo(this.page.location);
},
beforeDestroy() {
const ipc = this.$electron.ipcRenderer;
ipc.removeAllListeners([
'startFindInPage',
]);
},
};
</script>

Expand Down
Loading

0 comments on commit 15dd37d

Please sign in to comment.