VirtualBox

Ignore:
Timestamp:
Oct 17, 2019 12:43:36 PM (6 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
134018
Message:

FE/Qt: bugref:6143. Showing a message on the status bar when the cursor hovers above a multimeda key.

Location:
trunk/src/VBox/Frontends/VirtualBox
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Frontends/VirtualBox/src/softkeyboard/UISoftKeyboard.cpp

    r81309 r81311  
    686686    bool               loadKeyboardLayout(const QString &strLayoutName);
    687687    void               prepareObjects();
     688    void               prepareColorThemes();
    688689    UISoftKeyboardPhysicalLayout *findPhysicalLayout(const QUuid &uuid);
    689690    /** Sets m_pKeyBeingEdited. */
     
    695696    void               lookAtDefaultLayoutFolder(QStringList &fileList);
    696697    UISoftKeyboardColorTheme *colorTheme(const QString &strColorThemeName);
     698    void showKeyTooltip(UISoftKeyboardKey *pKey);
     699
    697700    UISoftKeyboardKey *m_pKeyUnderMouse;
    698701    UISoftKeyboardKey *m_pKeyBeingEdited;
     
    707710    QVector<UISoftKeyboardLayout>         m_layouts;
    708711    UISoftKeyboardLayout *m_pCurrentKeyboardLayout;
     712    /** Key is the key position as read from the layout and value is the message we show as mouse hovers over the key. */
     713    QMap<int, QString> m_keyTooltips;
    709714
    710715    QSize m_minimumSize;
     
    21542159{
    21552160    prepareObjects();
    2156 
    2157     int iIndex = 0;
    2158     while (predefinedColorThemes[iIndex][0])
    2159     {
    2160         m_colorThemes << UISoftKeyboardColorTheme(predefinedColorThemes[iIndex][0],
    2161                                                   predefinedColorThemes[iIndex][1],
    2162                                                   predefinedColorThemes[iIndex][2],
    2163                                                   predefinedColorThemes[iIndex][3],
    2164                                                   predefinedColorThemes[iIndex][4],
    2165                                                   predefinedColorThemes[iIndex][5]);
    2166         ++iIndex;
    2167     }
    2168 
    2169     UISoftKeyboardColorTheme customTheme;
    2170     customTheme.setName("Custom");
    2171     m_colorThemes.append(customTheme);
    2172     m_currentColorTheme = &(m_colorThemes.back());
     2161    prepareColorThemes();
     2162    retranslateUi();
    21732163}
    21742164
     
    23272317{
    23282318    QWidget::mouseMoveEvent(pEvent);
     2319    UISoftKeyboardKey *pPreviousKeyUnderMouse = m_pKeyUnderMouse;
    23292320    keyUnderMouse(pEvent);
     2321    if (pPreviousKeyUnderMouse != m_pKeyUnderMouse)
     2322        showKeyTooltip(m_pKeyUnderMouse);
    23302323}
    23312324
    23322325void UISoftKeyboardWidget::retranslateUi()
    23332326{
     2327    m_keyTooltips[300] = UISoftKeyboard::tr("Web browser go back");
     2328    m_keyTooltips[301] = UISoftKeyboard::tr("Web browser go the home page");
     2329    m_keyTooltips[302] = UISoftKeyboard::tr("Web browser go forward");
     2330    m_keyTooltips[315] = UISoftKeyboard::tr("Web browser reload the current page");
     2331    m_keyTooltips[314] = UISoftKeyboard::tr("Web browser stop loading the page");
     2332    m_keyTooltips[313] = UISoftKeyboard::tr("Web browser search");
     2333
     2334    m_keyTooltips[307] = UISoftKeyboard::tr("Jump back to previous media track");
     2335    m_keyTooltips[308] = UISoftKeyboard::tr("Jump to next media track");
     2336    m_keyTooltips[309] = UISoftKeyboard::tr("Stop playing");
     2337    m_keyTooltips[310] = UISoftKeyboard::tr("Play or pause playing");
     2338
     2339    m_keyTooltips[303] = UISoftKeyboard::tr("Start email application");
     2340    m_keyTooltips[311] = UISoftKeyboard::tr("Start calculator");
     2341    m_keyTooltips[312] = UISoftKeyboard::tr("Show 'My Computer'");
     2342    m_keyTooltips[316] = UISoftKeyboard::tr("Show Media folder");
     2343
     2344    m_keyTooltips[304] = UISoftKeyboard::tr("Mute");
     2345    m_keyTooltips[305] = UISoftKeyboard::tr("Volume up");
     2346    m_keyTooltips[306] = UISoftKeyboard::tr("Volume down");
    23342347}
    23352348
     
    25592572    if (!underMouse())
    25602573        m_pKeyUnderMouse = 0;
    2561     else
    2562     {
    2563         printf("under %d %d\n", cursor().pos().x(), cursor().pos().y());
    2564 
    2565     }
    25662574    update();
    25672575}
     
    30463054}
    30473055
     3056void UISoftKeyboardWidget::prepareColorThemes()
     3057{
     3058    int iIndex = 0;
     3059    while (predefinedColorThemes[iIndex][0])
     3060    {
     3061        m_colorThemes << UISoftKeyboardColorTheme(predefinedColorThemes[iIndex][0],
     3062                                                  predefinedColorThemes[iIndex][1],
     3063                                                  predefinedColorThemes[iIndex][2],
     3064                                                  predefinedColorThemes[iIndex][3],
     3065                                                  predefinedColorThemes[iIndex][4],
     3066                                                  predefinedColorThemes[iIndex][5]);
     3067        ++iIndex;
     3068    }
     3069
     3070    UISoftKeyboardColorTheme customTheme;
     3071    customTheme.setName("Custom");
     3072    m_colorThemes.append(customTheme);
     3073    m_currentColorTheme = &(m_colorThemes.back());
     3074}
     3075
    30483076void UISoftKeyboardWidget::setKeyBeingEdited(UISoftKeyboardKey* pKey)
    30493077{
     
    31173145    }
    31183146    return 0;
     3147}
     3148
     3149void UISoftKeyboardWidget::showKeyTooltip(UISoftKeyboardKey *pKey)
     3150{
     3151    if (pKey && m_keyTooltips.contains(pKey->position()))
     3152        sigStatusBarMessage(m_keyTooltips[pKey->position()]);
     3153    else
     3154        sigStatusBarMessage(QString());
     3155
    31193156}
    31203157
     
    40344071    connect(m_pKeyboardWidget, &UISoftKeyboardWidget::sigKeyToEdit, this, &UISoftKeyboard::sltKeyToEditChanged);
    40354072    connect(m_pKeyboardWidget, &UISoftKeyboardWidget::sigStatusBarMessage, this, &UISoftKeyboard::sltStatusBarMessage);
    4036     connect(m_pKeyboardWidget, &UISoftKeyboardWidget::sigStatusBarMessage, this, &UISoftKeyboard::sltStatusBarMessage);
    40374073    connect(m_pKeyboardWidget, &UISoftKeyboardWidget::sigCurrentColorThemeChanged, this, &UISoftKeyboard::sltHandleKeyboardWidgetColorThemeChange);
    40384074
  • trunk/src/VBox/Frontends/VirtualBox/xml/multimedia_keys.xml

    r81283 r81311  
    5555            <width>25</width>
    5656        </space>
    57         <key><!-- Previous -->
     57        <key><!-- Previous Media Track-->
    5858            <position>307</position>
    5959            <usageid>0xB6</usageid>
     
    6363            <staticcaption>⏮️</staticcaption>
    6464        </key>
    65         <key><!-- Next -->
     65        <key><!-- Next Media Track-->
    6666            <position>308</position>
    6767            <usageid>0xB5</usageid>
     
    116116        </key>
    117117        <key><!-- Media -->
    118             <position>312</position>
     118            <position>316</position>
    119119            <usageid>0x183</usageid>
    120120            <usagepage>0x0C</usagepage>
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette