Fixing 115750, support for tabpanels and tabs in WinXP, r=bryner, sr=blake

This commit is contained in:
hyatt%netscape.com 2002-01-06 00:22:24 +00:00
Родитель 490fa68daf
Коммит 03e7fc057f
8 изменённых файлов: 33 добавлений и 8 удалений

Просмотреть файл

@ -440,6 +440,7 @@ CSS_KEY(progresschunk-vertical, progresschunk_vertical)
CSS_KEY(tab, tab)
CSS_KEY(tab-left-edge, tab_left_edge)
CSS_KEY(tab-right-edge, tab_right_edge)
CSS_KEY(tabpanels, tabpanels)
CSS_KEY(tabpanel, tabpanel)
CSS_KEY(tooltip, tooltip)
CSS_KEY(spinner, spinner)

Просмотреть файл

@ -156,6 +156,7 @@ const PRInt32 nsCSSProps::kAppearanceKTable[] = {
eCSSKeyword_tab, NS_THEME_TAB,
eCSSKeyword_tab_left_edge, NS_THEME_TAB_LEFT_EDGE,
eCSSKeyword_tab_right_edge, NS_THEME_TAB_RIGHT_EDGE,
eCSSKeyword_tabpanels, NS_THEME_TAB_PANELS,
eCSSKeyword_tabpanel, NS_THEME_TAB_PANEL,
eCSSKeyword_tooltip, NS_THEME_TOOLTIP,
eCSSKeyword_spinner, NS_THEME_SPINNER,

Просмотреть файл

@ -86,7 +86,7 @@
// A single tab in a tab widget.
#define NS_THEME_TAB 61
// The tab panel
// A single pane (inside the tabpanels container)
#define NS_THEME_TAB_PANEL 62
// The tab just before the selection
@ -95,6 +95,9 @@
// The tab just after the selection
#define NS_THEME_TAB_RIGHT_EDGE 64
// The tab panels container.
#define NS_THEME_TAB_PANELS 65
// A tooltip
#define NS_THEME_TOOLTIP 71

Просмотреть файл

@ -89,11 +89,10 @@
#define PP_CHUNKVERT 4
// Tab constants
#define TABP_TAB_SELAFTER 2
#define TABP_TAB_SELBEFORE 3
#define TABP_TAB 4
#define TABP_TAB_SELECTED 5
#define TABP_TAB_PANE 9
#define TABP_PANELS 9
#define TABP_PANEL 10
// Tooltip constants
#define TTP_STANDARD 1
@ -220,7 +219,8 @@ nsNativeThemeWin::GetTheme(PRUint8 aWidgetType)
case NS_THEME_TAB:
case NS_THEME_TAB_LEFT_EDGE:
case NS_THEME_TAB_RIGHT_EDGE:
case NS_THEME_TAB_PANEL: {
case NS_THEME_TAB_PANEL:
case NS_THEME_TAB_PANELS: {
if (!mTabTheme)
mTabTheme = openTheme(NULL, L"Tab");
return mTabTheme;
@ -519,6 +519,16 @@ nsNativeThemeWin::GetThemePartAndState(nsIFrame* aFrame, PRUint8 aWidgetType,
aState = TS_NORMAL;
return NS_OK;
}
case NS_THEME_TAB_PANELS: {
aPart = TABP_PANELS;
aState = TS_NORMAL;
return NS_OK;
}
case NS_THEME_TAB_PANEL: {
aPart = TABP_PANEL;
aState = TS_NORMAL;
return NS_OK;
}
case NS_THEME_TAB:
case NS_THEME_TAB_LEFT_EDGE:
case NS_THEME_TAB_RIGHT_EDGE: {
@ -655,7 +665,7 @@ nsNativeThemeWin::GetWidgetBorder(nsIDeviceContext* aContext,
if (aWidgetType == NS_THEME_TOOLBOX || aWidgetType == NS_THEME_TOOLBAR ||
aWidgetType == NS_THEME_STATUSBAR ||
aWidgetType == NS_THEME_RESIZER)
aWidgetType == NS_THEME_RESIZER || aWidgetType == NS_THEME_TAB_PANEL)
return NS_OK; // Don't worry about it.
HANDLE theme = GetTheme(aWidgetType);
@ -707,7 +717,8 @@ nsNativeThemeWin::GetMinimumWidgetSize(nsIRenderingContext* aContext, nsIFrame*
if (aWidgetType == NS_THEME_TOOLBOX || aWidgetType == NS_THEME_TOOLBAR ||
aWidgetType == NS_THEME_STATUSBAR || aWidgetType == NS_THEME_PROGRESSBAR_CHUNK ||
aWidgetType == NS_THEME_PROGRESSBAR_CHUNK_VERTICAL)
aWidgetType == NS_THEME_PROGRESSBAR_CHUNK_VERTICAL ||
aWidgetType == NS_THEME_TAB_PANELS || aWidgetType == NS_THEME_TAB_PANEL)
return NS_OK; // Don't worry about it.
HANDLE theme = GetTheme(aWidgetType);
@ -753,7 +764,9 @@ nsNativeThemeWin::WidgetStateChanged(nsIFrame* aFrame, PRUint8 aWidgetType,
aWidgetType == NS_THEME_PROGRESSBAR_CHUNK_VERTICAL ||
aWidgetType == NS_THEME_PROGRESSBAR ||
aWidgetType == NS_THEME_PROGRESSBAR_VERTICAL ||
aWidgetType == NS_THEME_TOOLTIP) {
aWidgetType == NS_THEME_TOOLTIP ||
aWidgetType == NS_THEME_TAB_PANELS ||
aWidgetType == NS_THEME_TAB_PANEL) {
*aShouldRepaint = PR_FALSE;
return NS_OK;
}

Просмотреть файл

@ -440,6 +440,7 @@ CSS_KEY(progresschunk-vertical, progresschunk_vertical)
CSS_KEY(tab, tab)
CSS_KEY(tab-left-edge, tab_left_edge)
CSS_KEY(tab-right-edge, tab_right_edge)
CSS_KEY(tabpanels, tabpanels)
CSS_KEY(tabpanel, tabpanel)
CSS_KEY(tooltip, tooltip)
CSS_KEY(spinner, spinner)

Просмотреть файл

@ -156,6 +156,7 @@ const PRInt32 nsCSSProps::kAppearanceKTable[] = {
eCSSKeyword_tab, NS_THEME_TAB,
eCSSKeyword_tab_left_edge, NS_THEME_TAB_LEFT_EDGE,
eCSSKeyword_tab_right_edge, NS_THEME_TAB_RIGHT_EDGE,
eCSSKeyword_tabpanels, NS_THEME_TAB_PANELS,
eCSSKeyword_tabpanel, NS_THEME_TAB_PANEL,
eCSSKeyword_tooltip, NS_THEME_TOOLTIP,
eCSSKeyword_spinner, NS_THEME_SPINNER,

Просмотреть файл

@ -7,6 +7,10 @@
-moz-border-bottom-colors: ThreeDDarkShadow ThreeDShadow;
}
tabpanels {
-moz-appearance: none;
}
.tabbrowser-tabs {
padding-top: 1px;
}

Просмотреть файл

@ -38,6 +38,7 @@
/* ::::: tabpanels ::::: */
tabpanels {
-moz-appearance: tabpanels;
border-right: 2px solid;
border-bottom: 2px solid;
border-left: 2px solid;