~ci-train-bot/ubuntu-ui-toolkit/ubuntu-ui-toolkit-ubuntu-yakkety-2069

« back to all changes in this revision

Viewing changes to src/Ubuntu/UbuntuToolkit/ucstylehints.cpp

  • Committer: Bileto Bot
  • Date: 2016-08-14 09:06:34 UTC
  • mfrom: (1000.985.35 OTA13-2016-06-29)
  • Revision ID: ci-train-bot@canonical.com-20160814090634-uoxtg7ektrlidwh6
* Fix OptionSelectorTestCase tests.
* Fix more OptionSelector autopilot tests
* Disable documentation building for GLES builds. Fixes LP: #1606222.
* Replace abs with qFabs due to GCC6 breakage. Fixes LP: #1610943.
* Limit s390x dependencies more due to upstart/s390x problems and removed
  packages in archives. Fixes LP: #1610951
* ListItemLayout doc: add elide mode change example and add section about
  labels default properties values. Fixes LP: #1603450.
* ListItemLayout doc: add explicit note about the need to bind ListItem's
  height to layout's height.
* More Scrollbar optimizations: 20% faster creation time. Fixes LP: #1606451
* Scrollbar: fix wrong thumb color on tap/mouse release and increase coverage
  of hover states unit tests. Fixes LP: #1608897
* Fix null pointer property initializer used with 1.3 PageWrapper. 
  Fixes LP: #1604780.
* Fix BottomEdge content URL preloading. Fixes LP: #1604509.
* UCUnits::resolveResource: Prefer image path if it exists. This saves
  searching the disk for @gu images, which is a big speedup. According to
  callgrind loading 100 images from a folder that contains 380 images goes
  from around 3 million instructions per UCUnits::resolveResource call down
  to around 10 thousand. This optimization is ok since it is not correct to
  ship both image.png and image@20.png. You either have to ship gu-enabled
  files or not, but mixing them is not allowed. Searched for cases in which
  that may be happening in my phone and found none. Fixes LP: #1604029.
* Configure colors of the buttons in the ActionBar and PageHeader through
  their Styles. Fixes LP: #1597774.
* Fix assigning of constant values to a grouped property in StyleHints.
  Fixes LP: #1602836.
* Fix list view keyboard navigation for RightToLeft and BottomToTop 
  directions. Fixes LP: #1605634
* Use external QML files instead of embedded QML strings for autopilot tests.
  Fixes LP: #1578319
* Fix failing autopilot header tests.
* Fix ActionSelectionPopover Autopilot CPO tests.
* Include indexes in "offline" docs and filter out link errors.
  Fixes LP: #1603937.
* Increase focus ring thickness from 1dp to 2dp. Fixes LP: #1602690.
* Add a snippet about tests to the toplevel README
* Enter/Return to trigger, Space to expand ComboButton. Fixes LP: #1523817.
* Initialize engine variable before using it in the _engine case.
* Use Qt.rgba instead of #0000 checking ListItem default color. 
  Fixes LP: #1560004
* Don't use a different .desktop file in the gallery tests.
  Fixes LP: #1578319
* Update scaling docs, set QT_SCALE_FACTOR and unset GRID_UNIT_PX.
  Fixes LP: #1610208
* Sections: load Icons asynchronously.

Show diffs side-by-side

added added

removed removed

Lines of Context:
225
225
    m_propertyBackup.clear();
226
226
 
227
227
    QQuickItem *item = UCStyledItemBasePrivate::get(m_styledItem)->styleItem;
228
 
    const QMetaObject *mo = item->metaObject();
229
228
    const QString styleName = UCStyledItemBasePrivate::get(m_styledItem)->styleName();
230
229
    // apply values first
231
230
    for (int i = 0; i < m_values.size(); i++) {
232
 
        if (mo->indexOfProperty(m_values[i].first.toUtf8()) < 0) {
 
231
        // Checking the validity of the property using the index of m_values[i].first in
 
232
        //  item->metaObject is not sufficient in case of a grouped property, so we use
 
233
        //  PropertyChange to detect all properties that are not valid.
 
234
        PropertyChange *change = new PropertyChange(item, m_values[i].first.toUtf8());
 
235
        if (!change->property().isValid()) {
233
236
            propertyNotFound(styleName, m_values[i].first);
 
237
            delete change;
234
238
            continue;
235
239
        }
236
 
        PropertyChange *change = new PropertyChange(item, m_values[i].first.toUtf8());
237
240
        PropertyChange::setValue(change, m_values[i].second);
238
241
        m_propertyBackup << change;
239
242
    }