src/gui/kernel/qt_cocoa_helpers_mac.mm
changeset 37 758a864f9613
parent 33 3e2da88830cd
equal deleted inserted replaced
36:ef0373b55136 37:758a864f9613
   683     EventRef key_event = static_cast<EventRef>(const_cast<void *>([event eventRef]));
   683     EventRef key_event = static_cast<EventRef>(const_cast<void *>([event eventRef]));
   684     Q_ASSERT(key_event);
   684     Q_ASSERT(key_event);
   685     unsigned int info = 0;
   685     unsigned int info = 0;
   686     if ([event type] == NSKeyDown) {
   686     if ([event type] == NSKeyDown) {
   687         NSString *characters = [event characters];
   687         NSString *characters = [event characters];
   688         unichar value = [characters characterAtIndex:0];
   688         if ([characters length]) {
   689         qt_keymapper_private()->updateKeyMap(0, key_event, (void *)&value);
   689             unichar value = [characters characterAtIndex:0];
   690         info = value;
   690             qt_keymapper_private()->updateKeyMap(0, key_event, (void *)&value);
       
   691             info = value;
       
   692         }
   691     }
   693     }
   692 
   694 
   693     // Redirect keys to alien widgets.
   695     // Redirect keys to alien widgets.
   694     if (widgetToGetEvent->testAttribute(Qt::WA_NativeWindow) == false) {
   696     if (widgetToGetEvent->testAttribute(Qt::WA_NativeWindow) == false) {
   695         widgetToGetEvent = qApp->focusWidget();
   697         widgetToGetEvent = qApp->focusWidget();
  1525         [toolbar setShowsBaselineSeparator:NO];
  1527         [toolbar setShowsBaselineSeparator:NO];
  1526         [toolbar setVisible:true];
  1528         [toolbar setVisible:true];
  1527         [theWindow display];
  1529         [theWindow display];
  1528     }
  1530     }
  1529 }
  1531 }
       
  1532 
       
  1533 void qt_cocoaStackChildWindowOnTopOfOtherChildren(QWidget *childWidget)
       
  1534 {
       
  1535     if (!childWidget)
       
  1536         return;
       
  1537 
       
  1538     QWidget *parent = childWidget->parentWidget();
       
  1539     if (childWidget->isWindow() && parent) {
       
  1540         if ([[qt_mac_window_for(parent) childWindows] containsObject:qt_mac_window_for(childWidget)]) {
       
  1541             QWidgetPrivate *d = qt_widget_private(childWidget);
       
  1542             d->setSubWindowStacking(false);
       
  1543             d->setSubWindowStacking(true);
       
  1544         }
       
  1545     }
       
  1546 }
       
  1547 
  1530 #endif // QT_MAC_USE_COCOA
  1548 #endif // QT_MAC_USE_COCOA
  1531 
  1549 
  1532 QT_END_NAMESPACE
  1550 QT_END_NAMESPACE