|
|
|
@@ -16,6 +16,21 @@ index eec9e1f..ec3015e 100644
|
|
|
|
|
QMAKE_CFLAGS_YACC =
|
|
|
|
|
QMAKE_CFLAGS_LTCG = -GL
|
|
|
|
|
QMAKE_CFLAGS_SSE2 = -arch:SSE2
|
|
|
|
|
diff --git a/src/corelib/io/qfilesystemengine_win.cpp b/src/corelib/io/qfilesystemengine_win.cpp
|
|
|
|
|
index f1a6019..a53a6c4 100644
|
|
|
|
|
--- a/src/corelib/io/qfilesystemengine_win.cpp
|
|
|
|
|
+++ b/src/corelib/io/qfilesystemengine_win.cpp
|
|
|
|
|
@@ -1416,8 +1416,9 @@ bool QFileSystemEngine::copyFile(const QFileSystemEntry &source, const QFileSyst
|
|
|
|
|
COPYFILE2_EXTENDED_PARAMETERS copyParams = {
|
|
|
|
|
sizeof(copyParams), COPY_FILE_FAIL_IF_EXISTS, NULL, NULL, NULL
|
|
|
|
|
};
|
|
|
|
|
+ // CopyFile2 returns HRESULT, not BOOL, so it should be tested for S_OK, not 0.
|
|
|
|
|
bool ret = ::CopyFile2((const wchar_t*)source.nativeFilePath().utf16(),
|
|
|
|
|
- (const wchar_t*)target.nativeFilePath().utf16(), ©Params) != 0;
|
|
|
|
|
+ (const wchar_t*)target.nativeFilePath().utf16(), ©Params) == S_OK;
|
|
|
|
|
#endif // Q_OS_WINRT
|
|
|
|
|
if(!ret)
|
|
|
|
|
error = QSystemError(::GetLastError(), QSystemError::NativeError);
|
|
|
|
|
diff --git a/src/corelib/tools/qunicodetables.cpp b/src/corelib/tools/qunicodetables.cpp
|
|
|
|
|
index 14e4fd1..c31c62b 100644
|
|
|
|
|
--- a/src/corelib/tools/qunicodetables.cpp
|
|
|
|
@@ -82,8 +97,22 @@ index 918c989..55ef783 100644
|
|
|
|
|
+#endif
|
|
|
|
|
+ }
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Make sure we're inside the viewport.
|
|
|
|
|
diff --git a/src/gui/text/qtextengine_p.h b/src/gui/text/qtextengine_p.h
|
|
|
|
|
index 39c228f..b72fdc0 100644
|
|
|
|
|
--- a/src/gui/text/qtextengine_p.h
|
|
|
|
|
+++ b/src/gui/text/qtextengine_p.h
|
|
|
|
|
@@ -283,7 +283,8 @@ private:
|
|
|
|
|
|
|
|
|
|
struct QScriptItem;
|
|
|
|
|
/// Internal QTextItem
|
|
|
|
|
-class QTextItemInt : public QTextItem
|
|
|
|
|
+// Enable access to QTextItemInt in .dll for WinRT build.
|
|
|
|
|
+class Q_GUI_EXPORT QTextItemInt : public QTextItem
|
|
|
|
|
{
|
|
|
|
|
public:
|
|
|
|
|
inline QTextItemInt()
|
|
|
|
|
diff --git a/src/gui/text/qtextlayout.cpp b/src/gui/text/qtextlayout.cpp
|
|
|
|
|
index 9e2a23a..861f202 100644
|
|
|
|
|
--- a/src/gui/text/qtextlayout.cpp
|
|
|
|
@@ -105,7 +134,7 @@ index 9e2a23a..861f202 100644
|
|
|
|
|
- while (oldPos < len && attributes[oldPos].whiteSpace)
|
|
|
|
|
- oldPos++;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return oldPos;
|
|
|
|
|
diff --git a/src/gui/text/qtextlayout.h b/src/gui/text/qtextlayout.h
|
|
|
|
|
index f74d4d4..57d449a 100644
|
|
|
|
@@ -119,8 +148,8 @@ index f74d4d4..57d449a 100644
|
|
|
|
|
+ // allow access to private constructor
|
|
|
|
|
+ friend class TextBlock;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
diff --git a/src/network/socket/qnativesocketengine_win.cpp b/src/network/socket/qnativesocketengine_win.cpp
|
|
|
|
|
index ca0a8b9..26ee865 100644
|
|
|
|
|
--- a/src/network/socket/qnativesocketengine_win.cpp
|
|
|
|
@@ -144,9 +173,9 @@ index 728b166..12364db 100644
|
|
|
|
|
--- a/src/platformsupport/fontdatabases/basic/qbasicfontdatabase.cpp
|
|
|
|
|
+++ b/src/platformsupport/fontdatabases/basic/qbasicfontdatabase.cpp
|
|
|
|
|
@@ -172,6 +172,79 @@ void QBasicFontDatabase::releaseHandle(void *handle)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern FT_Library qt_getFreetype();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
+// Enable Open Sans Semibold font family reading.
|
|
|
|
|
+// Copied from freetype with some modifications.
|
|
|
|
|
+
|
|
|
|
@@ -240,9 +269,9 @@ index a5fe888..5878a4f 100644
|
|
|
|
|
--- a/src/platformsupport/fontdatabases/fontconfig/qfontconfigdatabase.cpp
|
|
|
|
|
+++ b/src/platformsupport/fontdatabases/fontconfig/qfontconfigdatabase.cpp
|
|
|
|
|
@@ -381,6 +381,17 @@ static void populateFromPattern(FcPattern *pattern)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
familyName = QString::fromUtf8((const char *)value);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
+ // Enable Open Sans Semibold font family reading.
|
|
|
|
|
+ if (familyName == QLatin1String("Open Sans")) {
|
|
|
|
|
+ FcChar8 *styl = 0;
|
|
|
|
@@ -301,7 +330,7 @@ index 0af7790..c16f154 100644
|
|
|
|
|
--- a/src/platformsupport/fontdatabases/mac/qcoretextfontdatabase.mm
|
|
|
|
|
+++ b/src/platformsupport/fontdatabases/mac/qcoretextfontdatabase.mm
|
|
|
|
|
@@ -259,6 +259,13 @@ static void getFontDescription(CTFontDescriptorRef font, FontDescription *fd)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
fd->foundryName = QStringLiteral("CoreText");
|
|
|
|
|
fd->familyName = (CFStringRef) CTFontDescriptorCopyAttribute(font, kCTFontFamilyNameAttribute);
|
|
|
|
|
+
|
|
|
|
@@ -11138,13 +11167,13 @@ index faea54b..7d85080 100644
|
|
|
|
|
+++ b/src/plugins/platforminputcontexts/platforminputcontexts.pro
|
|
|
|
|
@@ -1,7 +1,8 @@
|
|
|
|
|
TEMPLATE = subdirs
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
qtHaveModule(dbus) {
|
|
|
|
|
-!mac:!win32:SUBDIRS += ibus
|
|
|
|
|
+# Adding fcitx input context plugin to our static build.
|
|
|
|
|
+!mac:!win32:SUBDIRS += ibus fcitx
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
contains(QT_CONFIG, xcb-plugin): SUBDIRS += compose
|
|
|
|
|
diff --git a/src/plugins/platforms/cocoa/qcocoaapplicationdelegate.mm b/src/plugins/platforms/cocoa/qcocoaapplicationdelegate.mm
|
|
|
|
|
index caa8884..b083e65 100644
|
|
|
|
@@ -11158,7 +11187,7 @@ index caa8884..b083e65 100644
|
|
|
|
|
+ // Don't terminate if reflectionDelegate does not respond to that selector, just use the default.
|
|
|
|
|
+ //return NSTerminateNow;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if ([self canQuit]) {
|
|
|
|
|
diff --git a/src/plugins/platforms/cocoa/qcocoabackingstore.h b/src/plugins/platforms/cocoa/qcocoabackingstore.h
|
|
|
|
|
index 5a199de..5622728 100644
|
|
|
|
@@ -11172,7 +11201,7 @@ index 5a199de..5622728 100644
|
|
|
|
|
+ // Optimize redraw - don't clear image if it will be fully redrawn.
|
|
|
|
|
+ bool m_qImageNeedsClear;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
QT_END_NAMESPACE
|
|
|
|
|
diff --git a/src/plugins/platforms/cocoa/qcocoabackingstore.mm b/src/plugins/platforms/cocoa/qcocoabackingstore.mm
|
|
|
|
|
index ca92103..225d85f 100644
|
|
|
|
@@ -11180,14 +11209,14 @@ index ca92103..225d85f 100644
|
|
|
|
|
+++ b/src/plugins/platforms/cocoa/qcocoabackingstore.mm
|
|
|
|
|
@@ -38,7 +38,8 @@
|
|
|
|
|
QT_BEGIN_NAMESPACE
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
QCocoaBackingStore::QCocoaBackingStore(QWindow *window)
|
|
|
|
|
- : QPlatformBackingStore(window)
|
|
|
|
|
+ // Optimize redraw - don't clear image if it will be fully redrawn.
|
|
|
|
|
+ : QPlatformBackingStore(window), m_qImageNeedsClear(false)
|
|
|
|
|
{
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@@ -59,9 +60,11 @@ QPaintDevice *QCocoaBackingStore::paintDevice()
|
|
|
|
|
if (m_qImage.size() != effectiveBufferSize) {
|
|
|
|
|
QImage::Format format = (window()->format().hasAlpha() || cocoaWindow->m_drawContentBorderGradient)
|
|
|
|
@@ -11202,7 +11231,7 @@ index ca92103..225d85f 100644
|
|
|
|
|
}
|
|
|
|
|
return &m_qImage;
|
|
|
|
|
@@ -100,7 +103,8 @@ bool QCocoaBackingStore::scroll(const QRegion &area, int dx, int dy)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void QCocoaBackingStore::beginPaint(const QRegion ®ion)
|
|
|
|
|
{
|
|
|
|
|
- if (m_qImage.hasAlphaChannel()) {
|
|
|
|
@@ -11227,7 +11256,7 @@ index c2d206f..0f9b512 100644
|
|
|
|
|
+
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@@ -466,7 +472,8 @@ QList<int> QCocoaKeyMapper::possibleKeys(const QKeyEvent *event) const
|
|
|
|
|
Qt::KeyboardModifiers neededMods = ModsTbl[i];
|
|
|
|
|
int key = kbItem->qtKey[i];
|
|
|
|
@@ -11261,7 +11290,7 @@ index 8152c57..a7c1ca0 100644
|
|
|
|
|
+ const int padding = 0;
|
|
|
|
|
const int menuHeight = [[NSStatusBar systemStatusBar] thickness];
|
|
|
|
|
const int maxImageHeight = menuHeight - padding;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@@ -207,8 +211,11 @@ void QCocoaSystemTrayIcon::updateIcon(const QIcon &icon)
|
|
|
|
|
// devicePixelRatio for the "best" screen on the system.
|
|
|
|
|
qreal devicePixelRatio = qApp->devicePixelRatio();
|
|
|
|
@@ -11276,21 +11305,21 @@ index 8152c57..a7c1ca0 100644
|
|
|
|
|
// with a height smaller or equal to maxPixmapHeight. The pixmap
|
|
|
|
|
// may rectangular; assume it has a reasonable size. If there is
|
|
|
|
|
@@ -224,9 +231,9 @@ void QCocoaSystemTrayIcon::updateIcon(const QIcon &icon)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Handle SVG icons, which do not return anything for availableSizes().
|
|
|
|
|
if (!selectedSize.isValid())
|
|
|
|
|
- selectedSize = icon.actualSize(QSize(maxPixmapHeight, maxPixmapHeight));
|
|
|
|
|
+ selectedSize = icon.actualSize(QSize(maxPixmapHeight, maxPixmapHeight), mode);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- QPixmap pixmap = icon.pixmap(selectedSize);
|
|
|
|
|
+ QPixmap pixmap = icon.pixmap(selectedSize, mode);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Draw a low-resolution icon if there is not enough pixels for a retina
|
|
|
|
|
// icon. This prevents showing a small icon on retina displays.
|
|
|
|
|
@@ -374,6 +381,11 @@ QT_END_NAMESPACE
|
|
|
|
|
Q_UNUSED(notification);
|
|
|
|
|
down = NO;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
+ // Create a rich os x tray icon (pixel-perfect, theme switching).
|
|
|
|
|
+ parent->iconSelected = false;
|
|
|
|
|
+ parent->systray->updateIcon(parent->icon);
|
|
|
|
@@ -11298,11 +11327,11 @@ index 8152c57..a7c1ca0 100644
|
|
|
|
|
+
|
|
|
|
|
[self setNeedsDisplay:YES];
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@@ -383,6 +395,10 @@ QT_END_NAMESPACE
|
|
|
|
|
int clickCount = [mouseEvent clickCount];
|
|
|
|
|
[self setNeedsDisplay:YES];
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
+ // Create a rich os x tray icon (pixel-perfect, theme switching).
|
|
|
|
|
+ parent->iconSelected = (clickCount != 2) && parent->menu;
|
|
|
|
|
+ parent->systray->updateIcon(parent->icon);
|
|
|
|
@@ -11321,7 +11350,7 @@ index 8152c57..a7c1ca0 100644
|
|
|
|
|
+
|
|
|
|
|
[self menuTrackingDone:nil];
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@@ -410,6 +431,11 @@ QT_END_NAMESPACE
|
|
|
|
|
-(void)rightMouseUp:(NSEvent *)mouseEvent
|
|
|
|
|
{
|
|
|
|
@@ -11333,10 +11362,10 @@ index 8152c57..a7c1ca0 100644
|
|
|
|
|
+
|
|
|
|
|
[self menuTrackingDone:nil];
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@@ -425,7 +451,8 @@ QT_END_NAMESPACE
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-(void)drawRect:(NSRect)rect {
|
|
|
|
|
- [[parent item] drawStatusBarBackgroundInRect:rect withHighlight:down];
|
|
|
|
|
+ // Create a rich os x tray icon (pixel-perfect, theme switching).
|
|
|
|
@@ -11373,7 +11402,7 @@ index 00cb43c..4530862 100644
|
|
|
|
|
@@ -141,7 +141,8 @@ static bool isMouseEvent(NSEvent *ev)
|
|
|
|
|
if (!self.window.delegate)
|
|
|
|
|
return; // Already detached, pending NSAppKitDefined event
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- if (pw && pw->frameStrutEventsEnabled() && isMouseEvent(theEvent)) {
|
|
|
|
|
+ // Fix restore after minimize or close by window buttons.
|
|
|
|
|
+ if (pw && pw->frameStrutEventsEnabled() && pw->m_synchedWindowState != Qt::WindowMinimized && pw->m_isExposed && isMouseEvent(theEvent)) {
|
|
|
|
@@ -11383,7 +11412,7 @@ index 00cb43c..4530862 100644
|
|
|
|
|
@@ -931,6 +932,15 @@ void QCocoaWindow::setWindowFilePath(const QString &filePath)
|
|
|
|
|
[m_nsWindow setRepresentedFilename: fi.exists() ? QCFString::toNSString(filePath) : @""];
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
+// Create a good os x window icon (pixel-perfect).
|
|
|
|
|
+qreal _win_devicePixelRatio() {
|
|
|
|
|
+ qreal result = 1.0;
|
|
|
|
@@ -11423,7 +11452,7 @@ index 0d80333..729d4d0 100644
|
|
|
|
|
}
|
|
|
|
|
@@ -1451,14 +1452,14 @@ static QTabletEvent::TabletDevice wacomTabletDevice(NSEvent *theEvent)
|
|
|
|
|
quint32 nativeVirtualKey = [nsevent keyCode];
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
QChar ch = QChar::ReplacementCharacter;
|
|
|
|
|
- int keyCode = Qt::Key_unknown;
|
|
|
|
|
- if ([characters length] != 0) {
|
|
|
|
@@ -11441,13 +11470,13 @@ index 0d80333..729d4d0 100644
|
|
|
|
|
+ ch = QChar([charactersIgnoringModifiers characterAtIndex:0]);
|
|
|
|
|
+
|
|
|
|
|
+ int keyCode = [self convertKeyCode:ch];
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// we will send a key event unless the input method sets m_sendKeyEvent to false
|
|
|
|
|
m_sendKeyEvent = true;
|
|
|
|
|
@@ -1524,6 +1525,23 @@ static QTabletEvent::TabletDevice wacomTabletDevice(NSEvent *theEvent)
|
|
|
|
|
[self handleKeyEvent:nsevent eventType:int(QEvent::KeyRelease)];
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
+// Enable Ctrl+Tab and Ctrl+Shift+Tab / Ctrl+Backtab handle in-app.
|
|
|
|
|
+- (BOOL)performKeyEquivalent:(NSEvent *)nsevent
|
|
|
|
|
+{
|
|
|
|
@@ -11475,7 +11504,7 @@ index 9211fd1..283aabd 100644
|
|
|
|
|
@@ -716,12 +716,20 @@ public:
|
|
|
|
|
void setSelectedFiles(const QList<QUrl> &);
|
|
|
|
|
QString selectedFile() const;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
+ // Adding select-by-url for Windows file dialog.
|
|
|
|
|
+ void setSelectedRemoteContent(const QByteArray &);
|
|
|
|
|
+ QByteArray selectedRemoteContent() const;
|
|
|
|
@@ -11496,7 +11525,7 @@ index 9211fd1..283aabd 100644
|
|
|
|
|
@@ -775,6 +783,21 @@ inline void QWindowsFileDialogSharedData::setSelectedFiles(const QList<QUrl> &ur
|
|
|
|
|
m_data->selectedFiles = urls;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
+// Adding select-by-url for Windows file dialog.
|
|
|
|
|
+inline QByteArray QWindowsFileDialogSharedData::selectedRemoteContent() const
|
|
|
|
|
+{
|
|
|
|
@@ -11518,7 +11547,7 @@ index 9211fd1..283aabd 100644
|
|
|
|
|
@@ -899,6 +922,9 @@ public:
|
|
|
|
|
// example by appended default suffixes, etc.
|
|
|
|
|
virtual QList<QUrl> dialogResult() const = 0;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
+ // Adding select-by-url for Windows file dialog.
|
|
|
|
|
+ virtual QByteArray dialogRemoteContent() const { return QByteArray(); }
|
|
|
|
|
+
|
|
|
|
@@ -11540,7 +11569,7 @@ index 9211fd1..283aabd 100644
|
|
|
|
|
+ m_fileDialog->SetFileName((wchar_t*)file.utf16());;
|
|
|
|
|
+ }
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Return the index of the selected filter, accounting for QFileDialog
|
|
|
|
|
@@ -1405,7 +1438,11 @@ bool QWindowsNativeFileDialogBase::onFileOk()
|
|
|
|
|
{
|
|
|
|
@@ -11553,12 +11582,12 @@ index 9211fd1..283aabd 100644
|
|
|
|
|
+
|
|
|
|
|
+ return true;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void QWindowsNativeFileDialogBase::close()
|
|
|
|
|
@@ -1534,6 +1571,9 @@ public:
|
|
|
|
|
QList<QUrl> selectedFiles() const Q_DECL_OVERRIDE;
|
|
|
|
|
QList<QUrl> dialogResult() const Q_DECL_OVERRIDE;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
+ // Adding select-by-url for Windows file dialog.
|
|
|
|
|
+ QByteArray dialogRemoteContent() const Q_DECL_OVERRIDE;
|
|
|
|
|
+
|
|
|
|
@@ -11568,7 +11597,7 @@ index 9211fd1..283aabd 100644
|
|
|
|
|
@@ -1548,6 +1588,62 @@ QList<QUrl> QWindowsNativeOpenFileDialog::dialogResult() const
|
|
|
|
|
return result;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
+// Adding select-by-url for Windows file dialog.
|
|
|
|
|
+QByteArray QWindowsNativeOpenFileDialog::dialogRemoteContent() const
|
|
|
|
|
+{
|
|
|
|
@@ -11642,7 +11671,7 @@ index 9211fd1..283aabd 100644
|
|
|
|
|
@@ -1704,6 +1804,12 @@ QList<QUrl> QWindowsFileDialogHelper::selectedFiles() const
|
|
|
|
|
return m_data.selectedFiles();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
+// Adding select-by-url for Windows file dialog.
|
|
|
|
|
+QByteArray QWindowsFileDialogHelper::selectedRemoteContent() const
|
|
|
|
|
+{
|
|
|
|
@@ -11666,7 +11695,7 @@ index 9211fd1..283aabd 100644
|
|
|
|
|
@@ -2036,6 +2146,12 @@ QList<QUrl> QWindowsXpFileDialogHelper::selectedFiles() const
|
|
|
|
|
return m_data.selectedFiles();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
+// Adding select-by-url for Windows file dialog.
|
|
|
|
|
+QByteArray QWindowsXpFileDialogHelper::selectedRemoteContent() const
|
|
|
|
|
+{
|
|
|
|
@@ -11749,7 +11778,7 @@ index 3f3a6e7..f1cf176 100644
|
|
|
|
|
@@ -1200,6 +1200,15 @@ QList<QUrl> QFileDialogPrivate::userSelectedFiles() const
|
|
|
|
|
return files;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
+// Adding select-by-url for Windows file dialog.
|
|
|
|
|
+QByteArray QFileDialogPrivate::userSelectedRemoteContent() const
|
|
|
|
|
+{
|
|
|
|
@@ -11765,7 +11794,7 @@ index 3f3a6e7..f1cf176 100644
|
|
|
|
|
@@ -1267,6 +1276,14 @@ QStringList QFileDialog::selectedFiles() const
|
|
|
|
|
return files;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
+// Adding select-by-url for Windows file dialog.
|
|
|
|
|
+QByteArray QFileDialog::selectedRemoteContent() const
|
|
|
|
|
+{
|
|
|
|
@@ -11784,13 +11813,13 @@ index ffe49a2..4213206 100644
|
|
|
|
|
@@ -108,6 +108,9 @@ public:
|
|
|
|
|
void selectFile(const QString &filename);
|
|
|
|
|
QStringList selectedFiles() const;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
+ // Adding select-by-url for Windows file dialog.
|
|
|
|
|
+ QByteArray selectedRemoteContent() const;
|
|
|
|
|
+
|
|
|
|
|
void selectUrl(const QUrl &url);
|
|
|
|
|
QList<QUrl> selectedUrls() const;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
diff --git a/src/widgets/dialogs/qfiledialog_p.h b/src/widgets/dialogs/qfiledialog_p.h
|
|
|
|
|
index f610e46..ca71d55 100644
|
|
|
|
|
--- a/src/widgets/dialogs/qfiledialog_p.h
|
|
|
|
@@ -11820,7 +11849,7 @@ index f610e46..ca71d55 100644
|
|
|
|
|
@@ -393,6 +401,14 @@ inline QList<QUrl> QFileDialogPrivate::selectedFiles_sys() const
|
|
|
|
|
return QList<QUrl>();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
+// Adding select-by-url for Windows file dialog.
|
|
|
|
|
+inline QByteArray QFileDialogPrivate::selectedRemoteContent_sys() const
|
|
|
|
|
+{
|
|
|
|
@@ -11859,7 +11888,7 @@ index ebb2921..8119bad 100644
|
|
|
|
|
+ qpa_sys->updateMenu(nullptr);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
diff --git a/src/widgets/widgets/qwidgetlinecontrol.cpp b/src/widgets/widgets/qwidgetlinecontrol.cpp
|
|
|
|
|
index 436937b..fc7a843 100644
|
|
|
|
|
--- a/src/widgets/widgets/qwidgetlinecontrol.cpp
|
|
|
|
@@ -11878,7 +11907,7 @@ index 436937b..fc7a843 100644
|
|
|
|
|
#endif
|
|
|
|
|
@@ -1881,11 +1886,21 @@ void QWidgetLineControl::processKeyEvent(QKeyEvent* event)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// QTBUG-35734: ignore Ctrl/Ctrl+Shift; accept only AltGr (Alt+Ctrl) on German keyboards
|
|
|
|
|
- if (unknown && !isReadOnly()
|
|
|
|
|
- && event->modifiers() != Qt::ControlModifier
|
|
|
|
|