Compiling the project without git installed uses a hardcoded
version with a *-dev ending in the dev versions instead of
the specific commit information after the version.
The controller class has some important methods which may be
required in multiple parts of the code. Now that class is a
singleton (that may change in the future).
The core parts have been moved to src/core.
Now the tray Icon can be disabled by the controller.
I need to reimplement a new notification system due to its
dependency with the tray icon, they are disabled in this actual
commit.
The design was defective and I didn't expect the popularity of the project. After these changes the code will be more mantainable and understandable.
Among the changes we can see:
- A better code structure
- Decoupled button widget from its logic
- More code reuse
- Easier way to add buttons
- Specialized classes