Gentoo Archives: gentoo-commits

From: Andreas Sturmlechner <asturm@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: games-strategy/hedgewars/, games-strategy/hedgewars/files/
Date: Thu, 31 May 2018 21:16:42
Message-Id: 1527801376.9730ea41e42bac643aebba00f2a7ada845c90443.asturm@gentoo
1 commit: 9730ea41e42bac643aebba00f2a7ada845c90443
2 Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
3 AuthorDate: Thu May 31 20:23:21 2018 +0000
4 Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
5 CommitDate: Thu May 31 21:16:16 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9730ea41
7
8 games-strategy/hedgewars: Drop 0.9.23 and obsolete patches
9
10 Package-Manager: Portage-2.3.40, Repoman-2.3.9
11
12 games-strategy/hedgewars/Manifest | 2 -
13 .../hedgewars/files/hedgewars-0.9.23-qt5-1.patch | 81 ----
14 .../hedgewars/files/hedgewars-0.9.23-qt5-2.patch | 441 ---------------------
15 .../files/hedgewars-0.9.23-settings-saving.patch | 134 -------
16 .../hedgewars/hedgewars-0.9.23-r3.ebuild | 91 -----
17 5 files changed, 749 deletions(-)
18
19 diff --git a/games-strategy/hedgewars/Manifest b/games-strategy/hedgewars/Manifest
20 index 9db52a1d12c..37090b09032 100644
21 --- a/games-strategy/hedgewars/Manifest
22 +++ b/games-strategy/hedgewars/Manifest
23 @@ -1,4 +1,2 @@
24 -DIST hedgewars-src-0.9.23.tar.bz2 173042171 BLAKE2B 8458cce459e59227a92f70a1a1593ce0e222030f519e554bea067890394322e8346d062a8552472280401272691d5ebb4c2e85d9e8824b3513d70d24cca4b880 SHA512 b9bcd6d32c7bb97c2766aacbc759dd48b7a4c7a72003ab2bf31cdfac94a6e08de740a689458c276d3c35b90e89a1af6c200f98f463e9554e8b176b5706dc3090
25 DIST hedgewars-src-0.9.24.1.tar.bz2 175069915 BLAKE2B 5c49b91b9a77a110a7bc8667f9621c92d638950071c8db7493b7797c2e504a214052fad6ae8554d844146eecabd794529891aebf4e54ee73f8a447ab11c6c7da SHA512 b0b166c807e0d08a763e5e88e178d6e629baa420685bbfe381db7b5ecf003175892f8c2e3b75f1f6d7663335bd5b417d1a2afdc89b9d56b348b056ee3490ed2f
26 -DIST hedgewars_0.9.22-dfsg-7.debian.tar.xz 79016 BLAKE2B dda854b87db808520e3b6405e6eb28db085d23b78e4cdcce25a94992bc2551e2436401766cc39bf52fb7c5ad0e946a9792cc333813454fdfd615d2569e3fb16a SHA512 011d44989b6fcad9ae7a20fcb11a4e2b9a75d1ace6c6e4c2139cd7e67f13ea21d90b6c8a7afb76fa9a06c32537b00b8b4b7689967b3019300e93a7a6fe3e0fbf
27 DIST hedgewars_0.9.23-dfsg-2.debian.tar.xz 77488 BLAKE2B 5de6fa2ad91f1346f679d07b3b445bd119d2cdd3c715ace20fc36abe726330ccf9a9b69ec56c58cfca4cc6256ff248b0cc0b0e27caf2a79df0f1662ea7727e8e SHA512 03680446930279178ddff85a87fc27b7c26ad6d850c8f26571517ebbd6dff296db216da6b56d4bd55c659786bc5c76e2b67a63052ee38e150655e60c08f7c491
28
29 diff --git a/games-strategy/hedgewars/files/hedgewars-0.9.23-qt5-1.patch b/games-strategy/hedgewars/files/hedgewars-0.9.23-qt5-1.patch
30 deleted file mode 100644
31 index fdd15108b5d..00000000000
32 --- a/games-strategy/hedgewars/files/hedgewars-0.9.23-qt5-1.patch
33 +++ /dev/null
34 @@ -1,81 +0,0 @@
35 -# User unc0rr
36 -# Node ID 8869b5256720f0378bf9d5edc68ecb7e1f376039
37 -Configure for Qt5
38 -
39 ---- a/QTfrontend/CMakeLists.txt Mon Jan 15 12:15:56 2018 -0500
40 -+++ b/QTfrontend/CMakeLists.txt Wed Jan 24 21:05:34 2018 +0100
41 -@@ -1,24 +1,6 @@
42 --# Configure for Qt4
43 --set(QT_MIN_VERSION "4.7.0")
44 --include(CheckLibraryExists)
45 -+find_package(Qt5 COMPONENTS Core Gui Network Widgets)
46 -
47 --set(QT_USE_QTCORE TRUE)
48 --set(QT_USE_QTGUI TRUE)
49 --set(QT_USE_QTNETWORK TRUE)
50 --set(QT_USE_QTSVG FALSE)
51 --set(QT_USE_QTXML FALSE)
52 --set(QT_USE_QTOPENGL FALSE)
53 --set(QT_USE_QTMAIN TRUE)
54 --
55 --find_package(Qt4 REQUIRED)
56 --include(${QT_USE_FILE})
57 --
58 --# https://bugreports.qt-project.org/browse/QTBUG-17333
59 --if(APPLE AND
60 -- ${QTVERSION} VERSION_GREATER "4.7.0" AND
61 -- ${QTVERSION} VERSION_LESS "4.7.4")
62 -- message(FATAL_ERROR "This version of Qt is known *not* to work, please update or use a lower version")
63 --endif()
64 -+include(CheckLibraryExists)
65 -
66 - find_package(SDL2 REQUIRED)
67 - find_package(SDL2_mixer 2 REQUIRED) #audio in SDLInteraction
68 -@@ -159,9 +141,9 @@
69 - endif()
70 - endif()
71 -
72 --qt4_add_resources(hwfr_rez_src ${hwfr_rez})
73 -+qt5_add_resources(hwfr_rez_src ${hwfr_rez})
74 -
75 --qt4_wrap_cpp(hwfr_moc_srcs ${hwfr_moc_hdrs})
76 -+qt5_wrap_cpp(hwfr_moc_srcs ${hwfr_moc_hdrs})
77 -
78 -
79 - if(APPLE)
80 -@@ -198,14 +180,14 @@
81 -
82 - list(APPEND HW_LINK_LIBS
83 - physfs physlayer
84 -- ${QT_LIBRARIES}
85 -+ Qt5::Core Qt5::Gui Qt5::Network Qt5::Widgets
86 - )
87 -
88 - list(APPEND HW_LINK_LIBS
89 - ${SDL2_LIBRARY}
90 - ${SDL2_MIXER_LIBRARIES}
91 - )
92 --
93 -+
94 - if(WIN32 AND NOT UNIX)
95 - if(NOT SDL2_LIBRARY)
96 - list(APPEND HW_LINK_LIBS SDL2)
97 ---- a/share/hedgewars/Data/Locale/CMakeLists.txt Mon Jan 15 12:15:56 2018 -0500
98 -+++ b/share/hedgewars/Data/Locale/CMakeLists.txt Wed Jan 24 21:05:34 2018 +0100
99 -@@ -1,5 +1,4 @@
100 --find_package(Qt4 REQUIRED)
101 --include(${QT_USE_FILE})
102 -+find_package(Qt5 COMPONENTS LinguistTools)
103 -
104 - file(GLOB txttrans2 ??.txt)
105 - file(GLOB txttrans5 ?????.txt)
106 -@@ -9,7 +8,7 @@
107 - file(GLOB campaignfiles campaigns_*.txt)
108 - file(GLOB tipfiles tips_*.xml)
109 -
110 --QT4_ADD_TRANSLATION(QM ${tsfiles})
111 -+QT5_ADD_TRANSLATION(QM ${tsfiles})
112 -
113 - add_custom_target (release-translation ALL
114 - DEPENDS ${QM}
115 -
116
117 diff --git a/games-strategy/hedgewars/files/hedgewars-0.9.23-qt5-2.patch b/games-strategy/hedgewars/files/hedgewars-0.9.23-qt5-2.patch
118 deleted file mode 100644
119 index f174cc15633..00000000000
120 --- a/games-strategy/hedgewars/files/hedgewars-0.9.23-qt5-2.patch
121 +++ /dev/null
122 @@ -1,441 +0,0 @@
123 -# User unc0rr
124 -# Node ID fc47fc4af6bd6f399035923453cd85c8f50146f7
125 -Finish porting. Seems to work, but no thorough testing has been performed
126 -
127 ---- a/QTfrontend/CMakeLists.txt Wed Jan 24 21:05:34 2018 +0100
128 -+++ b/QTfrontend/CMakeLists.txt Wed Jan 24 22:20:10 2018 +0100
129 -@@ -1,5 +1,7 @@
130 - find_package(Qt5 COMPONENTS Core Gui Network Widgets)
131 -
132 -+include_directories(${Qt5Core_PRIVATE_INCLUDE_DIRS})
133 -+
134 - include(CheckLibraryExists)
135 -
136 - find_package(SDL2 REQUIRED)
137 ---- a/QTfrontend/main.cpp Wed Jan 24 21:05:34 2018 +0100
138 -+++ b/QTfrontend/main.cpp Wed Jan 24 22:20:10 2018 +0100
139 -@@ -20,7 +20,6 @@
140 -
141 - #include <QTranslator>
142 - #include <QLocale>
143 --#include <QPlastiqueStyle>
144 - #include <QRegExp>
145 - #include <QMap>
146 - #include <QSettings>
147 -@@ -252,7 +251,7 @@
148 - splash.show();
149 - #endif
150 -
151 -- app.setStyle(new QPlastiqueStyle());
152 -+ //app.setStyle(new QPlastiqueStyle());
153 -
154 - QDateTime now = QDateTime::currentDateTime();
155 - srand(now.toTime_t());
156 -@@ -332,7 +331,7 @@
157 -
158 - // Fallback to current input locale if "C" locale is returned
159 - if(cc == "C")
160 -- cc = HWApplication::keyboardInputLocale().name();
161 -+ cc = HWApplication::inputMethod()->locale().name();
162 - }
163 -
164 - // Load locale files into translators
165 ---- a/QTfrontend/model/ammoSchemeModel.cpp Wed Jan 24 21:05:34 2018 +0100
166 -+++ b/QTfrontend/model/ammoSchemeModel.cpp Wed Jan 24 22:20:10 2018 +0100
167 -@@ -569,7 +569,7 @@
168 - << QVariant() // scriptparam 43
169 - ;
170 -
171 -- QList<QVariant> construction;
172 -+ QList<QVariant> construction;
173 - construction
174 - << predefSchemesNames[10] // name 0
175 - << QVariant(false) // fortsmode 1
176 -@@ -617,7 +617,7 @@
177 - << QVariant() // scriptparam 43
178 - ;
179 -
180 -- QList<QVariant> hedgeeditor;
181 -+ QList<QVariant> hedgeeditor;
182 - hedgeeditor
183 - << predefSchemesNames[11] // name 0
184 - << QVariant(false) // fortsmode 1
185 -@@ -896,10 +896,12 @@
186 - return;
187 - }
188 -
189 -+ beginResetModel();
190 -+
191 - cfg[cfg.size()-1] = cfg[cfg.size()-1].mid(1);
192 -
193 - for(int i = 0; i < cfg.size(); ++i)
194 - netScheme[i] = QVariant(cfg[i]);
195 -
196 -- reset();
197 -+ endResetModel();
198 - }
199 ---- a/QTfrontend/model/playerslistmodel.cpp Wed Jan 24 21:05:34 2018 +0100
200 -+++ b/QTfrontend/model/playerslistmodel.cpp Wed Jan 24 22:20:10 2018 +0100
201 -@@ -309,10 +309,10 @@
202 - }
203 -
204 - if(index.data(Ignore).toBool())
205 -- setData(index, Qt::gray, Qt::ForegroundRole);
206 -+ setData(index, QColor(Qt::gray), Qt::ForegroundRole);
207 - else
208 - if(index.data(Friend).toBool())
209 -- setData(index, Qt::green, Qt::ForegroundRole);
210 -+ setData(index, QColor(Qt::green), Qt::ForegroundRole);
211 - else
212 - setData(index, QBrush(QColor(0xff, 0xcc, 0x00)), Qt::ForegroundRole);
213 - }
214 ---- a/QTfrontend/net/hwmap.cpp Wed Jan 24 21:05:34 2018 +0100
215 -+++ b/QTfrontend/net/hwmap.cpp Wed Jan 24 22:20:10 2018 +0100
216 -@@ -79,7 +79,7 @@
217 - {
218 - quint8 *buf = (quint8*) readbuffer.constData();
219 - QImage im(buf, 256, 128, QImage::Format_Mono);
220 -- im.setNumColors(2);
221 -+ im.setColorCount(2);
222 -
223 - QPixmap px(QSize(256, 128));
224 - QPixmap pxres(px.size());
225 ---- a/QTfrontend/net/netudpwidget.cpp Wed Jan 24 21:05:34 2018 +0100
226 -+++ b/QTfrontend/net/netudpwidget.cpp Wed Jan 24 22:20:10 2018 +0100
227 -@@ -33,15 +33,19 @@
228 -
229 - void HWNetUdpModel::updateList()
230 - {
231 -- games.clear();
232 -+ beginResetModel();
233 -+
234 -+ games.clear();
235 -
236 -- reset();
237 -+ endResetModel();
238 -
239 -- pUdpSocket->writeDatagram("hedgewars client", QHostAddress::Broadcast, NETGAME_DEFAULT_PORT);
240 -+ pUdpSocket->writeDatagram("hedgewars client", QHostAddress::Broadcast, NETGAME_DEFAULT_PORT);
241 - }
242 -
243 - void HWNetUdpModel::onClientRead()
244 - {
245 -+ beginResetModel();
246 -+
247 - while (pUdpSocket->hasPendingDatagrams())
248 - {
249 - QByteArray datagram;
250 -@@ -60,7 +64,7 @@
251 - }
252 - }
253 -
254 -- reset();
255 -+ endResetModel();
256 - }
257 -
258 - QVariant HWNetUdpModel::data(const QModelIndex &index,
259 ---- a/QTfrontend/net/newnetclient.cpp Wed Jan 24 21:05:34 2018 +0100
260 -+++ b/QTfrontend/net/newnetclient.cpp Wed Jan 24 22:20:10 2018 +0100
261 -@@ -242,7 +242,7 @@
262 - void HWNewNet::SendPasswordHash(const QString & hash)
263 - {
264 - // don't send it immediately, only store and check if server asked us for a password
265 -- m_passwordHash = hash.toAscii();
266 -+ m_passwordHash = hash.toLatin1();
267 -
268 - maybeSendPassword();
269 - }
270 -@@ -271,7 +271,7 @@
271 - if (lst[0] == "ERROR")
272 - {
273 - if (lst.size() == 2)
274 -- emit Error(HWApplication::translate("server", lst[1].toAscii().constData()));
275 -+ emit Error(HWApplication::translate("server", lst[1].toLatin1().constData()));
276 - else
277 - emit Error("Unknown error");
278 - return;
279 -@@ -280,7 +280,7 @@
280 - if (lst[0] == "WARNING")
281 - {
282 - if (lst.size() == 2)
283 -- emit Warning(HWApplication::translate("server", lst[1].toAscii().constData()));
284 -+ emit Warning(HWApplication::translate("server", lst[1].toLatin1().constData()));
285 - else
286 - emit Warning("Unknown warning");
287 - return;
288 -@@ -447,7 +447,7 @@
289 - while(flags.size() > 1)
290 - {
291 - flags.remove(0, 1);
292 -- char c = flags[0].toAscii();
293 -+ char c = flags[0].toLatin1();
294 - bool inRoom = (netClientState == InRoom || netClientState == InGame);
295 -
296 - switch(c)
297 -@@ -673,7 +673,7 @@
298 - }
299 - m_game_connected = false;
300 - Disconnect();
301 -- emit disconnected(HWApplication::translate("server", lst[1].toAscii().constData()));
302 -+ emit disconnected(HWApplication::translate("server", lst[1].toLatin1().constData()));
303 - return;
304 - }
305 -
306 -@@ -727,7 +727,7 @@
307 - }
308 - for(int i = 1; i < lst.size(); ++i)
309 - {
310 -- QByteArray em = QByteArray::fromBase64(lst[i].toAscii());
311 -+ QByteArray em = QByteArray::fromBase64(lst[i].toLatin1());
312 - emit FromNet(em);
313 - }
314 - return;
315 -@@ -1155,18 +1155,18 @@
316 - return;
317 -
318 - QString hash = QCryptographicHash::hash(
319 -- m_clientSalt.toAscii()
320 -- .append(m_serverSalt.toAscii())
321 -+ m_clientSalt.toLatin1()
322 -+ .append(m_serverSalt.toLatin1())
323 - .append(m_passwordHash)
324 -- .append(cProtoVer->toAscii())
325 -+ .append(cProtoVer->toLatin1())
326 - .append("!hedgewars")
327 - , QCryptographicHash::Sha1).toHex();
328 -
329 - m_serverHash = QCryptographicHash::hash(
330 -- m_serverSalt.toAscii()
331 -- .append(m_clientSalt.toAscii())
332 -+ m_serverSalt.toLatin1()
333 -+ .append(m_clientSalt.toLatin1())
334 - .append(m_passwordHash)
335 -- .append(cProtoVer->toAscii())
336 -+ .append(cProtoVer->toLatin1())
337 - .append("!hedgewars")
338 - , QCryptographicHash::Sha1).toHex();
339 -
340 ---- a/QTfrontend/net/proto.h Wed Jan 24 21:05:34 2018 +0100
341 -+++ b/QTfrontend/net/proto.h Wed Jan 24 22:20:10 2018 +0100
342 -@@ -22,7 +22,7 @@
343 - #include <QByteArray>
344 - #include <QString>
345 - #include <QStringList>
346 --
347 -+#include <QObject>
348 -
349 - class HWProto : public QObject
350 - {
351 ---- a/QTfrontend/ui/dialog/upload_video.cpp Wed Jan 24 21:05:34 2018 +0100
352 -+++ b/QTfrontend/ui/dialog/upload_video.cpp Wed Jan 24 22:20:10 2018 +0100
353 -@@ -38,7 +38,7 @@
354 -
355 - // User-agent string used in http requests.
356 - // Don't make it a global varibale - crash on linux because of cVersionString
357 --#define USER_AGENT ("Hedgewars-QtFrontend/" + *cVersionString).toAscii()
358 -+#define USER_AGENT ("Hedgewars-QtFrontend/" + *cVersionString).toLatin1()
359 -
360 - // This is developer key obtained from http://code.google.com/apis/youtube/dashboard/
361 - // If you are reusing this code outside Hedgewars, don't use this developer key,
362 -@@ -193,7 +193,7 @@
363 -
364 - QString account(QUrl::toPercentEncoding(leAccount->text()));
365 - QString pass(QUrl::toPercentEncoding(lePassword->text()));
366 -- QByteArray data = QString("Email=%1&Passwd=%2&service=youtube&source=Hedgewars").arg(account).arg(pass).toAscii();
367 -+ QByteArray data = QString("Email=%1&Passwd=%2&service=youtube&source=Hedgewars").arg(account).arg(pass).toUtf8();
368 -
369 - QNetworkReply *reply = netManager->post(request, data);
370 - connect(reply, SIGNAL(finished()), this, SLOT(authFinished()));
371 -@@ -246,7 +246,7 @@
372 - return;
373 - }
374 -
375 -- QByteArray auth = ("GoogleLogin auth=" + authToken).toAscii();
376 -+ QByteArray auth = ("GoogleLogin auth=" + authToken).toLatin1();
377 -
378 - // We have authenticated, now we can send metadata and start upload
379 - // Documentation is here: https://developers.google.com/youtube/2.0/developers_guide_protocol_resumable_uploads#Resumable_uploads
380 ---- a/QTfrontend/ui/page/pageadmin.cpp Wed Jan 24 21:05:34 2018 +0100
381 -+++ b/QTfrontend/ui/page/pageadmin.cpp Wed Jan 24 22:20:10 2018 +0100
382 -@@ -98,7 +98,7 @@
383 - << tr("Expiration")
384 - << tr("Reason")
385 - );
386 -- twBans->horizontalHeader()->setResizeMode(2, QHeaderView::Stretch);
387 -+ twBans->horizontalHeader()->setSectionResizeMode(2, QHeaderView::Stretch);
388 - twBans->setEditTriggers(QAbstractItemView::NoEditTriggers);
389 - twBans->setSelectionBehavior(QAbstractItemView::SelectRows);
390 - twBans->setSelectionMode(QAbstractItemView::SingleSelection);
391 ---- a/QTfrontend/ui/page/pagenet.cpp Wed Jan 24 21:05:34 2018 +0100
392 -+++ b/QTfrontend/ui/page/pagenet.cpp Wed Jan 24 22:20:10 2018 +0100
393 -@@ -99,7 +99,7 @@
394 - {
395 - tvServersList->setModel(new HWNetUdpModel(tvServersList));
396 -
397 -- tvServersList->horizontalHeader()->setResizeMode(0, QHeaderView::Stretch);
398 -+ tvServersList->horizontalHeader()->setSectionResizeMode(0, QHeaderView::Stretch);
399 -
400 - static_cast<HWNetServersModel *>(tvServersList->model())->updateList();
401 -
402 ---- a/QTfrontend/ui/page/pageroomslist.cpp Wed Jan 24 21:05:34 2018 +0100
403 -+++ b/QTfrontend/ui/page/pageroomslist.cpp Wed Jan 24 22:20:10 2018 +0100
404 -@@ -154,7 +154,7 @@
405 - roomsList = new RoomTableView(this);
406 - roomsList->setSelectionBehavior(QAbstractItemView::SelectRows);
407 - roomsList->verticalHeader()->setVisible(false);
408 -- roomsList->horizontalHeader()->setResizeMode(QHeaderView::Interactive);
409 -+ roomsList->horizontalHeader()->setSectionResizeMode(QHeaderView::Interactive);
410 - roomsList->setAlternatingRowColors(true);
411 - roomsList->setShowGrid(false);
412 - roomsList->setSelectionMode(QAbstractItemView::SingleSelection);
413 -@@ -587,7 +587,7 @@
414 -
415 - h->setSortIndicatorShown(true);
416 - h->setSortIndicator(RoomsListModel::StateColumn, Qt::AscendingOrder);
417 -- h->setResizeMode(RoomsListModel::NameColumn, QHeaderView::Stretch);
418 -+ h->setSectionResizeMode(RoomsListModel::NameColumn, QHeaderView::Stretch);
419 -
420 - if (!restoreHeaderState())
421 - {
422 ---- a/QTfrontend/ui/page/pagevideos.cpp Wed Jan 24 21:05:34 2018 +0100
423 -+++ b/QTfrontend/ui/page/pagevideos.cpp Wed Jan 24 22:20:10 2018 +0100
424 -@@ -133,8 +133,8 @@
425 - filesTable->setMinimumWidth(400);
426 -
427 - QHeaderView * header = filesTable->horizontalHeader();
428 -- header->setResizeMode(vcName, QHeaderView::ResizeToContents);
429 -- header->setResizeMode(vcSize, QHeaderView::Fixed);
430 -+ header->setSectionResizeMode(vcName, QHeaderView::ResizeToContents);
431 -+ header->setSectionResizeMode(vcSize, QHeaderView::Fixed);
432 - header->resizeSection(vcSize, 100);
433 - header->setStretchLastSection(true);
434 -
435 -@@ -851,7 +851,7 @@
436 -
437 - static QString unprotectPass(QString str)
438 - {
439 -- QByteArray array = QByteArray::fromBase64(str.toAscii());
440 -+ QByteArray array = QByteArray::fromBase64(str.toLatin1());
441 - for (int i = 0; i < array.size(); i++)
442 - array[i] = array[i] ^ 0xC4 ^ i;
443 - return QString::fromUtf8(array);
444 ---- a/QTfrontend/ui/widget/about.cpp Wed Jan 24 21:05:34 2018 +0100
445 -+++ b/QTfrontend/ui/widget/about.cpp Wed Jan 24 22:20:10 2018 +0100
446 -@@ -26,6 +26,7 @@
447 - #include <QMessageBox>
448 - #include <QNetworkReply>
449 - #include <QDebug>
450 -+#include <QMimeData>
451 - #include "hwconsts.h"
452 - #include "SDLInteraction.h"
453 - #include "SDL.h"
454 ---- a/QTfrontend/ui/widget/chatwidget.cpp Wed Jan 24 21:05:34 2018 +0100
455 -+++ b/QTfrontend/ui/widget/chatwidget.cpp Wed Jan 24 22:20:10 2018 +0100
456 -@@ -32,6 +32,7 @@
457 - #include <QSortFilterProxyModel>
458 - #include <QMenu>
459 - #include <QScrollBar>
460 -+#include <QMimeData>
461 -
462 - #include "DataManager.h"
463 - #include "hwconsts.h"
464 -@@ -312,7 +313,7 @@
465 - else if (link.scheme() == "hwnick")
466 - {
467 - // decode nick
468 -- QString nick = QString::fromUtf8(QByteArray::fromBase64(link.encodedQuery()));
469 -+ QString nick = QString::fromUtf8(QByteArray::fromBase64(link.query(QUrl::FullyDecoded).toLatin1()));
470 - QModelIndexList mil = chatNicks->model()->match(chatNicks->model()->index(0, 0), Qt::DisplayRole, nick);
471 -
472 - bool isOffline = (mil.size() < 1);
473 -@@ -374,10 +375,10 @@
474 - {
475 - if (nickname != m_userNick)
476 - return QString("<a href=\"hwnick://?%1\" class=\"nick\">%2</a>").arg(
477 -- QString(nickname.toUtf8().toBase64())).arg(Qt::escape(nickname));
478 -+ QString(nickname.toUtf8().toBase64())).arg(nickname.toHtmlEscaped());
479 -
480 - // unlinked nick (if own one)
481 -- return QString("<span class=\"nick\">%1</span>").arg(Qt::escape(nickname));
482 -+ return QString("<span class=\"nick\">%1</span>").arg(nickname.toHtmlEscaped());
483 - }
484 -
485 - const QRegExp HWChatWidget::URLREGEXP = QRegExp("(http(s)?://)?(www\\.)?((([^/:?&#]+\\.)?hedgewars\\.org|code\\.google\\.com|googlecode\\.com|hh\\.unit22\\.org)(/[^ ]*)?)");
486 -@@ -399,7 +400,7 @@
487 -
488 - QString HWChatWidget::messageToHTML(const QString & message)
489 - {
490 -- QString formattedStr = Qt::escape(message);
491 -+ QString formattedStr = message.toHtmlEscaped();
492 - // link some urls
493 - formattedStr = formattedStr.replace(URLREGEXP, "<a href=\"http\\2://\\4\">\\4</a>");
494 - return formattedStr;
495 -@@ -606,9 +607,9 @@
496 - {
497 - addLine("msg_PlayerInfo", QString(" >>> %1 - <span class=\"ipaddress\">%2</span> <span class=\"version\">%3</span> <span class=\"location\">%4</span>")
498 - .arg(linkedNick(nick))
499 -- .arg(Qt::escape(ip == "[]"?"":ip))
500 -- .arg(Qt::escape(version))
501 -- .arg(Qt::escape(roomInfo))
502 -+ .arg(QString(ip == "[]"?"":ip).toHtmlEscaped())
503 -+ .arg(version.toHtmlEscaped())
504 -+ .arg(roomInfo.toHtmlEscaped())
505 - );
506 - }
507 -
508 ---- a/QTfrontend/ui/widget/feedbackdialog.cpp Wed Jan 24 21:05:34 2018 +0100
509 -+++ b/QTfrontend/ui/widget/feedbackdialog.cpp Wed Jan 24 22:20:10 2018 +0100
510 -@@ -20,7 +20,7 @@
511 - #include <QLineEdit>
512 - #include <QTextBrowser>
513 - #include <QLabel>
514 --#include <QHttp>
515 -+#include <QNetworkAccessManager>
516 - #include <QSysInfo>
517 - #include <QDebug>
518 - #include <QBuffer>
519 -@@ -474,7 +474,7 @@
520 - this, SLOT(finishedSlot(QNetworkReply*)));
521 -
522 - QNetworkRequest header(QUrl("https://hedgewars.org/feedback/?submit"));
523 -- header.setRawHeader("Content-Length", QString::number(body.size()).toAscii());
524 -+ header.setRawHeader("Content-Length", QString::number(body.size()).toLatin1());
525 - header.setRawHeader("Content-Type", "application/x-www-form-urlencoded");
526 -
527 - nam->post(header, body);
528 ---- a/QTfrontend/ui/widget/keybinder.cpp Wed Jan 24 21:05:34 2018 +0100
529 -+++ b/QTfrontend/ui/widget/keybinder.cpp Wed Jan 24 22:20:10 2018 +0100
530 -@@ -154,7 +154,7 @@
531 - curTable = new QTableWidget(0, 2);
532 - curTable->verticalHeader()->setVisible(false);
533 - curTable->horizontalHeader()->setVisible(false);
534 -- curTable->horizontalHeader()->setResizeMode(QHeaderView::Stretch);
535 -+ curTable->horizontalHeader()->setSectionResizeMode(QHeaderView::Stretch);
536 - curTable->verticalHeader()->setDefaultSectionSize(rowHeight);
537 - curTable->setShowGrid(false);
538 - curTable->setStyleSheet("QTableWidget { border: none; } ");
539 ---- a/QTfrontend/ui/widget/mapContainer.cpp Wed Jan 24 21:05:34 2018 +0100
540 -+++ b/QTfrontend/ui/widget/mapContainer.cpp Wed Jan 24 22:20:10 2018 +0100
541 -@@ -984,7 +984,7 @@
542 - {
543 - m_theme = selectedTheme = current.data(ThemeModel::ActualNameRole).toString();
544 - m_themeID = current.row();
545 -- QIcon icon = qVariantValue<QIcon>(current.data(Qt::DecorationRole));
546 -+ QIcon icon = current.data(Qt::DecorationRole).value<QIcon>();
547 - //QSize iconSize = icon.actualSize(QSize(65535, 65535));
548 - //btnTheme->setFixedHeight(64);
549 - //btnTheme->setIconSize(iconSize);
550 ---- a/QTfrontend/util/FileEngine.h Wed Jan 24 21:05:34 2018 +0100
551 -+++ b/QTfrontend/util/FileEngine.h Wed Jan 24 22:20:10 2018 +0100
552 -@@ -1,9 +1,7 @@
553 - #ifndef _FileEngine_h
554 - #define _FileEngine_h
555 -
556 --#include <QAbstractFileEngine>
557 --#include <QAbstractFileEngineHandler>
558 --#include <QAbstractFileEngineIterator>
559 -+#include <private/qabstractfileengine_p.h>
560 - #include <QDateTime>
561 -
562 - #include "physfs.h"
563 -
564
565 diff --git a/games-strategy/hedgewars/files/hedgewars-0.9.23-settings-saving.patch b/games-strategy/hedgewars/files/hedgewars-0.9.23-settings-saving.patch
566 deleted file mode 100644
567 index 3997ac37649..00000000000
568 --- a/games-strategy/hedgewars/files/hedgewars-0.9.23-settings-saving.patch
569 +++ /dev/null
570 @@ -1,134 +0,0 @@
571 -From f8e302e5ac5033c1b7ac5d83d6d8df3f15eb6178 Mon Sep 17 00:00:00 2001
572 -From: Wuzzy <Wuzzy2@××××.ru>
573 -Date: Tue, 27 Mar 2018 17:32:23 +0200
574 -Subject: [PATCH] Fix team files and settings not saving properly, and remove
575 - FileEngine stuff from DLC
576 -
577 -This is done by using absolute paths and removing physfs://
578 ----
579 - QTfrontend/game.cpp | 4 ++--
580 - QTfrontend/team.cpp | 10 +++++-----
581 - QTfrontend/ui/page/pagedata.cpp | 6 ------
582 - QTfrontend/util/DataManager.cpp | 4 ++--
583 - 4 files changed, 9 insertions(+), 15 deletions(-)
584 -
585 -diff --git a/QTfrontend/game.cpp b/QTfrontend/game.cpp
586 -index 224c38350..f071ef734 100644
587 ---- a/QTfrontend/game.cpp
588 -+++ b/QTfrontend/game.cpp
589 -@@ -536,7 +536,7 @@ void HWGame::abort()
590 - void HWGame::sendCampaignVar(const QByteArray &varToSend)
591 - {
592 - QString varToFind = QString::fromUtf8(varToSend);
593 -- QSettings teamfile(QString("physfs://Teams/%1.hwt").arg(campaignTeam), QSettings::IniFormat, 0);
594 -+ QSettings teamfile(QString(cfgdir->absolutePath() + "/Teams/%1.hwt").arg(campaignTeam), QSettings::IniFormat, 0);
595 - teamfile.setIniCodec("UTF-8");
596 - QString varValue = teamfile.value("Campaign " + campaign + "/" + varToFind, "").toString();
597 - QByteArray command;
598 -@@ -553,7 +553,7 @@ void HWGame::writeCampaignVar(const QByteArray & varVal)
599 - QString varToWrite = QString::fromUtf8(varVal.left(i));
600 - QString varValue = QString::fromUtf8(varVal.mid(i + 1));
601 -
602 -- QSettings teamfile(QString("physfs://Teams/%1.hwt").arg(campaignTeam), QSettings::IniFormat, 0);
603 -+ QSettings teamfile(QString(cfgdir->absolutePath() + "/Teams/%1.hwt").arg(campaignTeam), QSettings::IniFormat, 0);
604 - teamfile.setIniCodec("UTF-8");
605 - teamfile.setValue("Campaign " + campaign + "/" + varToWrite, varValue);
606 - }
607 -diff --git a/QTfrontend/team.cpp b/QTfrontend/team.cpp
608 -index 0586e622a..740697b7f 100644
609 ---- a/QTfrontend/team.cpp
610 -+++ b/QTfrontend/team.cpp
611 -@@ -171,7 +171,7 @@ HWTeam & HWTeam::operator = (const HWTeam & other)
612 -
613 - bool HWTeam::loadFromFile()
614 - {
615 -- QSettings teamfile(QString("physfs://Teams/%1.hwt").arg(DataManager::safeFileName(m_name)), QSettings::IniFormat, 0);
616 -+ QSettings teamfile(QString(cfgdir->absolutePath() + "/Teams/%1.hwt").arg(DataManager::safeFileName(m_name)), QSettings::IniFormat, 0);
617 - teamfile.setIniCodec("UTF-8");
618 - m_name = teamfile.value("Team/Name", m_name).toString();
619 - m_grave = teamfile.value("Team/Grave", "Statue").toString();
620 -@@ -204,7 +204,7 @@ bool HWTeam::loadFromFile()
621 -
622 - bool HWTeam::fileExists()
623 - {
624 -- QFile f(QString("physfs://Teams/%1.hwt").arg(DataManager::safeFileName(m_name)));
625 -+ QFile f(QString(cfgdir->absolutePath() + "/Teams/%1.hwt").arg(DataManager::safeFileName(m_name)));
626 - return f.exists();
627 - }
628 -
629 -@@ -220,7 +220,7 @@ bool HWTeam::deleteFile()
630 - {
631 - if(m_isNetTeam)
632 - return false;
633 -- QFile cfgfile(QString("physfs://Teams/%1.hwt").arg(DataManager::safeFileName(m_name)));
634 -+ QFile cfgfile(QString(cfgdir->absolutePath() + "/Teams/%1.hwt").arg(DataManager::safeFileName(m_name)));
635 - cfgfile.remove();
636 - return true;
637 - }
638 -@@ -229,12 +229,12 @@ bool HWTeam::saveToFile()
639 - {
640 - if (OldTeamName != m_name)
641 - {
642 -- QFile cfgfile(QString("physfs://Teams/%1.hwt").arg(DataManager::safeFileName(OldTeamName)));
643 -+ QFile cfgfile(QString(cfgdir->absolutePath() + "/Teams/%1.hwt").arg(DataManager::safeFileName(OldTeamName)));
644 - cfgfile.remove();
645 - OldTeamName = m_name;
646 - }
647 -
648 -- QString fileName = QString("physfs://Teams/%1.hwt").arg(DataManager::safeFileName(m_name));
649 -+ QString fileName = QString(cfgdir->absolutePath() + "/Teams/%1.hwt").arg(DataManager::safeFileName(m_name));
650 - DataManager::ensureFileExists(fileName);
651 - QSettings teamfile(fileName, QSettings::IniFormat, 0);
652 - teamfile.setIniCodec("UTF-8");
653 -diff --git a/QTfrontend/ui/page/pagedata.cpp b/QTfrontend/ui/page/pagedata.cpp
654 -index ccdea5ac4..cc7d17b2a 100644
655 ---- a/QTfrontend/ui/page/pagedata.cpp
656 -+++ b/QTfrontend/ui/page/pagedata.cpp
657 -@@ -31,8 +31,6 @@
658 - #include "pagedata.h"
659 - #include "databrowser.h"
660 - #include "hwconsts.h"
661 --#include "DataManager.h"
662 --#include "FileEngine.h"
663 -
664 - QLayout * PageDataDownload::bodyLayoutDefinition()
665 - {
666 -@@ -197,9 +195,6 @@ void PageDataDownload::fileDownloaded()
667 - out.write(reply->readAll());
668 -
669 - out.close();
670 --
671 -- // now mount it
672 -- FileEngineHandler::mount(fileName);
673 - }
674 - }
675 -
676 -@@ -229,7 +224,6 @@ void PageDataDownload::onPageLeave()
677 - if (m_contentDownloaded)
678 - {
679 - m_contentDownloaded = false;
680 -- //DataManager::instance().reload();
681 - }
682 - }
683 -
684 -diff --git a/QTfrontend/util/DataManager.cpp b/QTfrontend/util/DataManager.cpp
685 -index 3d69931cf..5c8aa4cc5 100644
686 ---- a/QTfrontend/util/DataManager.cpp
687 -+++ b/QTfrontend/util/DataManager.cpp
688 -@@ -172,11 +172,11 @@ QString DataManager::settingsFileName()
689 - {
690 - if(m_settingsFileName.isEmpty())
691 - {
692 -- QFile settingsFile("physfs://settings.ini");
693 -+ QFile settingsFile(cfgdir->absoluteFilePath("settings.ini"));
694 -
695 - if(!settingsFile.exists())
696 - {
697 -- QFile oldSettingsFile("physfs://hedgewars.ini");
698 -+ QFile oldSettingsFile(cfgdir->absoluteFilePath("hedgewars.ini"));
699 -
700 - settingsFile.open(QFile::WriteOnly);
701 - settingsFile.close();
702 ---
703 -2.16.1
704 -
705
706 diff --git a/games-strategy/hedgewars/hedgewars-0.9.23-r3.ebuild b/games-strategy/hedgewars/hedgewars-0.9.23-r3.ebuild
707 deleted file mode 100644
708 index ae864014ed8..00000000000
709 --- a/games-strategy/hedgewars/hedgewars-0.9.23-r3.ebuild
710 +++ /dev/null
711 @@ -1,91 +0,0 @@
712 -# Copyright 1999-2018 Gentoo Foundation
713 -# Distributed under the terms of the GNU General Public License v2
714 -
715 -EAPI=6
716 -
717 -CMAKE_MAKEFILE_GENERATOR=emake
718 -inherit cmake-utils desktop xdg-utils
719 -
720 -MY_P=${PN}-src-${PV}
721 -DEB_PATCH_VER=7
722 -
723 -DESCRIPTION="A turn-based strategy, artillery, action and comedy game"
724 -HOMEPAGE="https://www.hedgewars.org/"
725 -SRC_URI="https://www.hedgewars.org/download/releases/${MY_P}.tar.bz2
726 - mirror://debian/pool/main/h/${PN}/${PN}_0.9.22-dfsg-${DEB_PATCH_VER}.debian.tar.xz"
727 -
728 -LICENSE="GPL-2 Apache-2.0 FDL-1.3"
729 -SLOT="0"
730 -KEYWORDS="~amd64 ~x86"
731 -IUSE="libav"
732 -
733 -QA_FLAGS_IGNORED="/usr/bin/hwengine" # pascal sucks
734 -QA_PRESTRIPPED="/usr/bin/hwengine" # pascal sucks
735 -
736 -# qtcore:5= - depends on private header
737 -CDEPEND="
738 - >=dev-games/physfs-3.0.1
739 - dev-lang/lua:0=
740 - dev-qt/qtcore:5=
741 - dev-qt/qtgui:5
742 - dev-qt/qtnetwork:5
743 - dev-qt/qtwidgets:5
744 - media-libs/libpng:0=
745 - media-libs/libsdl2:=
746 - media-libs/sdl2-image:=
747 - media-libs/sdl2-mixer:=[vorbis]
748 - media-libs/sdl2-net:=
749 - media-libs/sdl2-ttf:=
750 - sys-libs/zlib:=
751 - libav? ( media-video/libav:= )
752 - !libav? ( media-video/ffmpeg:= )"
753 -DEPEND="${CDEPEND}
754 - >=dev-lang/fpc-2.4
755 - dev-qt/linguist-tools:5"
756 -RDEPEND="${CDEPEND}
757 - app-arch/xz-utils
758 - >=media-fonts/dejavu-2.28
759 - media-fonts/wqy-zenhei"
760 -
761 -S="${WORKDIR}"/${MY_P}
762 -
763 -PATCHES=(
764 - "${FILESDIR}"/${PN}-0.9.22-rpath-fix.patch
765 - "${FILESDIR}"/${P}-qt5-{1,2}.patch # bug 645504
766 - "${FILESDIR}"/${P}-settings-saving.patch # bug 651810
767 -)
768 -
769 -src_configure() {
770 - local mycmakeargs=(
771 - -DMINIMAL_FLAGS=ON
772 - -DDATA_INSTALL_DIR="${EPREFIX}/usr/share/${PN}"
773 - -Dtarget_binary_install_dir="${EPREFIX}/usr/bin"
774 - -Dtarget_library_install_dir="${EPREFIX}/usr/$(get_libdir)"
775 - -DNOSERVER=TRUE
776 - -DCMAKE_VERBOSE_MAKEFILE=TRUE
777 - -DPHYSFS_SYSTEM=ON
778 - # Need to tell the build system where the fonts are located
779 - # as it uses PhysFS' symbolic link protection mode which
780 - # prevents us from symlinking the fonts into the right directory
781 - # https://hg.hedgewars.org/hedgewars/rev/76ad55807c24
782 - # https://icculus.org/physfs/docs/html/physfs_8h.html#aad451d9b3f46f627a1be8caee2eef9b7
783 - -DFONTS_DIRS="${EPREFIX}/usr/share/fonts/wqy-zenhei;${EPREFIX}/usr/share/fonts/dejavu"
784 - # upstream sets RPATH that leads to weird breakage
785 - # https://bugzilla.redhat.com/show_bug.cgi?id=1200193
786 - -DCMAKE_SKIP_RPATH=ON
787 - )
788 - cmake-utils_src_configure
789 -}
790 -
791 -src_install() {
792 - cmake-utils_src_install
793 - doman man/${PN}.6
794 -}
795 -
796 -pkg_postinst() {
797 - xdg_desktop_database_update
798 -}
799 -
800 -pkg_postrm() {
801 - xdg_desktop_database_update
802 -}