1
0
mirror of https://github.com/stolksdorf/homebrewery.git synced 2025-12-20 18:31:29 +00:00

Ctrl p is now hijacked on the edit and share page to auto open to the brews print page

This commit is contained in:
Scott Tolksdorf
2016-05-24 22:09:51 -04:00
parent dce3f224c7
commit 56bb0e0ad8
3 changed files with 270 additions and 246 deletions

View File

@@ -15,6 +15,8 @@ var SplitPane = require('naturalcrit/splitPane/splitPane.jsx');
var Editor = require('../../editor/editor.jsx'); var Editor = require('../../editor/editor.jsx');
var BrewRenderer = require('../../brewRenderer/brewRenderer.jsx'); var BrewRenderer = require('../../brewRenderer/brewRenderer.jsx');
var HijackPrint = require('../hijackPrint.js');
const SAVE_TIMEOUT = 3000; const SAVE_TIMEOUT = 3000;
@@ -54,10 +56,13 @@ var EditPage = React.createClass({
if(this.state.isSaving || this.state.isPending){ if(this.state.isSaving || this.state.isPending){
return 'You have unsaved changes!'; return 'You have unsaved changes!';
} }
} };
document.onkeydown = HijackPrint(this.props.brew.shareId);
}, },
componentWillUnmount: function() { componentWillUnmount: function() {
window.onbeforeunload = function(){}; window.onbeforeunload = function(){};
document.onkeydown = function(){};
}, },
handleSplitMove : function(){ handleSplitMove : function(){

View File

@@ -0,0 +1,10 @@
module.exports = function(shareId){
return function(event){
event = event || window.event;
if(event.ctrlKey && event.keyCode == 80){
var win = window.open(`/homebrew/print/${shareId}?dialog=true`, '_blank');
win.focus();
event.preventDefault();
}
};
};

View File

@@ -9,6 +9,8 @@ var PrintLink = require('../../navbar/print.navitem.jsx');
var BrewRenderer = require('../../brewRenderer/brewRenderer.jsx'); var BrewRenderer = require('../../brewRenderer/brewRenderer.jsx');
var HijackPrint = require('../hijackPrint.js');
var SharePage = React.createClass({ var SharePage = React.createClass({
getDefaultProps: function() { getDefaultProps: function() {
return { return {
@@ -23,6 +25,13 @@ var SharePage = React.createClass({
}; };
}, },
componentDidMount: function() {
document.onkeydown = HijackPrint(this.props.brew.shareId);
},
componentWillUnmount: function() {
document.onkeydown = function(){};
},
render : function(){ render : function(){
return <div className='sharePage page'> return <div className='sharePage page'>
<Navbar> <Navbar>