Styling LibraryPreviewButton in skin.xml not possible if <Library> is inside <Splitter> instead of legacy <TableView> widget

Bug #1090480 reported by jus
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Mixxx
Fix Released
Low
RJ Skerry-Ryan

Bug Description

Tested on OSX 10.8.2 with lp:mixxx/1.11-skins which is merged from lp:mixxx/1.11

If the <Library> is wrapped inside the new <Splitter> widget, the default LibraryPreviewButton graphic is not shown, only an empty default button. Additionally you can not style the LibraryPreviewButton via skin.xml

If the <Library> is wrapped inside the legacy <TableView>widget, the default LibraryPreviewButton graphic is visible and you can can style the button as expected, e.g. by using
QPushButton#LibraryPreviewButton:!checked{ image: url(skin:/style/ic_library_preview_pause.png); }
QPushButton#LibraryPreviewButton:checked{ image: url(skin:/style/ic_library_preview_play.png); }

A small test skin.xml with 2 library tables, #1 with <TableView> and #2 with <Splitter> which shows the issue.

<!DOCTYPE skin>
<skin>
 <Background>
  <Path>background1280x800.png</Path>
  <BgColor>#000000</BgColor>
 </Background>

 <WidgetGroup>
  <Pos>0,0</Pos>
  <Size>1280,600</Size>
  <Layout>vertical</Layout>
  <Children>
   <!-- <TableView> Library sub-widget -->
   <WidgetGroup>
    <Pos>0,0</Pos>
    <Size>1280,300</Size>
    <Style>QGroupBox { background: red; }</Style>
    <Children>
     <TableView>
      <Style></Style>
     </TableView>
    </Children>
   </WidgetGroup>
   <!-- <Splitter> Library sub-widget -->
   <Splitter>
    <Size>1280,300</Size>
    <Style>QGroupBox { background: red; }</Style>
    <SplitSizes>1,10</SplitSizes>
    <Children>
     <WidgetGroup>
      <Layout>vertical</Layout>
      <Children>
       <!--Search Input Field-->
       <SearchBox></SearchBox>
       <!--Library Tree View-->
       <LibrarySidebar></LibrarySidebar>
      </Children>
     </WidgetGroup>
     <WidgetGroup>
      <!-- Library Table-->
      <Layout>vertical</Layout>
      <Children>
       <Library></Library>
      </Children>
     </WidgetGroup>
    </Children>
   </Splitter>
  </Children>
 </WidgetGroup>

</skin>

Tags: skin
Revision history for this message
jus (jus) wrote :
Revision history for this message
RJ Skerry-Ryan (rryan) wrote :

I think I ran into this also. I can't figure it out. If you change the button's border it works:

#LibraryPreviewButton {
  border: 0;
}

The <TableView> does a default styling of #LibraryPreviewButton like so:

#LibraryPreviewButton { background: transparent; border: 0; }

#LibraryPreviewButton:checked {
  image: url(:/images/library/ic_library_preview_pause.png);
}
#LibraryPreviewButton:!checked {
  image: url(:/images/library/ic_library_preview_play.png);
}

Changed in mixxx:
milestone: none → 1.11.0
status: New → Confirmed
Revision history for this message
RJ Skerry-Ryan (rryan) wrote :

This is fixed (or at least the workaround works) right?

RJ Skerry-Ryan (rryan)
Changed in mixxx:
milestone: 1.11.0 → 1.11.1
RJ Skerry-Ryan (rryan)
Changed in mixxx:
importance: Undecided → Low
Revision history for this message
Ferran Pujol (ferranpujol) wrote :

This isn't an issue anymore right? LateNight works well. Shall we mark this as fixed?

Revision history for this message
jus (jus) wrote :

Marking fixed, since it works now with all skins. RJ probably fixed it along the way.

Changed in mixxx:
assignee: nobody → RJ Ryan (rryan)
milestone: 1.11.1 → 1.12.0
status: Confirmed → Fix Committed
RJ Skerry-Ryan (rryan)
Changed in mixxx:
status: Fix Committed → Fix Released
Revision history for this message
Swiftb0y (swiftb0y) wrote :

Mixxx now uses GitHub for bug tracking. This bug has been migrated to:
https://github.com/mixxxdj/mixxx/issues/6772

lock status: Metadata changes locked and limited to project staff
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Bug attachments

Remote bug watches

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