Skip to content
  • Harald Sitter's avatar
    unbreak button states · e929d4c1
    Harald Sitter authored
    versionpage used KAssitantDialog's setAppropriate but that triggers
    internal re-evaluation of button states as per the appropriateness of
    adjacent pages of the current page.
    this then would short circuit when a premature conclusion page was shown
    (because the user provided no or insufficient information to file a
    report) and result in the back button getting enabled even when that
    wasn't reasonable (i.e. finished was emitted with showBack=false).
    
    notably this broke for none-kde addresses that aren't routed into
    bugzilla iff bugzilla responses are so slow that they'd arrive after the
    user reached the conclusion page
    
    the fix for this is super awkward. instead of using the existing
    appropriateness system, use a higher level one on our end. this also
    requires us to be able to iterate the page sequence. to achieve that we
    now put all pages in a vector in the sequence that they are in the
    pagedialog. on page changes we then establish whether we were moving
    forward or backward and this way skip over inappropriate pages.
    
    (could have used the hash, turn it into a map and use that instead, of a
    new vector but honestly I want the hash to go away and we'll manage the
    hand full of extra bytes until then)
    e929d4c1