<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def show_generic_keywords(self, layer):
 """Show the keywords defined for the active layer. .. note:: The print button will be disabled if this method is called. .. versionchanged:: 3.3 - changed parameter from keywords object to a layer object so that we can show extra stuff like CRS and data source in the keywords. :param layer: A QGIS layer. :type layer: QgsMapLayer """

        keywords = KeywordIO(layer)
        self.print_button.setEnabled(False)
        try:
            message = keywords.to_message()
            send_static_message(self, message)
        except InvalidMessageItemError:
            # FIXME (elpaso)
            pass
        self.show_question_button.setVisible(False)
        self.question_group.setEnabled(True)
        self.question_group.setVisible(True)