DebugViewPP icon indicating copy to clipboard operation
DebugViewPP copied to clipboard

Show a 'busy' dialog when the UI is blocked for a long time

Open janwilmans opened this issue 10 years ago • 19 comments

The UI blocks if a new exclude filter is added and there are 10 million lines in the buffer (600mb).

We could process in the background, but alternatively, probably a good notification of the user like 'Please wait while applying filters to xxx lines...' would be fine. This would also make the user understand why it takes a while.

janwilmans avatar Aug 11 '14 07:08 janwilmans

The UI also blocks in case a large file is dragged into debugview (example: 190 MB log file from dbgview)

janwilmans avatar Sep 14 '15 19:09 janwilmans

Proposal interface: (pseudo code)

void CLogView::ApplyFilters()
{
    ProgressDlg dlg;
    dlg.dispatch ( [this] 
    { 
        while (line < count)
        {
            // do stuff
            ++line;
            if (dlg.IsCanceled()) break;
        }
        m_logLines.swap(logLines);
    });

    if (dlg.DoModal() != IDOK)
    {
        m_logLines.clear();
    }   
}

Proposal UI:

image

janwilmans avatar Sep 15 '15 17:09 janwilmans

@djeedjay ik wou hier eens naar kijken, hoe lijkt dit voorstel?

janwilmans avatar Sep 15 '15 18:09 janwilmans

Ziet er fancy uit maar vereist een extra thread in de ui. Dat opent het gevaar van races, deadlocks en performance problemen door alle extra thread synchronisatie.. Wat gebeurt er bijvoorbeeld met de live logging terwijl deze actie loopt? Ik vind optimale performance van live logging belangrijker dan load/save acties.

G-J

On 15 Sep 2015, at 20:01, Jan Wilmans [email protected] wrote:

@djeedjay https://github.com/djeedjay ik wou hier eens naar kijken, hoe lijkt dit voorstel?

— Reply to this email directly or view it on GitHub https://github.com/djeedjay/DebugViewPP/issues/162#issuecomment-140484082.

djeedjay avatar Sep 15 '15 18:09 djeedjay

Zou een file loader niet een asynchrone LogSource kunnen zijn? Zo blijft de UI live terwijl de loader op eigen tempo messages blijft toevoegen. Misschien moet een LogSource zijn progress in de status bar kunnen tonen.

Gert-Jan

On 15 Sep 2015, at 20:10, Gert-Jan de Vos [email protected] wrote:

Ziet er fancy uit maar vereist een extra thread in de ui. Dat opent het gevaar van races, deadlocks en performance problemen door alle extra thread synchronisatie.. Wat gebeurt er bijvoorbeeld met de live logging terwijl deze actie loopt? Ik vind optimale performance van live logging belangrijker dan load/save acties.

G-J

On 15 Sep 2015, at 20:01, Jan Wilmans <[email protected] mailto:[email protected]> wrote:

@djeedjay https://github.com/djeedjay ik wou hier eens naar kijken, hoe lijkt dit voorstel?

— Reply to this email directly or view it on GitHub https://github.com/djeedjay/DebugViewPP/issues/162#issuecomment-140484082.

djeedjay avatar Sep 15 '15 18:09 djeedjay

Dat kan al, sleep maar eens een .dblog op debugview :)

janwilmans avatar Sep 15 '15 18:09 janwilmans

File->open is een andere actie, dan drag&drop, misschien moeten we dat veranderen, File->open leest nu de file in. Terwijl drag&drop een logsource maakt en blijft tailen. (dus als de logfile groeit, dan zie je dat)

janwilmans avatar Sep 15 '15 18:09 janwilmans

Het is geen extra UI thread, De UI blockt, net als normaal, er komen dus geen timer-events binnen die de logsource input binnenhaald, dus geen race-conditions. Het verschil is dat we nu de UI thread zelf blocken met een Model-progress dialog, en de activiteit op een thread starten.

janwilmans avatar Sep 15 '15 18:09 janwilmans

Ik zie de load/save acties nu ook niet goed samenwerken met live-logging, dus in dat opzicht veranderd er niets. Bovendien zie ik de load/save acties voor de use-case waar je post-mortem een logfile inlaad in een losse instantie van debugview, de live-activiteit, blijft dan gewoon werken in een andere instantie.

janwilmans avatar Sep 15 '15 18:09 janwilmans

Waarom zou File->Open nog synchroon zijn als je al een asynchrone loader hebt? Dat open houden van een file zou wel een non-default optie moeten zijn. Een vinkje op de Load dialog of gewoon een ander menu item: Connect File ofzo.

Is er in geval van zo'n asynchrone loader nog behoefte aan zo’n progress box?

Zoals je weet heb ik nooit zo absurd grote log files. Voor mij is een log van 1 MB al extreem. Ik heb dan ook geen bricks..

G-J

On 15 Sep 2015, at 20:20, Jan Wilmans [email protected] wrote:

File->open is een andere actie, dan drag&drop, misschien moeten we dat veranderen, File->open leest nu de file in. Terwijl drag&drop een logsource maakt en blijft tailen. (dus als de logfile groeit, dan zie je dat)

— Reply to this email directly or view it on GitHub https://github.com/djeedjay/DebugViewPP/issues/162#issuecomment-140489225.

djeedjay avatar Sep 15 '15 18:09 djeedjay

Ja, de asynchrone loader kan prima met een '[ ] keep tailing' vinkje, vind ik een goed voorstel. Neemt niet weg dat progress dialoog ook nodig is voor bijvoorbeeld als je +100MB in-memory logging hebt en je veranderd een filter. De usecase van de 'grote logfile' is niet een default (zelfs niet bij FEI :), dat scenario is bv. het resultaat van een duurtest van dagen.

Groeten,

Jan

2015-09-15 20:28 GMT+02:00 Gert-Jan de Vos [email protected]:

Waarom zou File->Open nog synchroon zijn als je al een asynchrone loader hebt? Dat open houden van een file zou wel een non-default optie moeten zijn. Een vinkje op de Load dialog of gewoon een ander menu item: Connect File ofzo.

Is er in geval van zo'n asynchrone loader nog behoefte aan zo’n progress box?

Zoals je weet heb ik nooit zo absurd grote log files. Voor mij is een log van 1 MB al extreem. Ik heb dan ook geen bricks..

G-J

On 15 Sep 2015, at 20:20, Jan Wilmans [email protected] wrote:

File->open is een andere actie, dan drag&drop, misschien moeten we dat veranderen, File->open leest nu de file in. Terwijl drag&drop een logsource maakt en blijft tailen. (dus als de logfile groeit, dan zie je dat)

— Reply to this email directly or view it on GitHub < https://github.com/djeedjay/DebugViewPP/issues/162#issuecomment-140489225 .

— Reply to this email directly or view it on GitHub https://github.com/djeedjay/DebugViewPP/issues/162#issuecomment-140491113 .

Met vriendelijke groeten,

Jan Wilmans

janwilmans avatar Sep 15 '15 18:09 janwilmans

In dat opzicht vind ik het ook niet erg als je even moet wachten, maar wel als niet weet hoelang dat gaat duren en de applicatie 'not responding' zegt.

Groeten,

Jan

2015-09-15 20:38 GMT+02:00 Jan Wilmans [email protected]:

Ja, de asynchrone loader kan prima met een '[ ] keep tailing' vinkje, vind ik een goed voorstel. Neemt niet weg dat progress dialoog ook nodig is voor bijvoorbeeld als je +100MB in-memory logging hebt en je veranderd een filter. De usecase van de 'grote logfile' is niet een default (zelfs niet bij FEI :), dat scenario is bv. het resultaat van een duurtest van dagen.

Groeten,

Jan

2015-09-15 20:28 GMT+02:00 Gert-Jan de Vos [email protected]:

Waarom zou File->Open nog synchroon zijn als je al een asynchrone loader hebt? Dat open houden van een file zou wel een non-default optie moeten zijn. Een vinkje op de Load dialog of gewoon een ander menu item: Connect File ofzo.

Is er in geval van zo'n asynchrone loader nog behoefte aan zo’n progress box?

Zoals je weet heb ik nooit zo absurd grote log files. Voor mij is een log van 1 MB al extreem. Ik heb dan ook geen bricks..

G-J

On 15 Sep 2015, at 20:20, Jan Wilmans [email protected] wrote:

File->open is een andere actie, dan drag&drop, misschien moeten we dat veranderen, File->open leest nu de file in. Terwijl drag&drop een logsource maakt en blijft tailen. (dus als de logfile groeit, dan zie je dat)

— Reply to this email directly or view it on GitHub < https://github.com/djeedjay/DebugViewPP/issues/162#issuecomment-140489225 .

— Reply to this email directly or view it on GitHub https://github.com/djeedjay/DebugViewPP/issues/162#issuecomment-140491113 .

Met vriendelijke groeten,

Jan Wilmans

Met vriendelijke groeten,

Jan Wilmans

janwilmans avatar Sep 15 '15 18:09 janwilmans

Er zijn toch ook echt asynchrone LogSources, anders zou tail of pipe from process niet kunnen werken. Wellicht is dan de ui unresponsive omdat de de log data constant gelockt is voor de updates. Als de ui thread niet kan draaien kunnen we ook geen progress tonen.. Ik moet het probleem eerst maar eens zien om te begrijpen wat het probleem is. Hoe zie je dit het gemakkelijkst voor mensen die niet het wereldrecord logging proberen te verbeteren?

G-J

On 15 Sep 2015, at 20:41, Jan Wilmans [email protected] wrote:

In dat opzicht vind ik het ook niet erg als je even moet wachten, maar wel als niet weet hoelang dat gaat duren en de applicatie 'not responding' zegt.

Groeten,

Jan

2015-09-15 20:38 GMT+02:00 Jan Wilmans [email protected]:

Ja, de asynchrone loader kan prima met een '[ ] keep tailing' vinkje, vind ik een goed voorstel. Neemt niet weg dat progress dialoog ook nodig is voor bijvoorbeeld als je +100MB in-memory logging hebt en je veranderd een filter. De usecase van de 'grote logfile' is niet een default (zelfs niet bij FEI :), dat scenario is bv. het resultaat van een duurtest van dagen.

Groeten,

Jan

2015-09-15 20:28 GMT+02:00 Gert-Jan de Vos [email protected]:

Waarom zou File->Open nog synchroon zijn als je al een asynchrone loader hebt? Dat open houden van een file zou wel een non-default optie moeten zijn. Een vinkje op de Load dialog of gewoon een ander menu item: Connect File ofzo.

Is er in geval van zo'n asynchrone loader nog behoefte aan zo’n progress box?

Zoals je weet heb ik nooit zo absurd grote log files. Voor mij is een log van 1 MB al extreem. Ik heb dan ook geen bricks..

G-J

On 15 Sep 2015, at 20:20, Jan Wilmans [email protected] wrote:

File->open is een andere actie, dan drag&drop, misschien moeten we dat veranderen, File->open leest nu de file in. Terwijl drag&drop een logsource maakt en blijft tailen. (dus als de logfile groeit, dan zie je dat)

— Reply to this email directly or view it on GitHub < https://github.com/djeedjay/DebugViewPP/issues/162#issuecomment-140489225 .

— Reply to this email directly or view it on GitHub https://github.com/djeedjay/DebugViewPP/issues/162#issuecomment-140491113 .

Met vriendelijke groeten,

Jan Wilmans

Met vriendelijke groeten,

Jan Wilmans — Reply to this email directly or view it on GitHub https://github.com/djeedjay/DebugViewPP/issues/162#issuecomment-140494458.

djeedjay avatar Sep 15 '15 18:09 djeedjay

GJ: waarom File->Open nog synchroon zijn als je al een asynchrone loader hebt? Jan: klopt, moeten we gewoon met de asynchrone loader doen, met een vinkje voor 'keep tailing'. Ik heb dat getest (drag& drop een 150MB files op debugview) en dat gaat prima, geen blocking ui.

Dan blijft over het scenario dat je de logging al in memory hebt en een filter veranderd. Dat blokkeert nog wel steeds de UI.

janwilmans avatar Sep 16 '15 19:09 janwilmans

Dan moet er dus nog een in memory log to view LogSource lomen :)

G-J

On 16 Sep 2015, at 21:51, Jan Wilmans [email protected] wrote:

GJ: waarom File->Open nog synchroon zijn als je al een asynchrone loader hebt? Jan: klopt, moeten we gewoon met de asynchrone loader doen, met een vinkje voor 'keep tailing'. Ik heb dat getest (drag& drop een 150MB files op debugview) en dat gaat prima, geen blocking ui.

Dan blijft over het scenario dat je de logging al in memory hebt en een filter veranderd. Dat blokkeert nog wel steeds de UI.

— Reply to this email directly or view it on GitHub https://github.com/djeedjay/DebugViewPP/issues/162#issuecomment-140868054.

djeedjay avatar Sep 16 '15 20:09 djeedjay

Hm, daar had ik nog niet aan gedacht, waarom niet eigenlijk, de logfile administratie is movable.

Groeten,

Jan

2015-09-16 22:11 GMT+02:00 Gert-Jan de Vos [email protected]:

Dan moet er dus nog een in memory log to view LogSource lomen :)

G-J

On 16 Sep 2015, at 21:51, Jan Wilmans [email protected] wrote:

GJ: waarom File->Open nog synchroon zijn als je al een asynchrone loader hebt? Jan: klopt, moeten we gewoon met de asynchrone loader doen, met een vinkje voor 'keep tailing'. Ik heb dat getest (drag& drop een 150MB files op debugview) en dat gaat prima, geen blocking ui.

Dan blijft over het scenario dat je de logging al in memory hebt en een filter veranderd. Dat blokkeert nog wel steeds de UI.

— Reply to this email directly or view it on GitHub < https://github.com/djeedjay/DebugViewPP/issues/162#issuecomment-140868054 .

— Reply to this email directly or view it on GitHub https://github.com/djeedjay/DebugViewPP/issues/162#issuecomment-140872120 .

Met vriendelijke groeten,

Jan Wilmans

janwilmans avatar Sep 16 '15 20:09 janwilmans

alle logsources zijn asynchronous...

On Tuesday, 15 September 2015, Gert-Jan de Vos [email protected] wrote:

Er zijn toch ook echt asynchrone LogSources, anders zou tail of pipe from process niet kunnen werken. Wellicht is dan de ui unresponsive omdat de de log data constant gelockt is voor de updates. Als de ui thread niet kan draaien kunnen we ook geen progress tonen.. Ik moet het probleem eerst maar eens zien om te begrijpen wat het probleem is. Hoe zie je dit het gemakkelijkst voor mensen die niet het wereldrecord logging proberen te verbeteren?

G-J

On 15 Sep 2015, at 20:41, Jan Wilmans <[email protected] javascript:_e(%7B%7D,'cvml','[email protected]');> wrote:

In dat opzicht vind ik het ook niet erg als je even moet wachten, maar wel als niet weet hoelang dat gaat duren en de applicatie 'not responding' zegt.

Groeten,

Jan

2015-09-15 20:38 GMT+02:00 Jan Wilmans <[email protected] javascript:_e(%7B%7D,'cvml','[email protected]');>:

Ja, de asynchrone loader kan prima met een '[ ] keep tailing' vinkje, vind ik een goed voorstel. Neemt niet weg dat progress dialoog ook nodig is voor bijvoorbeeld als je +100MB in-memory logging hebt en je veranderd een filter. De usecase van de 'grote logfile' is niet een default (zelfs niet bij FEI :), dat scenario is bv. het resultaat van een duurtest van dagen.

Groeten,

Jan

2015-09-15 20:28 GMT+02:00 Gert-Jan de Vos <[email protected] javascript:_e(%7B%7D,'cvml','[email protected]');>:

Waarom zou File->Open nog synchroon zijn als je al een asynchrone loader hebt? Dat open houden van een file zou wel een non-default optie moeten zijn. Een vinkje op de Load dialog of gewoon een ander menu item: Connect File ofzo.

Is er in geval van zo'n asynchrone loader nog behoefte aan zo’n progress box?

Zoals je weet heb ik nooit zo absurd grote log files. Voor mij is een log van 1 MB al extreem. Ik heb dan ook geen bricks..

G-J

On 15 Sep 2015, at 20:20, Jan Wilmans <[email protected] javascript:_e(%7B%7D,'cvml','[email protected]');> wrote:

File->open is een andere actie, dan drag&drop, misschien moeten we dat veranderen, File->open leest nu de file in. Terwijl drag&drop een logsource maakt en blijft tailen. (dus als de logfile groeit, dan zie je dat)

— Reply to this email directly or view it on GitHub <

https://github.com/djeedjay/DebugViewPP/issues/162#issuecomment-140489225

.

— Reply to this email directly or view it on GitHub < https://github.com/djeedjay/DebugViewPP/issues/162#issuecomment-140491113> .

Met vriendelijke groeten,

Jan Wilmans

Met vriendelijke groeten,

Jan Wilmans — Reply to this email directly or view it on GitHub < https://github.com/djeedjay/DebugViewPP/issues/162#issuecomment-140494458 .

— Reply to this email directly or view it on GitHub https://github.com/djeedjay/DebugViewPP/issues/162#issuecomment-140501778 .

Met vriendelijke groeten,

Jan Wilmans

janwilmans avatar Sep 16 '15 20:09 janwilmans

Met dit alternatief voor CFileDialog heb je een file open box met een “Keep file open” vinkje :) Succes!

Gert-Jan

class CMyFileDialog : public CFileDialogImpl<CMyFileDialog> { public: CMyFileDialog(BOOL bOpenFileDialog, // TRUE for FileOpen, FALSE for FileSaveAs LPCTSTR lpszDefExt = nullptr, LPCTSTR lpszFileName = nullptr, DWORD dwFlags = OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, LPCTSTR lpszFilter = nullptr, HWND hWndParent = nullptr) : CFileDialogImpl<CMyFileDialog>(bOpenFileDialog, lpszDefExt, lpszFileName, dwFlags, lpszFilter, hWndParent), m_keep(false) { }

bool Keep() const
{
    return m_keep;
}

BEGIN_MSG_MAP(CMyFileDialog)
    MSG_WM_INITDIALOG(OnInitDialog)
    MSG_WM_DESTROY(OnDestroy)
    CHAIN_MSG_MAP(CFileDialogImpl<CMyFileDialog>)
END_MSG_MAP()

private: BOOL OnInitDialog(CWindow /wndFocus/, LPARAM /lInitParam/) { SetControlText(chx1, L"Keep file open"); return TRUE; }

void OnDestroy()
{
    m_keep = GetReadOnlyPref() != FALSE;
    cdbg << "Keep open: " << m_keep << "\n";
}

bool m_keep;

};

On 16 Sep 2015, at 22:35, Jan Wilmans [email protected] wrote:

alle logsources zijn asynchronous...

On Tuesday, 15 September 2015, Gert-Jan de Vos [email protected] wrote:

Er zijn toch ook echt asynchrone LogSources, anders zou tail of pipe from process niet kunnen werken. Wellicht is dan de ui unresponsive omdat de de log data constant gelockt is voor de updates. Als de ui thread niet kan draaien kunnen we ook geen progress tonen.. Ik moet het probleem eerst maar eens zien om te begrijpen wat het probleem is. Hoe zie je dit het gemakkelijkst voor mensen die niet het wereldrecord logging proberen te verbeteren?

G-J

On 15 Sep 2015, at 20:41, Jan Wilmans <[email protected] javascript:_e(%7B%7D,'cvml','[email protected]');> wrote:

In dat opzicht vind ik het ook niet erg als je even moet wachten, maar wel als niet weet hoelang dat gaat duren en de applicatie 'not responding' zegt.

Groeten,

Jan

2015-09-15 20:38 GMT+02:00 Jan Wilmans <[email protected] javascript:_e(%7B%7D,'cvml','[email protected]');>:

Ja, de asynchrone loader kan prima met een '[ ] keep tailing' vinkje, vind ik een goed voorstel. Neemt niet weg dat progress dialoog ook nodig is voor bijvoorbeeld als je +100MB in-memory logging hebt en je veranderd een filter. De usecase van de 'grote logfile' is niet een default (zelfs niet bij FEI :), dat scenario is bv. het resultaat van een duurtest van dagen.

Groeten,

Jan

2015-09-15 20:28 GMT+02:00 Gert-Jan de Vos <[email protected] javascript:_e(%7B%7D,'cvml','[email protected]');>:

Waarom zou File->Open nog synchroon zijn als je al een asynchrone loader hebt? Dat open houden van een file zou wel een non-default optie moeten zijn. Een vinkje op de Load dialog of gewoon een ander menu item: Connect File ofzo.

Is er in geval van zo'n asynchrone loader nog behoefte aan zo’n progress box?

Zoals je weet heb ik nooit zo absurd grote log files. Voor mij is een log van 1 MB al extreem. Ik heb dan ook geen bricks..

G-J

On 15 Sep 2015, at 20:20, Jan Wilmans <[email protected] javascript:_e(%7B%7D,'cvml','[email protected]');> wrote:

File->open is een andere actie, dan drag&drop, misschien moeten we dat veranderen, File->open leest nu de file in. Terwijl drag&drop een logsource maakt en blijft tailen. (dus als de logfile groeit, dan zie je dat)

— Reply to this email directly or view it on GitHub <

https://github.com/djeedjay/DebugViewPP/issues/162#issuecomment-140489225

.

— Reply to this email directly or view it on GitHub < https://github.com/djeedjay/DebugViewPP/issues/162#issuecomment-140491113> .

Met vriendelijke groeten,

Jan Wilmans

Met vriendelijke groeten,

Jan Wilmans — Reply to this email directly or view it on GitHub < https://github.com/djeedjay/DebugViewPP/issues/162#issuecomment-140494458 .

— Reply to this email directly or view it on GitHub https://github.com/djeedjay/DebugViewPP/issues/162#issuecomment-140501778 .

Met vriendelijke groeten,

Jan Wilmans — Reply to this email directly or view it on GitHub https://github.com/djeedjay/DebugViewPP/issues/162#issuecomment-140882991.

djeedjay avatar Sep 16 '15 21:09 djeedjay

Precies wat ik nodig had, ik zal het implementeren.

Groeten,

Jan

2015-09-16 23:12 GMT+02:00 Gert-Jan de Vos [email protected]:

Met dit alternatief voor CFileDialog heb je een file open box met een “Keep file open” vinkje :) Succes!

Gert-Jan

class CMyFileDialog : public CFileDialogImpl<CMyFileDialog> { public: CMyFileDialog(BOOL bOpenFileDialog, // TRUE for FileOpen, FALSE for FileSaveAs LPCTSTR lpszDefExt = nullptr, LPCTSTR lpszFileName = nullptr, DWORD dwFlags = OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, LPCTSTR lpszFilter = nullptr, HWND hWndParent = nullptr) : CFileDialogImpl<CMyFileDialog>(bOpenFileDialog, lpszDefExt, lpszFileName, dwFlags, lpszFilter, hWndParent), m_keep(false) { }

bool Keep() const { return m_keep; }

BEGIN_MSG_MAP(CMyFileDialog) MSG_WM_INITDIALOG(OnInitDialog) MSG_WM_DESTROY(OnDestroy) CHAIN_MSG_MAP(CFileDialogImpl<CMyFileDialog>) END_MSG_MAP()

private: BOOL OnInitDialog(CWindow /wndFocus/, LPARAM /lInitParam/) { SetControlText(chx1, L"Keep file open"); return TRUE; }

void OnDestroy() { m_keep = GetReadOnlyPref() != FALSE; cdbg << "Keep open: " << m_keep << "\n"; }

bool m_keep; };

On 16 Sep 2015, at 22:35, Jan Wilmans [email protected] wrote:

alle logsources zijn asynchronous...

On Tuesday, 15 September 2015, Gert-Jan de Vos <[email protected]

wrote:

Er zijn toch ook echt asynchrone LogSources, anders zou tail of pipe from process niet kunnen werken. Wellicht is dan de ui unresponsive omdat de de log data constant gelockt is voor de updates. Als de ui thread niet kan draaien kunnen we ook geen progress tonen.. Ik moet het probleem eerst maar eens zien om te begrijpen wat het probleem is. Hoe zie je dit het gemakkelijkst voor mensen die niet het wereldrecord logging proberen te verbeteren?

G-J

On 15 Sep 2015, at 20:41, Jan Wilmans <[email protected] javascript:_e(%7B%7D,'cvml','[email protected]');> wrote:

In dat opzicht vind ik het ook niet erg als je even moet wachten, maar wel als niet weet hoelang dat gaat duren en de applicatie 'not responding' zegt.

Groeten,

Jan

2015-09-15 20:38 GMT+02:00 Jan Wilmans <[email protected] javascript:_e(%7B%7D,'cvml','[email protected]');>:

Ja, de asynchrone loader kan prima met een '[ ] keep tailing' vinkje, vind ik een goed voorstel. Neemt niet weg dat progress dialoog ook nodig is voor bijvoorbeeld als je +100MB in-memory logging hebt en je veranderd een filter. De usecase van de 'grote logfile' is niet een default (zelfs niet bij FEI :), dat scenario is bv. het resultaat van een duurtest van dagen.

Groeten,

Jan

2015-09-15 20:28 GMT+02:00 Gert-Jan de Vos < [email protected] javascript:_e(%7B%7D,'cvml','[email protected]');>:

Waarom zou File->Open nog synchroon zijn als je al een asynchrone loader hebt? Dat open houden van een file zou wel een non-default optie moeten zijn. Een vinkje op de Load dialog of gewoon een ander menu item: Connect File ofzo.

Is er in geval van zo'n asynchrone loader nog behoefte aan zo’n progress box?

Zoals je weet heb ik nooit zo absurd grote log files. Voor mij is een log van 1 MB al extreem. Ik heb dan ook geen bricks..

G-J

On 15 Sep 2015, at 20:20, Jan Wilmans <[email protected] javascript:_e(%7B%7D,'cvml','[email protected]');> wrote:

File->open is een andere actie, dan drag&drop, misschien moeten we dat veranderen, File->open leest nu de file in. Terwijl drag&drop een logsource maakt en blijft tailen. (dus als de logfile groeit, dan zie je dat)

— Reply to this email directly or view it on GitHub <

https://github.com/djeedjay/DebugViewPP/issues/162#issuecomment-140489225

.

— Reply to this email directly or view it on GitHub <

https://github.com/djeedjay/DebugViewPP/issues/162#issuecomment-140491113>

.

Met vriendelijke groeten,

Jan Wilmans

Met vriendelijke groeten,

Jan Wilmans — Reply to this email directly or view it on GitHub <

https://github.com/djeedjay/DebugViewPP/issues/162#issuecomment-140494458

.

— Reply to this email directly or view it on GitHub < https://github.com/djeedjay/DebugViewPP/issues/162#issuecomment-140501778> .

Met vriendelijke groeten,

Jan Wilmans — Reply to this email directly or view it on GitHub < https://github.com/djeedjay/DebugViewPP/issues/162#issuecomment-140882991 .

— Reply to this email directly or view it on GitHub https://github.com/djeedjay/DebugViewPP/issues/162#issuecomment-140896637 .

Met vriendelijke groeten,

Jan Wilmans

janwilmans avatar Sep 17 '15 06:09 janwilmans