зеркало из https://github.com/mozilla/gecko-dev.git
Fixed sizing, caret garbage, and prefs bugs for Composer. Initial implementation of 'freeze frame' concept.
This commit is contained in:
Родитель
bf38b2292e
Коммит
6bd065234f
|
@ -1896,6 +1896,10 @@ void CDCCX::EraseBackground(MWContext *pContext, int iLocation,
|
|||
int32 x, int32 y, uint32 width, uint32 height,
|
||||
LO_Color *pColor)
|
||||
{
|
||||
#ifdef EDITOR
|
||||
if( EDT_IS_EDITOR(pContext) )
|
||||
WFE_HideEditCaret(pContext);
|
||||
#endif
|
||||
HDC hdc = GetContextDC();
|
||||
int32 orgX = GetOriginX();
|
||||
int32 orgY = GetOriginY();
|
||||
|
@ -1912,6 +1916,10 @@ void CDCCX::EraseBackground(MWContext *pContext, int iLocation,
|
|||
pColor);
|
||||
|
||||
ReleaseContextDC(hdc);
|
||||
#ifdef EDITOR
|
||||
if( EDT_IS_EDITOR(pContext) )
|
||||
WFE_ShowEditCaret(pContext);
|
||||
#endif
|
||||
}
|
||||
#endif /* LAYERS */
|
||||
|
||||
|
|
|
@ -173,12 +173,6 @@ void CFrameGlue::RemoveActiveContextCB(ActiveContextCB cb)
|
|||
}
|
||||
}
|
||||
|
||||
// Override to test if frame is an editor
|
||||
BOOL CFrameGlue::IsEditFrame()
|
||||
{
|
||||
return(FALSE);
|
||||
}
|
||||
|
||||
CPtrList CFrameGlue::m_cplActiveNotifyCBList;
|
||||
|
||||
// Add to the top of the stack of active frames.
|
||||
|
@ -229,7 +223,12 @@ CFrameGlue *CFrameGlue::GetLastActiveFrame(MWContextType cxType, int nFindEditor
|
|||
POSITION rIndex = m_cplActiveFrameStack.GetHeadPosition();
|
||||
while(rIndex != NULL) {
|
||||
pRetval = (CFrameGlue *)m_cplActiveFrameStack.GetNext(rIndex);
|
||||
|
||||
// Skip over frames designated as "frozen"
|
||||
if( ((CGenericFrame*)pRetval)->IsFrozenFrame() ) {
|
||||
pRetval = NULL;
|
||||
continue;
|
||||
}
|
||||
|
||||
// See if we can get the type from the context, and verify the type.
|
||||
if(pRetval->GetMainContext() != NULL) {
|
||||
MWContextType cxRetType = pRetval->GetMainContext()->GetContext()->type;
|
||||
|
|
|
@ -79,8 +79,8 @@ public:
|
|||
|
||||
void ClearContext(CAbstractCX *pGone);
|
||||
|
||||
// Override this in Editors to return TRUE. Default = FALSE
|
||||
virtual BOOL IsEditFrame();
|
||||
// Override this in Editor Frame to return TRUE.
|
||||
virtual BOOL IsEditFrame() {return FALSE; }
|
||||
|
||||
protected:
|
||||
IChrome *m_pChrome;
|
||||
|
|
|
@ -213,6 +213,7 @@ CGenericFrame::CGenericFrame()
|
|||
else
|
||||
capStyle = DT_LEFT; // for NT 4.0 and Win95
|
||||
#endif
|
||||
m_bFreezeFrame = FALSE;
|
||||
}
|
||||
|
||||
|
||||
|
@ -880,7 +881,6 @@ BEGIN_MESSAGE_MAP(CGenericFrame, CFrameWnd)
|
|||
ON_COMMAND(ID_COMMAND_PAGE_FROM_WIZARD, OnPageFromWizard)
|
||||
ON_REGISTERED_MESSAGE(WM_HELPMSG, OnHelpMsg)
|
||||
|
||||
|
||||
#ifdef ON_COMMAND_RANGE
|
||||
ON_COMMAND_RANGE(ID_OPTIONS_ENCODING_1, ID_OPTIONS_ENCODING_70, OnToggleEncoding)
|
||||
ON_UPDATE_COMMAND_UI_RANGE(ID_OPTIONS_ENCODING_1, ID_OPTIONS_ENCODING_70, OnUpdateEncoding)
|
||||
|
@ -927,6 +927,8 @@ BEGIN_MESSAGE_MAP(CGenericFrame, CFrameWnd)
|
|||
#ifdef DEBUG_WHITEBOX
|
||||
ON_COMMAND(IDS_WHITEBOX_MENU, OnWhiteBox)
|
||||
#endif
|
||||
ON_COMMAND(ID_TOGGLE_FREEZE_FRAME, OnToggleFreezeFrame)
|
||||
ON_UPDATE_COMMAND_UI(ID_TOGGLE_FREEZE_FRAME, OnUpdateToggleFreezeFrame)
|
||||
END_MESSAGE_MAP()
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
@ -3391,6 +3393,17 @@ LONG CGenericFrame::OnHackedMouseWheel(WPARAM wParam, LPARAM lParam)
|
|||
}
|
||||
#endif
|
||||
|
||||
void CGenericFrame::OnToggleFreezeFrame()
|
||||
{
|
||||
m_bFreezeFrame = !m_bFreezeFrame;
|
||||
}
|
||||
|
||||
void CGenericFrame::OnUpdateToggleFreezeFrame( CCmdUI *pCmdUI )
|
||||
{
|
||||
pCmdUI->SetCheck(m_bFreezeFrame);
|
||||
pCmdUI->Enable(TRUE);
|
||||
}
|
||||
|
||||
// Call to start a new Browser window with supplied URL
|
||||
// or load homepage if none supplied
|
||||
|
||||
|
@ -3411,5 +3424,3 @@ MWContext * wfe_CreateNavigator(char * pUrl)
|
|||
// Always create a new context
|
||||
return CFE_CreateNewDocWindow(NULL, pUrlStruct );
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -389,8 +389,15 @@ protected:
|
|||
#ifdef DEBUG_WHITEBOX
|
||||
afx_msg void OnWhiteBox();
|
||||
#endif
|
||||
afx_msg void OnToggleFreezeFrame();
|
||||
afx_msg void OnUpdateToggleFreezeFrame( CCmdUI *pCmdUI );
|
||||
DECLARE_MESSAGE_MAP()
|
||||
|
||||
public:
|
||||
BOOL IsFrozenFrame() {return m_bFreezeFrame; }
|
||||
private:
|
||||
BOOL m_bFreezeFrame;
|
||||
|
||||
#ifdef EDITOR
|
||||
public:
|
||||
// Load a URL into a new edit window,
|
||||
|
|
|
@ -23,7 +23,9 @@
|
|||
#include "prefuiid.h"
|
||||
#include "isppageo.h"
|
||||
#include <assert.h>
|
||||
#define NUM_EDITOR_PAGES 3
|
||||
// Note: Code for a 3rd page was kept (resource deleted)
|
||||
// in case we want to add more latter
|
||||
#define NUM_EDITOR_PAGES 2
|
||||
|
||||
// Create a new instance of our derived class and return it.
|
||||
CComDll *
|
||||
|
@ -133,7 +135,7 @@ CEditorCategory::GetPageObjects(CAPPAGE *pPages)
|
|||
|
||||
pPages->pElems[0] = new CEditorPrefs;
|
||||
pPages->pElems[1] = new CPublishPrefs;
|
||||
pPages->pElems[2] = new CEditorPrefs2;
|
||||
// pPages->pElems[2] = new CEditorPrefs2;
|
||||
|
||||
for (ULONG i = 0; i < pPages->cElems; i++)
|
||||
pPages->pElems[i]->AddRef();
|
||||
|
|
|
@ -130,15 +130,6 @@ BEGIN
|
|||
EDITTEXT IDC_PUBLISH_HTTP,17,170,224,12,ES_AUTOHSCROLL
|
||||
END
|
||||
|
||||
IDD_PREF_EDITOR2 DIALOG DISCARDABLE 0, 0, 186, 94
|
||||
STYLE WS_CHILD | WS_CLIPSIBLINGS
|
||||
FONT 8, "MS Sans Serif"
|
||||
BEGIN
|
||||
CONTROL "Page Up/Down Moves Cursor",IDC_PAGEUPDOWN,"Button",
|
||||
BS_AUTOCHECKBOX | WS_TABSTOP,7,7,111,10
|
||||
END
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// DESIGNINFO
|
||||
|
@ -152,14 +143,6 @@ BEGIN
|
|||
RIGHTMARGIN, 248
|
||||
BOTTOMMARGIN, 186
|
||||
END
|
||||
|
||||
IDD_PREF_EDITOR2, DIALOG
|
||||
BEGIN
|
||||
LEFTMARGIN, 7
|
||||
RIGHTMARGIN, 179
|
||||
TOPMARGIN, 7
|
||||
BOTTOMMARGIN, 87
|
||||
END
|
||||
END
|
||||
#endif // APSTUDIO_INVOKED
|
||||
|
||||
|
@ -176,7 +159,6 @@ BEGIN
|
|||
IDS_APP_FILTER "Executable (*.exe)\n*.exe\nAll Files (*.*)\n*.*\n\n"
|
||||
IDS_CHOOSE_HTML_EDITOR "Choose HTML Editor Application"
|
||||
IDS_CHOOSE_IMAGE_EDITOR "Choose Image Editor Application"
|
||||
IDD_PREF_EDITOR2 "Navigational\nSet general navigational preferences for authoring Web pages"
|
||||
END
|
||||
|
||||
#endif // English (U.S.) resources
|
||||
|
|
|
@ -84,7 +84,7 @@ BEGIN
|
|||
MENUITEM SEPARATOR
|
||||
MENUITEM "Select &All\tCtrl+A", ID_EDIT_SELECTALL
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "&Find in Page...\tCtrl+F", ID_EDIT_FINDINCURRENT
|
||||
MENUITEM "&Find/Replace in Page...\tCtrl+F", ID_EDIT_FINDINCURRENT
|
||||
MENUITEM "Find A&gain\tF3", ID_EDIT_FINDAGAIN
|
||||
// Restore when implemented:
|
||||
// MENUITEM "&Replace...", ID_EDT_FINDREPLACE
|
||||
|
@ -470,7 +470,7 @@ BEGIN
|
|||
MENUITEM SEPARATOR
|
||||
MENUITEM "Select &All\tCtrl+A", ID_EDIT_SELECTALL
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "&Find in Message\tCtrl+F", ID_EDIT_FINDINCURRENT
|
||||
MENUITEM "&Find/Replace in Message\tCtrl+F", ID_EDIT_FINDINCURRENT
|
||||
MENUITEM "Find A&gain\tCtrl+G", ID_EDIT_FINDAGAIN
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Name Completion", ID_TOGGLENAMECOMPLETION
|
||||
|
|
|
@ -702,7 +702,10 @@ BEGIN
|
|||
MENUITEM SEPARATOR
|
||||
MENUITEM "A&bout Privacy", ID_PRIVACY_DISPLAY_TUTORIAL
|
||||
END
|
||||
|
||||
#ifdef DEBUG_cmanske
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "&Freeze Window Contents" ID_TOGGLE_FREEZE_FRAME
|
||||
#endif
|
||||
MENUITEM SEPARATOR
|
||||
#ifdef XP_WIN16
|
||||
MENUITEM "New Window" ID_WINDOW_WINDOW_0
|
||||
|
|
|
@ -193,6 +193,7 @@
|
|||
#define IDS_INVALID_EMAIL 178
|
||||
#define IDS_READNEWS_STATIC2 179
|
||||
#define IDS_PE_ACCT_SETUP 180
|
||||
#define ID_TOGGLE_FREEZE_FRAME 181
|
||||
#define IDB_IMAGE_DELAYED 184
|
||||
#define IDB_IMAGE_BAD 185
|
||||
#define IDB_IMAGE_NOTFOUND 186
|
||||
|
|
Загрузка…
Ссылка в новой задаче