camunda / camunda-modeler

An integrated modeling solution for BPMN, DMN and Forms based on bpmn.io.
https://camunda.com/products/modeler
MIT License
1.51k stars 484 forks source link

Implement unified app header #2519

Open nikku opened 3 years ago

nikku commented 3 years ago

What should we do?

Implement unified app header for Windows and Linux as specified in https://github.com/camunda/camunda-modeler-design/issues/45.

image

Why should we do it?

Part of our ongoing UI overhaul.


Solution Sketch

Detailed steps outlined in this tutorial.

As an alternative we could try to re-use existing libraries that implement such feature (cf. https://github.com/camunda/camunda-modeler/issues/2519#issuecomment-950837212).


See feature spec, overall design spec.

barmac commented 3 years ago

My old (Nov 2020) research results:

  1. You can customize the title bar and remove the menu bar in Electron.
  2. Advanced customization relies on removal of the title bar completely (so-called frameless window) and then re-creating it with HTML & co. This is how it works in GitHub Desktop, which is also an Electron app.
  3. It is some effort but we have a great control over what and how we display.
  4. Alternatively, we can also just enable autohiding of the menu bar. In that case, it's displayed only when user presses Alt.

Demo of what is easily achievable:

image

Draggable region -> if you disable the title bar, you have to manually set the area where you can grab the window to move it around. This is customizable too :slightly_smiling_face:

barmac commented 3 years ago

Electron docs: https://www.electronjs.org/docs/latest/api/frameless-window

nikku commented 3 years ago

Haha, basically exactly my assessment. We don't need to synchronize regarding this anymore then :).

nikku commented 3 years ago

High level technical evaluation:

nikku commented 3 years ago

We could consider using a pre-built solution to add the desired functionality:

nikku commented 3 years ago

Considering pre-built menu solutions to build upon (or potentially fork):

nikku commented 3 years ago

Added a summary of the detailed assessment we conducted today.