samstyle / Xpeccy

Multiplatform emulator of retro computers
MIT License
71 stars 13 forks source link

Сборка на современных macOS, поддержка Retina #81

Closed nihirash closed 4 years ago

nihirash commented 4 years ago

Fixes #70

Собственно, немного постаравшись - собрал Xpeccy на актуальной macOS, попутно пофиксил адовый блюр на Ретинах.

На маках без ретины работает все как прежде, остальные сборки затронет только тем, что я разрешил использовать HiDPI PixMap'ы - т.е. иконки на HiDPI перестанут быть страшными.

Сборка так же начала реально учитывать Info.plist.

Если это ломает твою сборку в виртуалке - я могу собирать бинарные версии под macOS на обычном маке.

Текущую сборку приложу в релизы форка - можешь оттуда забрать.

alexanderk23 commented 4 years ago

Докинул патчей на предмет сборки с SDL2 (но с ним двоит клавиатура в дебаггере) и красивостей DMG установщика.

kolnogorov commented 4 years ago

@samstyle расскажи, почему не принимаешь? PR очень хороший, на макоси теперь всё прекрасно работает - и ретина, и тёмная тема, и драг-н-дроп.

samstyle commented 4 years ago

@kolnogorov я взял из реквестов самое полезное - флаг добавил, сборку с SDL2 тоже. оформление инсталлера - это красивости, которые не жизненно важны. Стараюсь не сильно разветвлять, чтобы самому не запутаться.

nihirash commented 4 years ago

plist у тебя так и не применяется в результирующую сборку. Да и желательно его сделать хотя бы на том уровне, что у меня описано, но было бы неплохо и остальные ассоциации описать.

Обертка над QApplication нужна, чтобы через Xpeccy на маке можно было открывать образы на макоси(через ассоциации или драг-н-дроп).

samstyle commented 4 years ago

Насчёт ассоциаций файлов. Как на скриншоте сделать не позволяет религия? Обязательно надо при установке оттягивать все открываемые файлы на себя? Screenshot_20200623_165129

nihirash commented 4 years ago

info.plist не оттягивает файлы на себя. Он позволяет открывать этим приложением указанные файлы, да и дело не только в plist'е.

Файлы для открытия в macOS передаются не через параметры командной строки, а через события.

samstyle commented 4 years ago

То-то я сделал, как на скриншоте сверху, и все tzx открываются в xpeccy без всяких событий. Если тебе надо открывать именно в запущенной копии - драг-н-дропай файлы в окно.

Он позволяет открывать этим приложением указанные файлы

В нормальном мире это и называется "ассоциация типов файлов"

kolnogorov commented 4 years ago

@samstyle в твоей последней сборке (0.6.20200620) не работает ни Ретина, ни тёмная тема, ни драг-н-дроп, ни открытие по ассоциации.

В сборке @nihirash всё работает.

samstyle commented 4 years ago

Пользуйся его сборкой. Моя основная система - Linux, остальное считается придатками с пониженным приоритетом, тем более пока сам не проверю работоспособность - не сделаю, а для ябблоси эта возможность сильно ограничена.

nihirash commented 4 years ago

Как линуксоид с 15 летним стажем поражен твоим нежеланием разбираться, ну ок - тогда буду тянуть твои коммиты и собирать в своем форке.

samstyle commented 4 years ago

Открытие файлов я добавил вчера (без ассоциаций, просто открытие через события), а ретина, скорее всего, не работает, потому что я собираю с Qt5.3, а нужный флаг ввели в Qt5.6

samstyle commented 4 years ago

Последний dmg я собрал с Qt5.9. Если можно, проверьте на реальных машинах.