[397] | 1 | This document contains a brief list of the most important OS/2-specific changes
|
---|
| 2 | in the Qt library from release to release.
|
---|
| 3 |
|
---|
| 4 |
|
---|
| 5 | CHANGES
|
---|
| 6 |
|
---|
[740] | 7 |
|
---|
| 8 | 4.6.2 (14-05-2010)
|
---|
| 9 |
|
---|
| 10 | Improvements:
|
---|
| 11 |
|
---|
| 12 | - general: Updated Qt codebase to version 4.6.2 (see the changes-4.6.2 file
|
---|
| 13 | for details). Note that this version is binary incompatible with the
|
---|
| 14 | previous version (see README.OS2 for more information).
|
---|
| 15 |
|
---|
| 16 | - general: Implemented support for the OS/2 platform in the webkit module. The
|
---|
| 17 | webkit module is used in many complex web-based applications such as web
|
---|
| 18 | browsers to implement the JavaScript support. Note that the script module
|
---|
| 19 | uses the JavaScript implementation from the WebKit project too and it was
|
---|
| 20 | also ported to OS/2. The webkit module is always present in the official Qt
|
---|
| 21 | build but is disabled by defautl in the custom builds due to big compilation
|
---|
| 22 | times.
|
---|
| 23 |
|
---|
| 24 | - general: Use declspec(dllexport) on OS/2 to significantly reduce the number
|
---|
| 25 | of exports in generated DLLs. This mode is on by default which reduces the
|
---|
| 26 | number of exported symbols by 90-100% in Qt DLLs and makes it not necessary
|
---|
| 27 | to split the QtGui DLL in 3 parts in debug mode. The old method which causes
|
---|
| 28 | all public symbols to be exported is still available using the "export_all"
|
---|
| 29 | CONFIG option (see README.OS2 for details).
|
---|
| 30 |
|
---|
| 31 | - general: Provide the "doc" WPI archive that contains the Qt reference
|
---|
| 32 | documentation.
|
---|
| 33 |
|
---|
| 34 | - corelib: Implemented native (XWP-based) file system watcher for OS/2 that
|
---|
| 35 | does not eat CPU (which is best noticed in file dialogs showing directories
|
---|
| 36 | containing hundreds of files. Requires XWorkplace to be installed.
|
---|
| 37 |
|
---|
| 38 | - corelib: Implemented deriving the defaut locale from the process country
|
---|
| 39 | code if LANG is not set and integration with the system locale object
|
---|
| 40 | (System Setup -> Country Palette). See the QT_PM_NO_SYSTEM_LOCALE
|
---|
| 41 | description in README.OS2 for details.
|
---|
| 42 |
|
---|
| 43 | - gui: Implemented printing support through CUPS. Refer to section "PRINTING
|
---|
| 44 | SUPPORT" in README.OS2 for details.
|
---|
| 45 |
|
---|
| 46 | - gui: Implemented painting in widgets using DIVE (direct interface video
|
---|
| 47 | extensions). Using DIVE gives a significant graphical performance boost, up
|
---|
| 48 | to 100% in BLIT mode and 130% in FBSWM mode, depending on the combination of
|
---|
| 49 | the graphics hardware, video driver and the current screen mode. See the
|
---|
| 50 | QT_PM_DIVE and QT_PM_NO_DIVE description in README.OS2 for more details.
|
---|
| 51 |
|
---|
| 52 | - gui: Improved the painting speed when not using DIVE. The performance boost
|
---|
| 53 | varies from 30% to 200% (e.g. 3 times faster), depending on the combination
|
---|
| 54 | of the graphics hardware, video driver and the current screen mode.
|
---|
| 55 |
|
---|
| 56 | - gui: Enabled MMX/SSE support (on by default) to speed up graphical
|
---|
| 57 | operations by a couple of percents.
|
---|
| 58 |
|
---|
| 59 | - gui: Enabled accessibility support on OS/2. Note that in order to use the
|
---|
| 60 | accessibility functions, a QAccessibleBridge plugin for the corresponding
|
---|
| 61 | accessibility device is necessary but none of them exist at the present
|
---|
| 62 | time.
|
---|
| 63 |
|
---|
| 64 | - gui: Use native file icons in standard Qt file dialogs.
|
---|
| 65 |
|
---|
| 66 | - assistant: Enabled the help module and made the Qt Assistant tool build on
|
---|
| 67 | OS/2. Also enabled help and assistant examples and demos.
|
---|
| 68 |
|
---|
| 69 | - demos: Enabled the browser demo application that makes use of the webkit
|
---|
| 70 | module.
|
---|
| 71 |
|
---|
| 72 | - demos: Enabled the qtdemo example that demonstrates all Qt features and
|
---|
| 73 | acts as a launcher for other example and demo applications.
|
---|
| 74 |
|
---|
| 75 | - gnumake/os2-g++: Switch the compiler to using the i486 instruciton set for
|
---|
| 76 | code generation. This gives around 3% of the performance boost when
|
---|
| 77 | painting. As a drawback, the code will no longer run on i386 PCs but it is
|
---|
| 78 | assumed that it does not make sense to use Qt4 on these computers.
|
---|
| 79 |
|
---|
| 80 | Fixes:
|
---|
| 81 |
|
---|
| 82 | - general: Fixed: Building Qt applications with the "dev" WPI archive would
|
---|
| 83 | fail due to extra spaces in the output object file names.
|
---|
| 84 |
|
---|
| 85 | - corelib: Fixed: Regular files were treated as sequential streams which made
|
---|
| 86 | the seek functionality unavailable. This in particular affected Qt Designer
|
---|
| 87 | that didn't expect sequential streams when reading .ui files and refused to
|
---|
| 88 | load files bigger than 8192 bytes as a result.
|
---|
| 89 |
|
---|
| 90 | - corelib: Make sure the hardware error popup dialogs do not appear when
|
---|
| 91 | opening the standard Qt file dialog and selecting a removable drive with no
|
---|
| 92 | media inserted even with AUTOFAIL=YES in CONFIG.SYS
|
---|
| 93 |
|
---|
| 94 | - corelib: QProcess: Fixed: Data could not be successfully read or written to
|
---|
| 95 | the standard streams of the started process in 'highmem' link mode (which is
|
---|
| 96 | on by default since 4.5.1 GA), as well as in normal link mode in some
|
---|
| 97 | situations.
|
---|
| 98 |
|
---|
| 99 | - corelib: Fixed QProcess::startDetached() which would not work in 'highmem'
|
---|
| 100 | mode.
|
---|
| 101 |
|
---|
| 102 | - corelib: QProcess: Fixed: Having stderr of a started child process
|
---|
| 103 | redirected to a pipe (which is the default) would indirectly cause an
|
---|
| 104 | impossibility to write anything to its stdin.
|
---|
| 105 |
|
---|
| 106 | - corelib: QProcess: Get rid of the unexpected "DosQueryNPipeSemState returned
|
---|
| 107 | 87" warning.
|
---|
| 108 |
|
---|
| 109 | - corelib: QFileSystemWatcher: In the fall-back polling watcher, increased the
|
---|
| 110 | sleep time between checks of all watched files from 1 second to 3 seconds to
|
---|
| 111 | decrease the CPU load on big sets of watched files. Also, replaced the sleep
|
---|
| 112 | between checking individual items with the yield call as it doesn't give
|
---|
| 113 | significant improvement but just causes more CPU cycles to be spent between
|
---|
| 114 | each check.
|
---|
| 115 |
|
---|
| 116 | - corelib: Always return true from QFileInfo::isRoot()/isDir() for paths
|
---|
| 117 | referring to root directories of drives with no media and always return
|
---|
| 118 | false from QFileInfo::exists() for them. Also, don't lstat() on such paths
|
---|
| 119 | since they are definitely not symlinks. This improves the file dialog
|
---|
| 120 | appearance and behavior for removable drives.
|
---|
| 121 |
|
---|
| 122 | - corelib: Protect against the frozen system when QSocketNotifier is given an
|
---|
| 123 | unsupported socket (for example, an OS/2 file handle). There is still 100%
|
---|
| 124 | CPU load in this case, but the application can be at least closed using
|
---|
| 125 | normal means.
|
---|
| 126 |
|
---|
| 127 | - corelib: Sockets: Fixed: "has data to read" socket notifications would be
|
---|
| 128 | sometimes delivered with a delay depending on the frequency of timers which
|
---|
| 129 | could significantly slow down network data transfer.
|
---|
| 130 |
|
---|
| 131 | - corelib: QTemporaryFile: Fixed: Files were opened in O_TEXT mode which
|
---|
| 132 | caused unexpected LF <-> CRLF translation. In particular, this broke
|
---|
| 133 | QNetworkDiskCache functionality (seen in e.g. demos/browser as missing
|
---|
| 134 | images and CSS sheets when read from cache).
|
---|
| 135 |
|
---|
| 136 | - corelib: Fixed: Clear FPU CW in qdtoa() to avoid the floating point
|
---|
| 137 | exception in various scenarios [patch by rudi].
|
---|
| 138 |
|
---|
| 139 | - gui: Fixed assertion in QVector::at() at startup.
|
---|
| 140 |
|
---|
| 141 | - gui: Fixed assertion at #1125 in qwidget.cpp (due to an attempt to
|
---|
| 142 | re-instantiate QDesktopWidget during application termination).
|
---|
| 143 |
|
---|
| 144 | - gui: Select the correct icon for the drive letter in standard file dialogs
|
---|
| 145 | depending on the drive type (floppy, hard disk etc) [patch by rudi].
|
---|
| 146 |
|
---|
| 147 | - gui: Fixed crash in PMMERGE during resize & move of the top level window
|
---|
| 148 | with the complex layout (caused by reading outside the bitmap data).
|
---|
| 149 |
|
---|
| 150 | - gui: Fixed: Never add tooltip windows to the top-level window list and only
|
---|
| 151 | do so for splash windows if they have the Qt::WindowTitleHint flag set.
|
---|
| 152 |
|
---|
| 153 | - 3rdparty: Added OS/2 support to clucene used by the help module for fulltext
|
---|
| 154 | search in help files [based on the patch by rudi].
|
---|
| 155 |
|
---|
| 156 | - configure.cmd: Fixed: QT_BUILD_KEY (and QLibraryInfo::buildKey()) would
|
---|
| 157 | always contain "release", even in debug builds, which caused debug builds to
|
---|
| 158 | load the release plugins and refuse the debug ones.
|
---|
| 159 |
|
---|
| 160 | - qmake/os2-g++: Use -Wl, to pass the object list response file to the
|
---|
| 161 | linker as is instead of the expanded list of objects (this overcomes the
|
---|
| 162 | 64KB limitation of the total process command line length in OS/2).
|
---|
| 163 |
|
---|
| 164 |
|
---|
[542] | 165 | 4.5.1 GA (05-02-2010)
|
---|
[524] | 166 |
|
---|
| 167 | Improvements:
|
---|
| 168 |
|
---|
| 169 | - general: Switched the compiler to the GCC 4.4.2 build provided by Paul
|
---|
| 170 | Smeldey. This gives better standard conformance, better code optimization
|
---|
| 171 | and provides more compact DLLs and EXEs whose size is greater than ~1M.
|
---|
| 172 |
|
---|
| 173 | - corelib: QSettings: Use IniFormat (plain INI files) when NativeFormat is
|
---|
| 174 | requested instead of the Open32 registry which is known to be unstable and
|
---|
| 175 | can be easily corrupted. The old behavior may be restored using the
|
---|
| 176 | QT_PM_REGISTRY environment variable.
|
---|
| 177 |
|
---|
| 178 | - corelib: Use UniStrcoll for QString::localeAwareCompare() for locale-aware
|
---|
| 179 | comparison of NLS strings.
|
---|
| 180 |
|
---|
| 181 | - gui: Implemented full Direct Manipulation (Drag And Drop) support. This
|
---|
| 182 | includes dragging text, URLs and files between PM and Qt applications,
|
---|
| 183 | dragging any MIME data across Qt applications, setting custom drag pointer
|
---|
| 184 | pixmaps, painting in widgets while dragging.
|
---|
| 185 |
|
---|
| 186 | - gui: Implemented session management with the QSessionManager class.
|
---|
| 187 |
|
---|
| 188 | - gui: Fully implemented the QDesktopServices class.
|
---|
| 189 |
|
---|
| 190 | - gui: Added support for numpad keys and for some common multimedia keys
|
---|
| 191 | recognized by eCS (volume, home, search, favorites).
|
---|
| 192 |
|
---|
| 193 | - gui: QCursor: Added missing cursor shapes and implemented support for custom
|
---|
| 194 | cursor shapes.
|
---|
| 195 |
|
---|
| 196 | - gui: Implemented QFontDatabase::addApplicationFont()/removeApplicationFont()
|
---|
| 197 | and friends.
|
---|
| 198 |
|
---|
| 199 | - gui: Implemented proper generation of possible key and modifier combinations
|
---|
| 200 | for a given key event. This in particular enables Ctrl+<letter> shortcuts
|
---|
| 201 | for non-Latin languages and also makes Ctrl+<letter>, Alt+<letter> and
|
---|
| 202 | similar shortcuts language-neutral.
|
---|
| 203 |
|
---|
| 204 | - gui: QWidget: When setting the parent, take the parent's resolve masks to
|
---|
| 205 | make sure attributes imposed by the user on the parent won't be overriden
|
---|
| 206 | byv the natural palette for this widget if it differs from
|
---|
| 207 | QApplication::palette() [vendor bug].
|
---|
| 208 |
|
---|
| 209 | - gui: Use a normal border for top-level Tool widgets since the thin one is
|
---|
| 210 | too thin and cannot be resized.
|
---|
| 211 |
|
---|
| 212 | - gui: Implemented delivering of QEvent::NonClientAreaMouse* events to
|
---|
| 213 | top-level widgets. This enables undocked dock widgets to be docked back by
|
---|
| 214 | a double click on the title bar and also by moving over the dock areas.
|
---|
| 215 |
|
---|
| 216 | - plugins: Enabled the sqlite3 plugin which makes the sql module (and
|
---|
| 217 | applications depending on it) actually usable.
|
---|
| 218 |
|
---|
| 219 | - tools: Enabled the Qt Designer application.
|
---|
| 220 |
|
---|
| 221 | - tools: Enabled the following toos: pixeltool, q3toq4, xmplatterns.
|
---|
| 222 |
|
---|
| 223 | - qmake/os2-g++: Recognize the "map" option in the CONFIG variable that allows
|
---|
[541] | 224 | to turn the generation of .map files on and off. The option is set by
|
---|
| 225 | default.
|
---|
[524] | 226 |
|
---|
[541] | 227 | - qmake/os2-g++: Recognize the "highmem" option in the CONFIG variable that
|
---|
| 228 | allows to enabled memory support in LIBC for genereated DLLs and
|
---|
| 229 | executables. The option is set by default.
|
---|
| 230 |
|
---|
[524] | 231 | Fixes:
|
---|
| 232 |
|
---|
| 233 | - corelib: Created wrappers for all Win* and Gpi* calls that restore the FPU
|
---|
| 234 | Control Word to what C/C++ programs expect. This fixes crashes in various
|
---|
| 235 | Qt applications (e.g. mp3diags) due to SIGFPE.
|
---|
| 236 |
|
---|
| 237 | - corelib: QLibraryInfo: Fixed: qt.conf would not have been loaded if a
|
---|
| 238 | component path was requested before QCoreApplication instance creation.
|
---|
| 239 |
|
---|
| 240 | - corelib: QLibraryInfo: Changed default "Settings" path to %ETC%/xdg.
|
---|
| 241 | Also use %ETC%/qtsys.conf as the system-wide qt.conf instead of
|
---|
| 242 | %ETC%/qt/qtsys.conf.
|
---|
| 243 |
|
---|
| 244 | - corelib: QFSFileEngine: Fixed: On OS/2, trailing spaces in file names are
|
---|
| 245 | ignored ("readme " = "readme") but kLIBC doesn't handle this well so strip
|
---|
| 246 | them before passing to LIBC APIs.
|
---|
| 247 |
|
---|
| 248 | - corelib: QFile::copy(): Use DosCopy() instead of read/write.
|
---|
| 249 |
|
---|
| 250 | - corelib: Fixed: QProcess::startDetached() would either crash or fail to
|
---|
| 251 | start a process.
|
---|
| 252 |
|
---|
[541] | 253 | - corelib: Fixed: QFileInfo::isExecutable() would return true for all files on
|
---|
| 254 | local OS/2 file systems.
|
---|
| 255 |
|
---|
[524] | 256 | - gui: Fixed: Popups shown when another application is active were not
|
---|
| 257 | controllable with keyboard and didn't close on an outside mouse click.
|
---|
| 258 |
|
---|
| 259 | - gui: Fixed: Visible title bar and frame of the top-level window after
|
---|
| 260 | switching to fullscreen.
|
---|
| 261 |
|
---|
| 262 | - gui: Fixed: Wrong widget-relative mouse position in mouse events. This fixes
|
---|
| 263 | problems with dragging widget splitters (separators) in applications using
|
---|
| 264 | dock widgets.
|
---|
| 265 |
|
---|
| 266 | - gui: Fixed: QEvent::Enter/Leave events were delivered incorrectly if the
|
---|
| 267 | alien child widget belonging to a native parent intersected with a native
|
---|
| 268 | child of this parent (this in particular caused extended tool bars to
|
---|
| 269 | immediately un-extend once the mouse moves over the extended part).
|
---|
| 270 |
|
---|
| 271 | - gui: Fixed: Mouse press events replayed after closing the popup by clicking
|
---|
| 272 | outside it had incorrect coordinates. This resulted into various kinds of
|
---|
| 273 | misbehavior including spatial text selection in QTextEdit widgets after
|
---|
| 274 | closing popups by clicking inside these widgets.
|
---|
| 275 |
|
---|
| 276 | - gui: Fixed: The default application icon embedded into the executable was
|
---|
| 277 | not actually used as the default window icon for top-level widgets.
|
---|
| 278 |
|
---|
| 279 | - qmake/os2-g++: Do not use EXEPACK tool on static libraries.
|
---|
| 280 |
|
---|
[541] | 281 | - qmake: Several fixes to make install targets work correctly.
|
---|
[524] | 282 |
|
---|
[541] | 283 |
|
---|
[397] | 284 | Beta 5 (06-12-2009)
|
---|
| 285 |
|
---|
| 286 | Improvements:
|
---|
| 287 |
|
---|
| 288 | - gui: Added support for the system clipboard. Qt can now exchange plain text,
|
---|
| 289 | HTML (Mozilla application suite) and bitmaps with other PM applications, as
|
---|
| 290 | well as all supported MIME data types with other Qt-based applications.
|
---|
| 291 |
|
---|
| 292 | - corelib: Use system unicode conversion routines to convert from the system
|
---|
| 293 | code page to Unicode and back. This makes it unnecessary to specify the
|
---|
| 294 | system encoding in the LANG environment variable -- Qt will use the system
|
---|
| 295 | encoding of the current process.
|
---|
| 296 |
|
---|
| 297 | - gui: Implemented support for the IME input box (used on DBCS systems) in Qt
|
---|
| 298 | applications with a known limitation that the input box is always positioned
|
---|
| 299 | at the lower left corner of the top-level window.
|
---|
| 300 |
|
---|
| 301 | - gui: Improved font handling on DBCS systems (patch by komh):
|
---|
| 302 | * Read national face names from font files instead of always taking the
|
---|
| 303 | Latin name.
|
---|
| 304 | * Use the PM_AssociateFont registry key to select a fallback font for
|
---|
| 305 | missing characters.
|
---|
| 306 |
|
---|
| 307 | - gui: Implemented QPixmap::grabWindow() which takes a screenshot of a window.
|
---|
| 308 |
|
---|
| 309 | - gui: Steal the Alt key from the PM which prevents the PM system menu to be
|
---|
| 310 | shown when single Alt is pressed in a Qt application. The system menu may
|
---|
| 311 | still be called using Alt+Space. Note that this also disables all default
|
---|
| 312 | shortuts from the system menu (Alt+F7, Alt+F10 etc.) so that they available
|
---|
| 313 | to Qt applications now. Exceptions are Alt+F4, Ctrl+Esc, Alt+Esc which are
|
---|
| 314 | not passed to Qt and will function as in regular PM applciations.
|
---|
| 315 |
|
---|
| 316 | - general: Binary Qt library builds are made portable: they do not contain
|
---|
| 317 | hard-coded paths to various Qt components any more and use relative
|
---|
| 318 | locations whenever possible. See
|
---|
| 319 | http://svn.netlabs.org/qt4/browser/tags/4.5.1-os2-beta5/doc/src/qt-conf.qdoc
|
---|
| 320 | for more info.
|
---|
| 321 |
|
---|
| 322 | - corelib: Improved the polling QFileSystemWatcher implementation so that it
|
---|
| 323 | doesn't eat all CPU when there are more than 100 items to watch, like when
|
---|
| 324 | showing a file open dialog with many files in a directory.
|
---|
| 325 |
|
---|
| 326 | - qmake: Improved processing of the project library list (LIBS variable) to
|
---|
| 327 | avoid appearance of raw library names that require substitution (fixes the
|
---|
| 328 | debug build of linguist).
|
---|
| 329 |
|
---|
| 330 | - qmake: Added support for DEF_FILE_VERSION, DEF_FILE_DESCRIPTION and
|
---|
| 331 | DEF_FILE_VENDOR project variables that allow to embed the description
|
---|
| 332 | string into a generated DLL or executable. For compatibility with other
|
---|
| 333 | platforms, these variables by default are mapped to VERSION,
|
---|
| 334 | QMAKE_TARGET_PRODUCT + QMAKE_TARGET_DESCRIPTION + QMAKE_TARGET_COPYRIGHT and
|
---|
| 335 | QMAKE_TARGET_COMPANY, respectively.
|
---|
| 336 |
|
---|
| 337 | Fixes:
|
---|
| 338 |
|
---|
| 339 | - gui: Table views showed alternate rows in black color instead of light gray.
|
---|
| 340 |
|
---|
| 341 | - gui: If some font style (e.g. Bold) does not provide characters for some
|
---|
| 342 | script (e.g. Cyrillic) while the Normal style does, a different font will be
|
---|
| 343 | chosen for Bold Cyrillic instead of drawing empty boxes.
|
---|
| 344 |
|
---|
| 345 | - corelib: Fixed two issues related to loading text codec plugins from the
|
---|
| 346 | application's directory.
|
---|
| 347 |
|
---|
| 348 | - corelib: Fixed QDir::absoluteFilePath(), midir()/mkpath(), rmdir()/rmpath()
|
---|
| 349 | that didn't properly handle relative and UNC paths which could cause various
|
---|
| 350 | path-related failures.
|
---|
| 351 |
|
---|
| 352 | - corelib: Properly report root directories of drives to Qt. This makes
|
---|
| 353 | letters of removable drives always seen by Qt (for example, in the file open
|
---|
| 354 | dialog) even if the medium isn't currently inserted.
|
---|
| 355 |
|
---|
| 356 | - corelib: Fixed unnecessary access to removable drives and a long delay and
|
---|
| 357 | noice caused by it when showing a file open dialog in Qt applications.
|
---|
| 358 |
|
---|
[740] | 359 |
|
---|
[397] | 360 | Beta 4 (11-11-2009)
|
---|
| 361 |
|
---|
| 362 | Improvements:
|
---|
| 363 |
|
---|
| 364 | - Added sound support (implemented QSound class).
|
---|
| 365 |
|
---|
| 366 | - Added system tray support (QSystemTrayIcon class). This support requires
|
---|
| 367 | the Extended system tray XCenter plugin to be installed. See the note above
|
---|
| 368 | on how to compile and install this plugin.
|
---|
| 369 |
|
---|
| 370 | - Enabled QPlugin support on OS/2. This in turn enables SVG support for
|
---|
| 371 | QIcon (which is built as a Qt plugin DLL by default).
|
---|
| 372 |
|
---|
| 373 | - Better widget modality support (widgets blocked by modality cannot be
|
---|
| 374 | activated and moved using the mouse and the title bar anymore).
|
---|
| 375 |
|
---|
| 376 | - Added support for 'console' and 'windows' CONFIG options in .pro files.
|
---|
| 377 | Now, if 'windows' is present, the target executable will have the WINDOWAPI
|
---|
| 378 | attribute set which effectively makes it a PM application. This, in
|
---|
| 379 | particular, disables standard input, output and error streams so that when
|
---|
| 380 | started, the application will not have a console window attached to it.
|
---|
| 381 | By default, 'console' mode is active unless you perform a release build and
|
---|
| 382 | the application is linked against the QtGui library ('QT = gui' in .pro),
|
---|
| 383 | in which case the default is 'windows'.
|
---|
| 384 |
|
---|
| 385 | - Improved paint speed in Qt windows which should increase overall graphical
|
---|
| 386 | UI performance by 10%-20% in Qt4 applications.
|
---|
| 387 |
|
---|
| 388 | - Implemented setting window icons for top-level windows (using
|
---|
| 389 | QWidget::setWindowIcon()).
|
---|
| 390 |
|
---|
| 391 | - Added LxLite support to provide compression for executables and DLLs. The
|
---|
| 392 | compression is controlled by the 'exepack' CONFIG option which is turned on
|
---|
| 393 | by default for release builds if the LxLite executable is present in PATH
|
---|
| 394 | during the configure.cmd invocation. The compression may be turned off on a
|
---|
| 395 | per-project basis by adding a 'CONFIG -= exepack' line to the .pro file.
|
---|
| 396 |
|
---|
| 397 | - Improved the section of this README.OS2 file that describes how to properly
|
---|
| 398 | set the LANG variable to have correct national characters in file names and
|
---|
| 399 | in window titles of Qt applications.
|
---|
| 400 |
|
---|
| 401 | Fixes:
|
---|
| 402 |
|
---|
| 403 | - QProcess: The executable's path was not always added to BEGINLIBPATH.
|
---|
| 404 |
|
---|
| 405 | - Fixed-size top-level widgets could not be moved.
|
---|
| 406 |
|
---|
| 407 | - Application crash after pressing a button in a dialog window that resizes
|
---|
| 408 | this dialog (for example, makes it bigger to show more information).
|
---|
| 409 |
|
---|
| 410 | - Resizing top level windows using the top border broke mouse coordinates so
|
---|
| 411 | that Qt tought you pressed the mouse button in a different place of the
|
---|
| 412 | window than where you actually did it.
|
---|
| 413 |
|
---|
| 414 | - Events posted with QCoreApplication::postEvent() were only processed upon
|
---|
| 415 | receiving a next message from the system. This caused funny delays such as
|
---|
| 416 | controls in a Qt window still indicating the input focus (the dotted
|
---|
| 417 | rectangle) after the window was deactivated and losing this indication only
|
---|
| 418 | when the mouse pointer was moved over the window.
|
---|
| 419 |
|
---|
| 420 | - Don't replay mouse button press on a push button that is showing a popup
|
---|
| 421 | menu but instead hide the popup menu and unpress the button to get more
|
---|
| 422 | native look and feel.
|
---|
| 423 |
|
---|
| 424 | - Deactivating the window with a push button showing a popup menu would hide
|
---|
| 425 | the popup but leave the button pressed.
|
---|
| 426 |
|
---|
| 427 | - Fixed incorrect Qt dirty widget region calculation when processing WM_PAINT
|
---|
| 428 | messages. This fixes a lot of redraw problems (menu items in the main menu
|
---|
| 429 | bar, text in combo-boxes, various redraw problems in smplayer when switching
|
---|
| 430 | interfaces and going to/from fullscreen, and similar).
|
---|
| 431 |
|
---|
[740] | 432 |
|
---|
[397] | 433 | Beta 3 (17-10-2009)
|
---|
| 434 |
|
---|
| 435 | Improvements:
|
---|
| 436 |
|
---|
| 437 | - Added proper font support. All outline (scalable) fonts visible in the Font
|
---|
| 438 | Palette should be now recognized by Qt. The fonts are hinted and antialiased
|
---|
| 439 | using the Freetype2 library when drawing text.
|
---|
| 440 |
|
---|
| 441 | - System fonts and colors are now used by default for Qt widgets.
|
---|
| 442 |
|
---|
| 443 | - configure.cmd now generates the main Makefile to simplify building of Qt.
|
---|
| 444 |
|
---|
| 445 | - corelib: QProcess: Implemented child termination detection.
|
---|
| 446 |
|
---|
| 447 | - corelib: QProcess: Implemented redirection to another QProcess.
|
---|
| 448 |
|
---|
| 449 | - corelib: QProcess now uses native pipes for stream redirection. This fixes
|
---|
| 450 | various issues like 'Socket operation on non-socket' errors during
|
---|
| 451 | parent-child communication.
|
---|
| 452 |
|
---|
| 453 | - corelib: QProcess: Make sure that the directory containing the executable
|
---|
| 454 | file is always searched (first) for DLLs needed by this executable. This
|
---|
| 455 | makes it unnecessary to change the current directory to the executable's
|
---|
| 456 | directory or add it to LIBPATH before starting the Qt application.
|
---|
| 457 |
|
---|
| 458 | - corelib: QProcess can now start applications of different type (e.g. PM
|
---|
| 459 | applications from text-mode applications) directly.
|
---|
| 460 | QProcess::startDetached() also works.
|
---|
| 461 |
|
---|
| 462 | - qmake: In debug_and_release mode, 'release-(all|clean|distclean|install|
|
---|
| 463 | uninstall)' and 'debug-(all|clean|distclean|install|uninstall)' make
|
---|
| 464 | targets are now available.
|
---|
| 465 |
|
---|
| 466 | Fixes:
|
---|
| 467 |
|
---|
| 468 | - Doing 'make clean' could result into a hang due to CMD.EXE command line
|
---|
| 469 | length limitation.
|
---|
| 470 |
|
---|
| 471 | - corelib: Fixed: QProcess: Lost data during stream redirection.
|
---|
| 472 |
|
---|
| 473 | - corelib: QSettings could sometimes distort data when saving it to the
|
---|
| 474 | registry (by replacing some characters with codes 0x80 and above with '?').
|
---|
| 475 |
|
---|
[740] | 476 |
|
---|
[397] | 477 | Beta 2 (17-09-2009)
|
---|
| 478 |
|
---|
| 479 | Improvements:
|
---|
| 480 |
|
---|
| 481 | - Ported the network module (QtNetwork4.dll) and added to the default build.
|
---|
| 482 |
|
---|
| 483 | - Added modules sql, svg, xmlpatterns, scripttools, plugins to the default
|
---|
| 484 | build.
|
---|
| 485 |
|
---|
| 486 | - gui: Added recognition of dead keys which makes it possible to type
|
---|
| 487 | umlauts and other accented characters that require composition.
|
---|
| 488 |
|
---|
| 489 | - gui: Implemented standard cursor shapes in Qt applications.
|
---|
| 490 |
|
---|
| 491 | Fixes:
|
---|
| 492 |
|
---|
| 493 | - qmake: Fixed the trailing slash problem which caused qmake to generate
|
---|
| 494 | incorrect makefiles and fail to build the Qt library on some platforms.
|
---|
| 495 |
|
---|
| 496 | - configure.cmd: Return to the root source tree directory after building
|
---|
| 497 | qmake.
|
---|
| 498 |
|
---|
| 499 | - qmake: Automatically use different link flags when linking qmake with WLINK.
|
---|
| 500 |
|
---|
| 501 | - qmake: Recognize TARGET_SHORT that allows to specify a short DLL name
|
---|
| 502 | (vital for OS/2 which reqires DLL names to be in 8x3 format).
|
---|
| 503 |
|
---|
| 504 | - build: Set short DLL names for Qt modules on OS/2 using TARGET_SHORT.
|
---|
| 505 |
|
---|
| 506 | - corelib: Various fixes to file system classes that deal with the file name
|
---|
| 507 | case (which should be ignored on OS/2) and forward and back slashes.
|
---|
| 508 |
|
---|
| 509 | - corelib: Fixed: QMutex could let more than one thread access the protected
|
---|
| 510 | resource.
|
---|
| 511 |
|
---|
| 512 | - corelib: Standard stream redirection in QProcess should now work for
|
---|
| 513 | kLIBC-based child processes. Redirection for all other applications
|
---|
| 514 | (such as CMD.EXE) will be added later (seems to be a kLIBC bug/feature).
|
---|
| 515 |
|
---|
| 516 | - gui: Fixed erroneous QFileDialog behavior (duplicate entires in the list,
|
---|
| 517 | incomplete contents of the root directory of the current drive).
|
---|
| 518 |
|
---|
| 519 | - gui: Fixed: Ctrl+A..Z should generate characters with codes 0x01-0x1F.
|
---|
| 520 |
|
---|
| 521 | - gui: Fixed: Close popups when resizing/moving the top level window.
|
---|
| 522 |
|
---|
| 523 | - gui: Enabled actual enforcing min/max Qt widget constraints for top-level windows.
|
---|
| 524 |
|
---|
| 525 | - gui: Fixed child widget duplication when resizing top level widgets after
|
---|
| 526 | showing a popup; moving native child widgets should now work correctly.
|
---|
| 527 | This also fixed a number of redraw problems (for example, drawing the main
|
---|
| 528 | menu and tool bars in smplayer, moving tool bars around in other
|
---|
| 529 | applications such as textedit from the demo folder).
|
---|
| 530 |
|
---|
[740] | 531 |
|
---|
[397] | 532 | Beta 1 (29-08-2009)
|
---|
| 533 |
|
---|
| 534 | - First public release.
|
---|