view src/ui/bmi/mmiBtips.h @ 78:c632896652ba

mfw/ti1_key.c: properly initialize notified_keys array The code in this ti1_key.c layer needs to call kpd_subscribe() and kpd_define_key_notification() functions in order to register with the KPD driver. The original code passed KPD_NB_PHYSICAL_KEYS in nb_notified_keys - this constant is defined to 24 in kpd_cfg.h on all platforms of interest to us - but it only filled the first 23 slots in the notified_keys array, resulting in stack garbage being passed to KPD API functions. The fix consists of initializing the last missed array slot to KPD_KEY_RECORD, the key ID for the right side button on the D-Sample handset. On our current hw targets this "Record" button exists as the EXTRA button on our Luna keypad board and as the camera button on the Pirelli DP-L10. There is no support whatsoever for this button in current BMI+MFW, we have no plans of doing anything with Pirelli's camera button even if we do get our UI fw running on that phone, and the Mother's dream of building our own FreeCalypso handset with the same button arrangement as D-Sample (including the right side button) is currently very nebulous - but let us nonetheless handle the full set of buttons on the KPD to MFW interface, and let upper layers weed out unsupported buttons.
author Mychaela Falconia <falcon@freecalypso.org>
date Sun, 25 Oct 2020 23:41:01 +0000
parents 67bfe9f274f6
children
line wrap: on
line source

#ifndef _MMIBTIPS_H_
#define _MMIBTIPS_H_

/* =========================================================
*             Texas Instruments OMAP(TM) Platform Software
*  (c) Copyright Texas Instruments, Incorporated.  All Rights Reserved.
*
*  Use of this software is controlled by the terms and conditions found
*  in the license agreement under which this software has been supplied.
* ========================================================== */
/*
 $Project name: Basic Bluetooth MMI
 $Project code:
 $Module:   Bluetooth BMG APPlication
 $File:       MmiBtipsBmg.h
 $Revision:   1.0
 $Author:   Texas Instruments
 $Date:       26/06/07

********************************************************************************

 Description:

    This module provides the BTIPS BMG APPlication functionality.

********************************************************************************
 $History: MmiBtipsBmg.h

  26/06/07 Sasken original version

 $End

*******************************************************************************/
#include "Bttypes.h"

typedef struct _MMI_Btips_data
{
	 int ipBtipsHandle;
	/*Editor for Pincode request*/
	T_MFW_HND   	pinCode_editor;
	/*Global Data related to BTIPS Application Statemachine*/
	U8	incomingPinRequestState; //TRUE for incoming and FALSE for bond request(out-going)
	BD_ADDR		bd_addr_incomingPinReq;
	U8				deviceName[BT_MAX_REM_DEV_NAME + 1]; //of the current Bonding (IN/OUT) device
}	MMI_Btips_data;

/*******************************************************************************
                                                                              
                                Public methods
                                                                              
*******************************************************************************/

T_MFW_HND mfw_btips_create(T_MFW_HND hWin, T_MFW_EVENT event, MfwTyp type, T_MFW_CB cbfunc);
GLOBAL MfwHnd mmi_btips_app_show_info(T_MFW_HND parent, int str1, int str2,int timer, T_VOID_FUNC callback);
MfwHnd mmi_btips_app_show_text(T_MFW_HND parent, char * str1, char * str2, T_VOID_FUNC callback);
T_MFW_HND mmi_btips_app_ask_info(T_MFW_HND parent, char * str1, char * str2, T_VOID_FUNC callback);

#endif