46 lines
1.2 KiB
JavaScript
46 lines
1.2 KiB
JavaScript
import { rendererSend, rendererInvoke, NAMES } from '../../common/ipc'
|
|
import { throttle } from './index'
|
|
|
|
let listPosition = {}
|
|
let listPrevSelectId
|
|
|
|
const saveListPosition = throttle(() => {
|
|
rendererSend(NAMES.mainWindow.save_data, {
|
|
path: 'listPosition',
|
|
data: listPosition,
|
|
})
|
|
}, 1000)
|
|
|
|
export const initListPosition = () => {
|
|
return rendererInvoke(NAMES.mainWindow.get_data, 'listPosition').then(data => {
|
|
if (!data) data = {}
|
|
listPosition = data
|
|
})
|
|
}
|
|
export const getListPosition = id => listPosition[id] || 0
|
|
export const setListPosition = (id, position) => {
|
|
listPosition[id] = position || 0
|
|
saveListPosition()
|
|
}
|
|
export const removeListPosition = id => {
|
|
delete listPosition[id]
|
|
saveListPosition()
|
|
}
|
|
|
|
const saveListPrevSelectId = throttle(() => {
|
|
rendererSend(NAMES.mainWindow.save_data, {
|
|
path: 'listPrevSelectId',
|
|
data: listPrevSelectId,
|
|
})
|
|
}, 200)
|
|
export const initListPrevSelectId = () => {
|
|
return rendererInvoke(NAMES.mainWindow.get_data, 'listPrevSelectId').then(id => {
|
|
listPrevSelectId = id
|
|
})
|
|
}
|
|
export const getListPrevSelectId = () => listPrevSelectId
|
|
export const setListPrevSelectId = id => {
|
|
listPrevSelectId = id
|
|
saveListPrevSelectId()
|
|
}
|