Commit Graph

125 Commits

Author SHA1 Message Date
Hugo Holgersson e8a7abb679 Move the prebuilt macOS icon to data/icons 2022-10-23 15:58:09 -04:00
Hugo Holgersson c0b09ae95a Use the Command key (not Ctrl) on macOS
For example, on macOS, Cmd+F opens Find.
Ctrl+F is kept on other OSes. The same goes
for other standard key commands, like Cmd+S etc.
2022-10-23 15:58:09 -04:00
Hugo Holgersson 9a7ced4bc4 Build logic for installing Diffuse as a native macOS app
Tested on macOS 12.5:

  brew install meson python3 py3cairo pygobject3 gtk+3
  meson setup build
  cd build
  meson compile
  meson test
  meson install

After `meson install`, `diffuse` can be used to launch a
native Mac app that is installed into /Applications/Diffuse.app.

These steps could be put into a Homebrew formula, see
https://docs.brew.sh/Formula-Cookbook, as a way to
distribute Diffuse on macOS.
2022-10-23 15:58:09 -04:00
Romain Failliot 4422db52a1 Fix mypy errors and install dependencies on Fedora 2022-10-23 15:42:38 -04:00
Romain Failliot 6e96b1383e cleanups: use `get`/`set` methods instead of direct access 2022-04-15 12:45:57 -04:00
Romain Failliot e19f1a192b fix: get_text was not defined on all the widgets
* Use `get_text` when available
* Use `get_font` when Gtk.FontButton
* Raise TypeError exception otherwise
2022-04-15 12:45:46 -04:00
Romain Failliot dcea1ad68c Don't use new() in main.py 2022-04-04 14:33:01 -04:00
Romain Failliot 63ce9caa7f Don't use new() in preferences.py 2022-04-04 14:33:01 -04:00
Romain Failliot d9c0efcbd0 Don't use new() in utils.py 2022-04-04 14:33:01 -04:00
Romain Failliot 65310cf4c4 Don't use new() in widgets.py 2022-04-04 14:33:01 -04:00
Romain Failliot 5eca7db14b Remove new() in dialogs.py 2022-04-04 14:18:25 -04:00
Romain Failliot dc2e445c77 Update all translation files 2022-04-04 12:21:05 -04:00
Romain Failliot ae55dc6373 Update translation POT and FR files 2022-04-04 12:00:53 -04:00
Romain Failliot 86137e90c5 Add static typing for main 2022-01-09 19:24:34 -05:00
Romain Failliot 0a2d3cc3e0 Add static typing for vcs module 2022-01-09 18:25:15 -05:00
Romain Failliot 914ea66cc3 Add static typing for resources 2022-01-09 18:05:14 -05:00
Romain Failliot e975f66fde Add static typing for widgets 2022-01-09 18:04:39 -05:00
Romain Failliot e660acdc48 Add static typing for FileDiffViewerBase.Line 2022-01-09 16:04:05 -05:00
Romain Failliot dcfb7ad80a Add static typing for Preferences 2022-01-09 15:54:36 -05:00
Romain Failliot 92da1244fb Add static typing for utils.EncodingMenu 2022-01-09 15:33:38 -05:00
Romain Failliot 94aa293f1a Add static typing for utils.MessageDialog 2022-01-09 15:16:55 -05:00
Romain Failliot 133011bbf5 Add static typing for utils.popenReadLines 2022-01-09 15:11:55 -05:00
Romain Failliot 3b17dababd Add static typing for utils.popenRead 2022-01-09 15:10:31 -05:00
Romain Failliot dd57b466ef Add static typing for utils.safeRelativePath 2022-01-09 14:23:11 -05:00
Romain Failliot 1b03b56e6a Improve variable naming 2022-01-09 14:12:01 -05:00
Romain Failliot 7f5918704e Add static typing for VcsInterface.getRevision 2022-01-09 13:56:43 -05:00
Romain Failliot bf53f3c417 Add static typing for VcsInterface.getFileTemplate 2022-01-09 13:37:57 -05:00
Creak c224d17e9a
Merge pull request #141 from MightyCreak/docs-add-dependencies
Add project dependencies and fix Python 3.8 compatibility
2022-01-09 11:04:18 -05:00
Romain Failliot 0bf760f22a fix: Python 3.8+ compatibility
Use `List` instead of `list` and `Tuple` instead of `tuple`
2022-01-09 11:01:28 -05:00
Creak 3222cfe4d9
Merge pull request #138 from Philipp91/master
Fix SyntaxError in utils.py
2022-01-09 09:23:32 -05:00
Philipp Keck 9099ea0738 Fix SyntaxError in utils.py
No idea if a lint error that 812ca1779f tried to solve -- we'll see.
2022-01-09 10:45:24 +01:00
Romain Failliot d420d7aa93 Convert some functions to static typing 2022-01-08 17:54:39 -05:00
Romain Failliot 70b1bdbb9f No python files are processed by Meson anymore
* Linters can be run sooner (before install)
* Moved some constants in the config file
* Added a new keyword in the config syntax: "option"
* Better messages when an error occurs while parsing the config
2021-11-27 21:55:49 -05:00
Romain Failliot ec7d8adde2 Fix translation string with format 2021-11-27 18:36:28 -05:00
Romain Failliot c14d765f9c Rename "Diffuse Merge Tool" to just "Diffuse" 2021-11-27 18:02:12 -05:00
Romain Failliot 124d086009 ci: call the linters on the installed directory 2021-11-24 20:27:47 -05:00
Romain Failliot 70ba837431 Remove lasting linter errors 2021-11-24 20:27:47 -05:00
Romain Failliot d89ac0540b Fix all mypy errors 2021-11-22 20:54:46 -05:00
Romain Failliot 8d25396f68 Fix all flake8 errors 2021-11-22 20:53:21 -05:00
Romain Failliot f4a446caa8 Fix some typos and convert windows-installer scripts to Python 3
The scripts are poorly converted as Windows is not really supoported
anymore and would need some love from a contributor who actually uses
Windows
2021-11-22 18:52:26 -05:00
Romain Failliot c54e346887 ci: install dependencies
* Install GTK dev dependencies
* Add requirements.txt
* Fix error that happens on CI only (?)
2021-11-21 15:32:16 -05:00
Romain Failliot 5bcd63fe27 pylint: enable import-error, no-name-in-module, no-self-use 2021-11-21 15:32:16 -05:00
Romain Failliot 032e9a398b Move all the diffuse package in its own directory
This helps the linters (pylint and flake8)
2021-11-21 15:32:16 -05:00
Romain Failliot 81e87eb161 Fix cyclic import between utils and resources 2021-11-21 15:32:07 -05:00
Romain Failliot e306b25cb9 meson: create two disctincts confs for the .in files 2021-11-21 15:29:10 -05:00
Romain Failliot 4ec26c6580 Remove unused imports 2021-11-21 15:29:10 -05:00
Romain Failliot 74f4d81aca Fix comment typo 2021-11-21 12:02:06 -05:00
Romain Failliot bf3a0b11ab Few tweaks in main.py 2021-11-21 02:18:10 -05:00
Romain Failliot 8c981d3019 Extract FileDiffViewer in the widgets module 2021-11-21 01:56:51 -05:00
Romain Failliot bdac88460f Extract ScrolledWindow in the widgets module 2021-11-21 00:15:24 -05:00