forked from KolibriOS/kolibrios
Eolite:
- do not autorefresh folder on FD and CD disks - if /kolibrios is mounted than set a var and do not reread it further - increase refresh disk and folder timeout to 1.5 seconds git-svn-id: svn://kolibrios.org@9689 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
parent
dd4011f6d1
commit
2e3c29de7d
@ -1,4 +1,4 @@
|
|||||||
//Leency, Veliant, Punk_Joker, PavelYakov & KolibriOS Team 2008-2021
|
//Leency, Veliant, Punk_Joker, PavelYakov & KolibriOS Team 2008-2022
|
||||||
//GNU GPL license.
|
//GNU GPL license.
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -11,9 +11,9 @@ TODO:
|
|||||||
http://board.kolibrios.org/viewtopic.php?f=23&t=4521&p=77334#p77334
|
http://board.kolibrios.org/viewtopic.php?f=23&t=4521&p=77334#p77334
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#define ABOUT_TITLE "EOLITE 5.21"
|
#define ABOUT_TITLE "EOLITE 5.22"
|
||||||
#define TITLE_EOLITE "Eolite File Manager 5.21"
|
#define TITLE_EOLITE "Eolite File Manager 5.22"
|
||||||
#define TITLE_KFM "Kolibri File Manager 2.21";
|
#define TITLE_KFM "Kolibri File Manager 2.22";
|
||||||
|
|
||||||
#define MEMSIZE 1024 * 250
|
#define MEMSIZE 1024 * 250
|
||||||
#include "../lib/clipboard.h"
|
#include "../lib/clipboard.h"
|
||||||
@ -197,7 +197,7 @@ void main()
|
|||||||
OpenDir(ONLY_OPEN);
|
OpenDir(ONLY_OPEN);
|
||||||
llist_copy(#files_inactive, #files);
|
llist_copy(#files_inactive, #files);
|
||||||
SetEventMask(EVM_REDRAW+EVM_KEY+EVM_BUTTON+EVM_MOUSE+EVM_MOUSE_FILTER);
|
SetEventMask(EVM_REDRAW+EVM_KEY+EVM_BUTTON+EVM_MOUSE+EVM_MOUSE_FILTER);
|
||||||
loop() switch(@WaitEventTimeout(100))
|
loop() switch(@WaitEventTimeout(150))
|
||||||
{
|
{
|
||||||
case evMouse:
|
case evMouse:
|
||||||
if (Form.status_window&ROLLED_UP) break;
|
if (Form.status_window&ROLLED_UP) break;
|
||||||
@ -511,7 +511,10 @@ void main()
|
|||||||
if (CheckActiveProcess(Form.ID)) && (GetMenuClick()) break;
|
if (CheckActiveProcess(Form.ID)) && (GetMenuClick()) break;
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
if (!Form.status_window&ROLLED_UP) EventRefreshDisksAndFolders();
|
if (!Form.status_window&ROLLED_UP)
|
||||||
|
&& (ESBYTE[path+1]!='f') && (ESBYTE[path+1]!='c') {
|
||||||
|
EventRefreshDisksAndFolders();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if(cmd_free)
|
if(cmd_free)
|
||||||
@ -1277,12 +1280,14 @@ void EventRefreshDisksAndFolders()
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if (GetRealFileCountInFolder("/")+dir_exists("/kolibrios") != SystemDiscs.dev_num) {
|
if (GetRealFileCountInFolder("/")+KolibriosMounted() != SystemDiscs.dev_num) {
|
||||||
SystemDiscs.Get();
|
SystemDiscs.Get();
|
||||||
SystemDiscs.Draw();
|
SystemDiscs.Draw();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(GetRealFileCountInFolder(path) != files.count) OpenDir(WITH_REDRAW);
|
if(GetRealFileCountInFolder(path) != files.count) {
|
||||||
|
OpenDir(WITH_REDRAW);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void EventManualFolderRefresh()
|
void EventManualFolderRefresh()
|
||||||
|
@ -1,3 +1,10 @@
|
|||||||
|
bool KolibriosMounted()
|
||||||
|
{
|
||||||
|
static bool kolibrios_mounted;
|
||||||
|
if (kolibrios_mounted) return true;
|
||||||
|
kolibrios_mounted = real_dir_exists("/kolibrios");
|
||||||
|
return kolibrios_mounted;
|
||||||
|
}
|
||||||
|
|
||||||
struct _SystemDiscs
|
struct _SystemDiscs
|
||||||
{
|
{
|
||||||
@ -23,7 +30,7 @@ void _SystemDiscs::Get()
|
|||||||
list.add("/sys");
|
list.add("/sys");
|
||||||
dev_num++;
|
dev_num++;
|
||||||
|
|
||||||
if (dir_exists("/kolibrios")) {
|
if (KolibriosMounted()) {
|
||||||
//need to check that /sys != /kolibrios
|
//need to check that /sys != /kolibrios
|
||||||
list.add("/kolibrios");
|
list.add("/kolibrios");
|
||||||
dev_num++;
|
dev_num++;
|
||||||
|
@ -256,19 +256,16 @@ inline fastcall void GetCurDir( ECX, EDX)
|
|||||||
else return bdvk.sizelo;
|
else return bdvk.sizelo;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/* This implementation of dir_exists() is faster than
|
||||||
// This implementation of dir_exists() is faster than
|
previous but here virtual folders like
|
||||||
// previous but here virtual folders like
|
'/' and '/tmp' are not recognised as FOLDERS
|
||||||
// '/' and '/tmp' are not recognised as FOLDERS
|
by GetFileInfo() => BDVK.isfolder attribute :( */
|
||||||
// by GetFileInfo() => BDVK.isfolder attribute :(
|
bool real_dir_exists(dword fpath)
|
||||||
|
|
||||||
:bool dir_exists(dword fpath)
|
|
||||||
{
|
{
|
||||||
BDVK fpath_atr;
|
BDVK fpath_atr;
|
||||||
if (GetFileInfo(fpath, #fpath_atr) != 0) return false;
|
if (GetFileInfo(fpath, #fpath_atr) != 0) return false;
|
||||||
return fpath_atr.isfolder;
|
return fpath_atr.isfolder;
|
||||||
}
|
}
|
||||||
*/
|
|
||||||
|
|
||||||
:bool file_exists(dword fpath)
|
:bool file_exists(dword fpath)
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user