Electron: OSX no Quit no Reload no Force Reload


#1

Hey Guys,

new to electron and making my first steps (also not an experienced developer). Have a strange thing with my project. I am using the fabric.js library and AngularJS. Everything is running fine till I invoke a Fabric.js function (ie. create a rectangle in the canvas). After doing this, my app is still running as before, all functions are there but I am no more able to quit my app (cmdQ) or to reload or even to force reload the app. My only way to quit the app is the “quit immediately…” function of OSX. I am also not getting relevant errors in my console. I know it is hard to tell something without seeing the project, but maybe one of you guys experiences something similar…

Any help is highly appreciated – Thanks!


#2

There are a few steps to try and see what is happening. I do not know your exact setup, but here are a few things to try:

First is it the packaged version of your app that won’t quit or the development process?

If it’s the packaged version, make sure you have menus defined and created (the top bar menu). https://electron.atom.io/docs/api/menu/#main-process shows how to do this. If you do not have these, then the keyboard shortcuts will not map.

If you have all of this, verify that you are not capturing any keyboard events within your canvas context. Start there and see if any of this helps


#3

@dennisbaskin Dennis, thank you for taking the time. I am still experimenting with the development version and running my project with “electron .” or by drag-dropping it on the electron prebuilt app.

I have my top-bar menu defined with the usual funtions like reload / force reload / show devtools etc. Actually the project is based on one of the starter boilerplates. The menu functions are there and usable either with the mouse or via the shortcuts.

I don’t think that I am capturing the mouse events via canvas - I can reach the menu with the mouse even after I create a Fabric.js object on the canvas, and I can select the respective functions inside the menu.

Funnily most of the menu functions are working (mouse and shortcut). ie. I can make my app fullscreen, open/close devtools, minimise/maximise the window etc. The only functions are gone: Quit the App / Reload the App / Force reload the app… Even the OSX close button (x) in the top right corner of the window stops working – while the minimize / maximize buttons still working fine…

I am lost somehow :slight_smile:


#4

Strange. I wish I could help more, but I do not know anything about your code. Maybe what would help is if you paste an example of some suspect code? Also Another debugging method you can try is to create a separate clean app and start adding components from your app one by one until you see the issue. Or if you are using git for version control, you can use git bisect and check where things have gone wrong.


#5

@dennisbaskin Thanks Dennis, if you would have the time for a short loo at the code:

The project is more than messy, but it is not intended as something productive – should be only a prototype for my frontend and some testings (and learning lessons) with fabric.js and electron… I would be also happy and willing to start a payed job btw.

The index.html is my file. The ang_index.html is the file from michaeljcalkins, who created the angular-fabricj.js implementation…

(https://github.com/michaeljcalkins/angular-fabric)

Would be great if you could spend a few minutes – but anyhow thank you for the time you took already!


#6

After doing some mor investigations I can say that it is apparently NOT a fabric.js or electron bug! I created a very puristic fabric.js page in the same electron installation and it is running perfectly. So the problems seems to be located somewhere else – either in a combo of AngulaJS and electron, or simply somewhere in the code implementation of michael… (or again in the combo of the implementation and electron)… A helping hand from an expert would be really highly appreciated – michael did so much work, would be a pitty not to use all that as a starting point…

Thanks and sorry again bloating the space here…