Dialog and Popover have no attached theme property

Bug #1555548 reported by Tim Peeters
12
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Canonical System Image
Fix Released
Critical
Zoltan Balogh
ubuntu-ui-toolkit (Ubuntu)
Fix Released
Critical
Tim Peeters
ubuntu-ui-toolkit (Ubuntu RTM)
Fix Released
Undecided
Unassigned
unity8 (Ubuntu)
New
Critical
Unassigned

Bug Description

In order to give the Dialog a different theme from the rest of an app, we need to set the theme property, as is done in the example of the theming tutorial in file:///usr/share/ubuntu-ui-toolkit/doc/html/ubuntu-theming-subtheming.html (ubuntu-ui-toolkit-doc package):

import QtQuick 2.4
import Ubuntu.Components 1.3
import Ubuntu.Components.Popups 1.3
MainView {
    width: units.gu(40)
    height: units.gu(71)

    applicationName: "subthemed"

    // make sure the main theme is Ambiance
    theme.name: "Ubuntu.Components.Themes.Ambiance"

    Component {
        id: dialogComponent
        Dialog {
            id: dialog
            title: "Input dialog"
            // the dialog and its children will use SuruDark
            theme: ThemeSettings {
                name: "Ubuntu.Components.Themes.SuruDark"
            }
            TextField {
                placeholderText: "enter text"
            }
            Button {
                text: "Close"
                onClicked: PopupUtils.close(dialog)
            }
        }
    }

    Button {
        text: "Open dialog"
        onClicked: PopupUtils.open(dialogComponent)
    }
}

However, this gives the following error file:///home/tim/test.qml:19 Cannot assign to non-existent property "theme"
because Dialog is not a StyledItem.

Related branches

Revision history for this message
Tim Peeters (tpeeters) wrote :

Workaround:

import QtQuick 2.4
import Ubuntu.Components 1.3
import Ubuntu.Components.Popups 1.3
MainView {
    width: units.gu(40)
    height: units.gu(71)

    applicationName: "subthemed"

    // make sure the main theme is Ambiance
    theme.name: "Ubuntu.Components.Themes.Ambiance"

    Component {
        id: dialogComponent
        Dialog {
            id: dialog
            title: "Input dialog"
            // the dialog and its children will use SuruDark
            ThemeSettings {
  id: tset
                name: "Ubuntu.Components.Themes.SuruDark"
            }
            TextField {
                placeholderText: "enter text"
            }
            Button {
                text: "Close"
                onClicked: PopupUtils.close(dialog)
            }
     Component.onCompleted: {
  __foreground.theme = tset;
     }
        }
    }

    Button {
        text: "Open dialog"
        onClicked: PopupUtils.open(dialogComponent)
    }
}

Revision history for this message
Zsombor Egri (zsombi) wrote :

Same applies for Popover!!!

Changed in ubuntu-ui-toolkit (Ubuntu):
status: New → Confirmed
Revision history for this message
Tim Peeters (tpeeters) wrote :

When fixing the bug, please add the missing import Ubuntu.Components.Popups 1.3 to the tutorial code.

summary: - Dialog has no attached theme property
+ Dialog and Popover have no attached theme property
Tim Peeters (tpeeters)
Changed in ubuntu-ui-toolkit (Ubuntu):
importance: Undecided → High
Revision history for this message
Lukáš Tinkl (lukas-kde) wrote :

For the record, this breaks Unity 8 shutdown/reboot/logout dialogs: the title and subtitle texts are rendered in white-on-white

Changed in unity8 (Ubuntu):
importance: Undecided → Critical
Revision history for this message
kevin gunn (kgunn72) wrote :

note: currently unity8 using a workaround on vivid atm, but this same workaround doesn't work on xenial.

Tim Peeters (tpeeters)
Changed in ubuntu-ui-toolkit (Ubuntu):
assignee: nobody → Tim Peeters (tpeeters)
importance: High → Critical
Changed in canonical-devices-system-image:
milestone: none → 11
Tim Peeters (tpeeters)
Changed in canonical-devices-system-image:
status: New → In Progress
Changed in ubuntu-ui-toolkit (Ubuntu):
status: Confirmed → In Progress
Tim Peeters (tpeeters)
Changed in ubuntu-ui-toolkit (Ubuntu):
status: In Progress → Fix Committed
Revision history for this message
Łukasz Zemczak (sil2100) wrote :
Download full text (4.1 KiB)

This bug was fixed in the package ubuntu-ui-toolkit 1.3.1918+15.04.20160404-0ubuntu1 in https://launchpad.net/~ci-train-ppa-service/+archive/ubuntu/stable-phone-overlay

---------------

ubuntu-ui-toolkit (1.3.1918+15.04.20160404-0ubuntu1) vivid; urgency=medium

  [ Benjamin Zeller ]
  * Register expected warning messages in the tree testcase.
  * Add testsuite for Tree. Fixes LP: #1549171.
  * Compile with Qt 5.6. Fixes LP: #1540356
  * More Qt 5.6 fixes.

  [ Michael Terry ]
  * Add grabGesture field to SwipeArea.
  * This field controls whether the SwipeArea takes ownership of the gestures it
    observes. Fixes LP: #1527387.

  [ Timo Jyrinki ]
  * Add a test for blocking if packaging not sorted and clean.
  * More package name transitioning, wrap and sort, fix debian/copyright syntax,
    update standards-version, fix devel package sections and add/fix
    lintian-overrides.

  [ Olivier Tilloy ]
  * Fix dependencies of the transitional dummy package
    qtdeclarative5-ubuntu-ui-toolkit-plugin. Fixes LP: #1553551.

  [ Christian Dywan ]
  * Rename qtdeclarative5-*-plugin to qml-module-*. Fixes LP: #1342031.
  * Require a qtdeclarative5 known to have the tab fence patch.
  * Reset previous theme version and use UbuntuTestCase in tst_animator.
  * BottomEdge(Hint) focus and close via keyboard. Fixes LP: #1523825
  * Add 1.3 version of UbuntuTestCase.
  * No gdb when running unit tests on armv7l.
  * Build-depend on python3-debian for wrap-and-sort.

  [ XiaoGuo Liu ]
  * Fix AdaptivePageLayout documentation.

  [ Tim Peeters ]
  * Properly disable left/right arrows on sections when at the beginning/end of
    the list. Fixes LP: #1551356.
  * Sections and old AppHeader landscape mode. Fixes LP: #1551341.
  * Set the window color as soon as the window is available, to avoid a
    flickering background when it is updated later.
    Fixes LP: #1439133, LP: #1554897
  * Add theme, style and styleName properties to Dialog and Popover.
    Fixes LP: #1555548
  * Update the gallery script to use the new name of the export script.
  * Export the full list of library paths.
  * Prevent Page geometry changes in APL when changing Pages in a column.
  * Fix typo in DatePickerStyle. Fixes: LP #1561440.

  [ Zsombor Egri ]
  * ListItem focus navigation in ListView and other views.
    Fixes LP: #1523815, LP: #1536679, LP: #1549733, LP: #1549743
  * BorromEdge.preloadContent. Fixes LP: #1540454.
  * Asynchronous loader (AsyncLoader) using incubator, prerequisite for
    BottomEdge preloading its content. Fixes LP: #1540454.
  * ListView proxy should not consume up/down key events. Fixes LP: #1554447
  * Pick up the right style. Fixes LP: #1555797
  * Label makes sure the color alteration is known by the theming.
    Fixes LP: #1555784
  * Fix AsyncLoader tests so they create slightly less amount of elements.
  * AdaptivePageLayout removes all pages pushed to next columns when
    addPageToNextColumn() is called. Fixes LP: #1544745
  * Fix BottomEdge content discarding.
  * Disconnect enabled signal in Label in destructor, so functor call will not
    be handled when QQuickItem triggers enabled change. Fixes LP: #1560044.

  [ Andrea Bernabei ]
  * UI G...

Read more...

Changed in ubuntu-ui-toolkit (Ubuntu RTM):
status: New → Fix Released
Changed in canonical-devices-system-image:
status: In Progress → Fix Committed
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (4.1 KiB)

This bug was fixed in the package ubuntu-ui-toolkit - 1.3.1918+16.04.20160404-0ubuntu1

---------------
ubuntu-ui-toolkit (1.3.1918+16.04.20160404-0ubuntu1) xenial; urgency=medium

  [ Benjamin Zeller ]
  * Register expected warning messages in the tree testcase.
  * Add testsuite for Tree. Fixes LP: #1549171.
  * Compile with Qt 5.6. Fixes LP: #1540356
  * More Qt 5.6 fixes.

  [ Michael Terry ]
  * Add grabGesture field to SwipeArea.
  * This field controls whether the SwipeArea takes ownership of the gestures it
    observes. Fixes LP: #1527387.

  [ Timo Jyrinki ]
  * Add additional Breaks as requested by archive admin.
  * Add a test for blocking if packaging not sorted and clean.
  * More package name transitioning, wrap and sort, fix debian/copyright syntax,
    update standards-version, fix devel package sections and add/fix
    lintian-overrides.

  [ Olivier Tilloy ]
  * Fix dependencies of the transitional dummy package
    qtdeclarative5-ubuntu-ui-toolkit-plugin. Fixes LP: #1553551.

  [ Christian Dywan ]
  * Rename qtdeclarative5-*-plugin to qml-module-*. Fixes LP: #1342031.
  * Require a qtdeclarative5 known to have the tab fence patch.
  * Reset previous theme version and use UbuntuTestCase in tst_animator.
  * BottomEdge(Hint) focus and close via keyboard. Fixes LP: #1523825
  * Add 1.3 version of UbuntuTestCase.
  * No gdb when running unit tests on armv7l.
  * Build-depend on python3-debian for wrap-and-sort.

  [ XiaoGuo Liu ]
  * Fix AdaptivePageLayout documentation.

  [ Tim Peeters ]
  * Properly disable left/right arrows on sections when at the beginning/end of
    the list. Fixes LP: #1551356.
  * Sections and old AppHeader landscape mode. Fixes LP: #1551341.
  * Set the window color as soon as the window is available, to avoid a
    flickering background when it is updated later.
    Fixes LP: #1439133, LP: #1554897
  * Add theme, style and styleName properties to Dialog and Popover.
    Fixes LP: #1555548
  * Update the gallery script to use the new name of the export script.
  * Export the full list of library paths.
  * Prevent Page geometry changes in APL when changing Pages in a column.
  * Fix typo in DatePickerStyle. Fixes: LP #1561440.

  [ Zsombor Egri ]
  * ListItem focus navigation in ListView and other views.
    Fixes LP: #1523815, LP: #1536679, LP: #1549733, LP: #1549743
  * BorromEdge.preloadContent. Fixes LP: #1540454.
  * Asynchronous loader (AsyncLoader) using incubator, prerequisite for
    BottomEdge preloading its content. Fixes LP: #1540454.
  * ListView proxy should not consume up/down key events. Fixes LP: #1554447
  * Pick up the right style. Fixes LP: #1555797
  * Label makes sure the color alteration is known by the theming.
    Fixes LP: #1555784
  * Fix AsyncLoader tests so they create slightly less amount of elements.
  * AdaptivePageLayout removes all pages pushed to next columns when
    addPageToNextColumn() is called. Fixes LP: #1544745
  * Fix BottomEdge content discarding.
  * Disconnect enabled signal in Label in destructor, so functor call will not
    be handled when QQuickItem triggers enabled change. Fixes LP: #1560044.

  [ Andrea Bernabei ]
  * UI Gallery: fix vertical alig...

Read more...

Changed in ubuntu-ui-toolkit (Ubuntu):
status: Fix Committed → Fix Released
Changed in canonical-devices-system-image:
assignee: nobody → Zoltan Balogh (bzoltan)
importance: Undecided → Critical
Changed in canonical-devices-system-image:
status: Fix Committed → Fix Released
beanroy (beanroy)
information type: Public → Private Security
information type: Private Security → Public
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.